@article {28452,
	title = {Learning Configurations of Operating Environment of Autonomous Vehicles to Maximize their Collisions},
	journal = {IEEE Transactions on Software Engineering},
	volume = {49},
	year = {2022},
	pages = {384-402},
	publisher = { IEEE},
	author = {Lu, Chengjie and Shi, Yize and Zhang, Huihui and Zhang, Man and Wang, Tiexin and Yue, Tao and Ali, Shaukat}
}
@article {28417,
	title = {On the Preferences of Quality Indicators for Multi-Objective Search Algorithms in Search-Based Software Engineering},
	journal = {The Empirical Software Engineering Journal (EMSE)},
	volume = {27},
	year = {2022},
	pages = {144},
	publisher = { Springer},
	author = {Wu, Jiahui and Arcaini, Paolo and Yue, Tao and Ali, Shaukat and Zhang, Huihui}
}
@inproceedings {27926,
	title = {Restricted Natural Language and Model-based Adaptive Test Generation for Autonomous Driving},
	journal = {ACM/IEEE 24th International Conference on Model Driven Engineering Languages and Systems (MODELS)},
	year = {2021},
	publisher = {ACM/IEEE},
	author = {Shi, Yize and Lu, Chengjie and Zhang, Man and Zhang, Huihui and Yue, Tao and Ali, Shaukat}
}
@inproceedings {27925,
	title = {Search-based Selection and Prioritization of Test Scenarios for Autonomous Driving Systems},
	journal = {13th Symposium on Search-Based Software Engineering},
	year = {2021},
	publisher = {LNCS Springer},
	author = {Lu, Chengjie and Zhang, Huihui and Yue, Tao and Ali, Shaukat}
}
@article {27362,
	title = {Uncertainty-wise Requirements Prioritization with Search},
	journal = {ACM Transactions on Software Engineering and Methodology},
	volume = {30},
	year = {2020},
	month = {December 2020},
	pages = {1-54},
	publisher = {ACM},
	address = {New York, NY, USA},
	issn = {1049-331X},
	doi = {10.1145/3408301},
	url = {https://doi.org/10.1145/3408301},
	author = {Zhang, Huihui and Zhang, Man and Yue, Tao and Ali, Shaukat and Yan, Li},
	editor = {Breaux, Travis}
}
@inproceedings {26075,
	title = {Tool Support for Restricted Use Case Specification: Findings from a Controlled Experiment},
	journal = {The 25th Asia-Pacific Software Engineering Conference (APSEC 2018) },
	year = {2018},
	publisher = {IEEE},
	author = {Weninger, Markus and Gr{\"u}nbacher, Paul and Zhang, Huihui and Yue, Tao and Ali, Shaukat}
}
@phdthesis {25815,
	title = {Research on Aspect-Oriented  Real-Time Requirements Modeling and Supporting Techniques for Requirements Inspection},
	volume = {PhD},
	year = {2017},
	pages = {210},
	school = {Beihang University},
	address = {Beihang University},
	author = {Zhang, Huihui}
}
@inproceedings {25544,
	title = {A Restricted Natural Language based Use Case Modeling Methodology for Real-time Systems},
	journal = { 9th Workshop on Modelling in Software Engineering (MiSE{\textquoteright}2017)},
	year = {2017},
	publisher = {IEEE},
	author = {Zhang, Huihui and Yue, Tao and Ali, Shaukat and Wu, Ji and Liu, Chao}
}
@article {25010,
	title = {Search and similarity based selection of use case scenarios: An empirical study},
	journal = {Empirical Software Engineering},
	year = {2017},
	month = {04/2017},
	pages = {1-78},
	publisher = { Springer},
	abstract = {Use case modeling is a well-known requirements specification method and has been widely applied in practice. Use case scenarios of use case models are input elements for requirements inspection and analysis, requirements-based testing, and other downstream activities. It is, however, a practical challenge to inspect all use case scenarios that can be obtained from any non-trivial use case model, as such an inspection activity is often performed manually by domain experts. Therefore, it is needed to propose an automated solution for selecting a subset of use case scenarios with the ultimate aim of enabling cost-effective requirements (use case) inspection, analysis, and other relevant activities. Our solution is built on a natural language based, restricted use case modeling methodology (named as RUCM), in the sense that requirements specifications are specified as RUCM use case models. Use case scenarios can be automatically derived from RUCM use case models with the already established Zen-RUCM framework. In this paper, we propose a search-based and similarity-based approach called S3RCUM, through an empirical study, to select most diverse use case scenarios to enable cost-effective use case inspections. The empirical study was designed to evaluate the performance of three search algorithms together with eight similarity functions, through one real-world case study and six case studies from literature. Results show that (1+1) Evolutionary Algorithm together with Needleman-Wunsch similarity function significantly outperformed the other 31 combinations of the search algorithms and similarity functions. The combination managed to select 50\% of all the generated RUCM use case scenarios for all the case studies to detect all the seeded defects.},
	author = {Zhang, Huihui and Wang, Shuai and Yue, Tao and Ali, Shaukat and Liu, Chao}
}
@inproceedings {24434,
	title = {A Practical Use Case Modeling Approach to Specify Crosscutting Concerns: Industrial Applications},
	journal = {International Conference on Software Reuse (ICSR)},
	year = {2016},
	author = {Yue, Tao and Zhang, Huihui and Ali, Shaukat and Liu, Chao}
}
@techreport {24547,
	title = {Towards Mutation Analysis for Use Cases},
	year = {2016},
	publisher = {Simula Research Laboratory},
	abstract = {Requirements inspection is a well-known method for detecting defects. Various defect detection techniques for requirements inspection have been widely applied in practice such as checklist and defect-based techniques. Use case modeling is a widely accepted requirements specification method in practice; therefore, inspecting defects in use case models in a cost-effective manner is an important challenge. However, there does not exist a systematic mutation analysis approach for evaluating inspection techniques for use case models. As the first step towards a fully-fledged mutation analysis for use case models, in this paper we present the methodology we followed to systematically derive mutation operators for use case models. More specifically, we first propose a defect taxonomy defining 94 defect types, based on the IEEE Std. 830-1998 standard. Second, we systematically applied the basic guide words of the standardized Hazard and Operability Study (HAZOP) methodology to define 189 mutation operators, together with the defect taxonomy. Last, we define a set of guidelines for devising defect seeding strategies. The proposed methodology was evaluated by a real world case study and six case studies taken from the literature. Results show that all the RUCM mutation operators are feasible to apply and the defect taxonomy is the most comprehensive one to compare with the literature.},
	author = {Zhang, Huihui and Yue, Tao and Ali, Shaukat and Liu, Chao}
}
@inproceedings {24645,
	title = {Towards Mutation Analysis for Use Cases},
	journal = {ACM/IEEE 19th International Conference on Model Driven Engineering Languages and Systems (MODELS)},
	year = {2016},
	publisher = {ACM/IEEE},
	author = {Zhang, Huihui and Yue, Tao and Ali, Shaukat and Liu, Chao}
}
@inproceedings {23733,
	title = {Facilitating Requirements Inspection with Search-Based Selection of Diverse Use Case Scenarios},
	journal = {9th EAI International Conference on Bio-inspired Information and Communications Technologies (formerly BIONETICS)},
	year = {2015},
	author = {Zhang, Huihui and Yue, Tao and Ali, Shaukat and Liu, Chao}
}
@techreport {25290,
	title = {Modelling and Validating Real-Time Properties at the Requirements Level},
	number = {2015-2},
	year = {2015},
	note = {This technical report is an earlier version of a published paper.},
	publisher = {Simula Research Laboratory},
	author = {Zhang, Huihui and Yue, Tao and Ali, Shaukat and Wu, Ji}
}
@techreport {23934,
	title = {A Practical Use Case Modeling Approach to Specify Crosscutting Concerns: Industrial Applications},
	number = {2012-04},
	year = {2015},
	publisher = {Simula Research Laboratory},
	author = {Yue, Tao and Zhang, Huihui and Ali, Shaukat and Liu, Chao}
}
@article {Simula.simula.2764,
	title = {A Modeling Methodology to Facilitate Safety-Oriented Architecture Design of Industrial Avionics Software},
	journal = {Software: Practice and Experience},
	year = {2014},
	publisher = {John Wiley and Sons},
	abstract = {Ensuring that avionics software meets safety requirements at each development stage is very important to warrant the safe operation of an avionics system. Many safety requirements are imposed by various standards and industrial regulations that must be met by avionics software. One of such standards is DO-178B/C, which provides guidelines (e.g., development process and objectives to satisfy in development activities) for meeting safety requirements. This paper presents a modeling methodology including a UML profile for specifying safety requirements on a component-based architecture model and a set of design guidelines on avionics software. These safety requirements were identified from both standards (mainly DO-178B/C) and current engineering practices in the domain of avionics systems. The methodology automatically enforces these safety requirements. We have applied the methodology on an industrial autopilot system and several previously uncaught faults were revealed.},
	author = {Wu, Ji and Yue, Tao and Ali, Shaukat and Zhang, Huihui}
}
@inproceedings {Simula.simula.2822,
	title = {A Systematic Approach to Automatically Derive Test Cases From Use Cases Specified in Restricted Natural Languages},
	journal = {8th System Analysis and Modelling Conference (SAM{\textquoteright}14)},
	year = {2014},
	publisher = {Springer},
	type = {Conference},
	address = {Switzerland},
	abstract = {In many domains, such as avionics, oil and gas, and maritime, a common practice is to derive and execute test cases manually from requirements, where both requirements and test cases are specified in NL by domain experts. The manual execution of test cases is largely dependent on the domain experts who wrote the test cases. The process of manual writing of requirements and test cases introduce ambiguity in their description and in addition test cases may not be effective since they may not be derived by systematic applying coverage criteria. In this paper, we report a systematic approach to support automatic derivation of manually executable test cases from use cases. Both use cases and test cases are specified in restricted NLs along with carefully defined templates implemented in a tool. We evaluate our approach with four case studies (in total having 30 use cases and 579 steps of flow of events), two of which are industrial case studies from the oil and gas and avionics domains. Results show that our tool was able to correctly process all the case studies and systematically (by following the carefully defined structure coverage criterion) generate 30 TCSs and 389 test cases. Moreover our approach allows defining different test coverage criteria on requirements other than the one already implemented in our tool.},
	keywords = {Conference},
	author = {Zhang, Man and Yue, Tao and Ali, Shaukat and Zhang, Huihui and Wu, Ji},
	editor = {Amyot, Daniel and Pau Fonseca i. {Casas} and Mussbacher, Gunter}
}
