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. ii 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.iii
DedicationTo the souls of my father and mother who gave me their courage and support.between things written in RDF, OWL must be used to specify these relationships. Therefore, the owl tags in lines 10 and 14 imply a relationship exists between the dependency trace link and the other trace links, i.e., p...