Traceability Modeling for the Engineering of Heterogeneous Systems by Nasser Mustafa a Thesis Submitted to the Faculty of Gradua
Total Page:16
File Type:pdf, Size:1020Kb
Traceability Modeling for the Engineering of Heterogeneous Systems By Nasser Mustafa A Thesis submitted to the Faculty of Graduate and Postdoctoral Affairs in partial fulfillment of the requirements for the degree of PhD in Electrical and Computer Engineering Carleton University Ottawa, Ontario ©2018, Nasser Mustafa Abstract Capturing traceability information among artifacts helps ensure product quality and assists tracking functional and non-functional requirements, and performing system validation and impact analysis. Although literature provides many techniques for modeling traceability, existing solutions are either tailored to specific domains or not complete enough (e.g., lack support to specify traceability link semantics). This research examines the current traceability solutions and identifies the drawbacks that hinder capturing some traceability information of heterogeneous artifacts. In this context, heterogeneous artifacts refer to artifacts that come from widely different modeling notations (e.g., UML, Simulink, natural language text, source code). In this thesis, our contribution comprises a traceability framework that can accommodate the traceability of system engineering artifacts which come from different domains of expertise. The framework includes the followings: First, a set of requirements for a traceability model that are necessary to build a generic traceability model. Second, a generic traceability model that is not domain specific and which, therefore, provides a solution for modeling traceability links among heterogeneous models, that is, models for which traceability links need to be established between artifacts in widely different modeling languages (e.g., UML, block diagrams, informal documents). We argue that the proposed requirements are sufficient to build a traceability model oblivious of the heterogeneity of the models whose artifacts need to be traced. We also argue that our traceability model is extensible in the sense that it can adapt to new modeling languages, new ways of characterizing traceability information for instance, without requiring changes to the model itself; Third, a trace links taxonomy that encompasses semantically well-defined trace links that can be utilized along with the traceability model. The design of our framework is validated through a set of validation methods. Also, it is supported by our findings from a survey and a systematic literature review. i Acknowledgement I would like to thank my supervisor Dr. Yvan Labiche the head of the he Software Quality Engineering Laboratory (SQUALL) at Carleton University for his unlimited support and advice during my PhD study. Also, I would like to extend my thanks to Dr. Daniel Amyot from the University of Ottawa for his valuable comments and the revision of my thesis. I would like to thank NSERC, CRIAQ, CAE, CMC Electronics, and Mannarino Systems & Software for their financial support. Last but not least, many thanks for my lovely family; my wife Hanan, my daughter Nathalie, and my son Mohammed for their support and encouragement. ii Dedication To the souls of my father and mother who gave me their courage and support. iii Table of Contents Abstract......................................................................................................................................i Table of Contents ....................................................................................................................iv List of Figures....................................................................................................................... viii 1 Introduction......................................................................................................................1 1.1 Thesis Problem: Tracing Heterogeneous Artifacts................................................................2 1.2 Thesis Objective ....................................................................................................................5 1.3 Thesis Contributions..............................................................................................................6 1.4 Research Methodology..........................................................................................................7 1.5 Thesis Organization...............................................................................................................9 2 Traceability Concepts and Practices............................................................................11 2.1 Background..........................................................................................................................11 2.2 Traceability concepts...........................................................................................................12 2.3 Summary..............................................................................................................................15 3 Systematic Literature Review.......................................................................................17 3.1 Planning the Review............................................................................................................17 3.2 Inclusion and Exclusion.......................................................................................................19 3.3 Conducting the review.........................................................................................................21 3.4 Refining the Search Article .................................................................................................22 3.5 The Review Findings...........................................................................................................23 3.5.1 Traceability Concepts and definitions 23 3.5.2 Modeling Traceability 24 3.5.3 Traceability Reviews and Surveys 27 3.6 Summary..............................................................................................................................28 4 Trace Links Classification.............................................................................................30 4.1 Requirements Engineering Classifications..........................................................................30 4.2 Systems Engineering Classifications...................................................................................35 4.3 Summary..............................................................................................................................36 5 Traceability Modeling in the Literature......................................................................38 5.1 Domain Specific Traceability Modeling .............................................................................38 5.2 Generic Traceability Modeling............................................................................................41 5.3 Analysis of Existing Research on Modeling Traceability ...................................................49 5.4 Summary..............................................................................................................................51 6 Traceability Survey........................................................................................................52 6.1 Survey Planning...................................................................................................................52 6.2 Survey Objectives................................................................................................................53 6.3 Targeted Audience and Population......................................................................................53 6.4 Survey Questionnaire Design ..............................................................................................54 6.4.1 Demographic Questions 55 6.4.2 Traceability Questions 56 6.5 Publishing the Survey..........................................................................................................57 6.6 Survey Analysis...................................................................................................................57 6.6.1 Analysis of Demographic Feedback 58 iv 6.6.2 Analysis of Artifacts and Trace Links Feedback 59 6.6.3 Analysis of Traceability Tools Feedback 60 6.7 Conclusion...........................................................................................................................63 7 Generic Traceability Model Design..............................................................................65 7.1 Context ................................................................................................................................65 7.2 Requirements for a Generic Traceability Model .................................................................66 7.3 Traceability Model Description...........................................................................................68 7.4 Validation of Traceability Model by Construction..............................................................74 7.5 Tool Support and Integration...............................................................................................75 8 A New Encompassing Traceability Link Taxonomy ..................................................78 8.1 The Need for a Trace Link Taxonomy ................................................................................78 8.2 Simple, Motivating Example...............................................................................................80 8.3 The Drawbacks of Existing Classifications.........................................................................83