Complex real-time systems provide infrastructure services for daily lives and they are widely employed in different domains, e.g., avionics, telecommunications, energy, healthcare. Time-related properties are a critical type of extra-functional requirements for designing real-time systems. Modeling and validating time-related properties at the requirements specification and analysis phases is important for the successful development of real-time systems in terms of cost, quality and productivity. Therefore, how to systematically capture and specify complex function requirements along with various time-related requirements is the key step of requirements development for real-time systems. Use case diagrams together with use case specifications are commonly used to specify system requirements. However, when crosscutting concerns are modeled together with non-crosscutting concerns as use case models, which is especially true for complex real-time systems, use case models often face cluttered diagrams and redundant information in use case specifications. Therefore, the overall reusability of the use case models is usually low. 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, it does not exist a systematic mutation analysis approach for evaluating inspection techniques for use case models. 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 use case inspection, analysis, and other relevant activities.
To tackle the above challenges, Huihui’s thesis presents a set of approaches from the perspectives of use case modeling for real-time systems and facilitating the use case inspection, respectively, which have been evaluated by four real world case studies and ten case studies from the literature. First, his thesis presents a restricted, natural language based, use case modeling methodology (named as RUCM4RT) to specify functional requirements of real-time systems as use case models, along with associated time-related constraints. Second, to enhance the reusability of use case models, specifically for complex real-time systems, his thesis presents an aspect-oriented use case modeling approach, named as rtAspectRUCM, for modeling crosscutting concerns, along with a weaving algorithm to automatically weave aspect use case models into their corresponding base model to facilitate, e.g., automated requirements analysis. Third, his thesis presents the methodology (named as MuRUCM) for systematically deriving mutation operators for use case models. Last, his thesis presents a search-based and similarity-based approach called S3RUCM, through an empirical study, to select most diverse use case scenarios to enable cost-effective use case inspections.
The thesis was written within the field of Requirements Engineering and Search-based Software Engineering. The work has been conducted at Simula Research Laboratory and Beihang University.
The adjudication committee
- Professor, Zhi Jin, Peking University
- Senior Research Scientist, Qing Wang, Chinese Academy of Sciences
- Professor, YunZhan Gong, Beijing University of Posts and Telecommunications
- Professor, Li Zhang, Beihang University
- Professor, WenJun Wu, Beihang University
Chair of the disputation
- Professor, Zhi Jin, Peking University
- Professor, Chao Liu, Beihang University
- Chief Research Scientist, Tao Yue, Simula Research Laboratory
- Senior Research Scientist, Shaukat Ali, Simula Research Laboratory