Modeling Traceability for Heterogeneous Systems Nasser Mustafa and Yvan Labiche Carleton University, 1125 Colone by Drive, Ottawa, Ontario, Canada Keywords: Traceability, Modeling, Heterogeneity, Characterization, Generic. Abstract: In System Engineering, many systems encompass widely different domains of expertise; there are several challenges in relating these domains due to their heterogeneity and complexity. Although, literature provides many techniques to model traceability among heterogeneous domains, existing solutions are either tailored to specific domains (e.g., Ecore modeling languages), or not complete enough (e.g., lack support to specify traceability link semantics). This paper proposes a generic traceability model that is not domain specific; it provides a solution for modeling traceability links among heterogeneous models, that is, systems for which traceability links need to be established between artifacts in widely different modeling languages (e.g., UML, block diagrams, informal documents). Our solution tackles the drawbacks of existing solutions, and incorporates some of their ideas in an attempt to be as complete as possible. We argue that our solution is extensible in the sense that it can adapt to new modeling languages, new ways of characterizing traceability information for instance, without the need to change the model itself. 1 INTRODUCTION Traceability refers to the ability of following the life of software artifacts (Winkler and Pilgrim, 2010). It has gained more attention in the past 20 years and is mandated by many industries such as aviation, automobile, and nuclear power. It is required to certify or qualify systems and software products (Pinheiro, 2004). Traceability needs arise due to many problems during system development. For example, during system development in the System Engineering field there is a need to relate many heterogeneous artifacts. These artifacts are not necessarily software related; they can be also mechanical or electrical. Moreover, these artifacts can be modeled by different languages and different tools. In this context, we use the term model in the widest sense of the word, and the notion of model includes (but is not restricted to) diagrams, plain language texts, equations, and source codes. Another problem arises due to the fluidity of activities since not all traceability requirements are known to the system engineer upfront. For example, the granularity and the type of traced artifacts are not easy to discover upfront. In several cases a system engineer might need to obtain traceability information of new artifacts, or he might want to link two models, or a requirement to a model that refines it. Therefore, the heterogeneity and fluidity of artifacts require a traceability model that can accommodate capturing the traceability information of such artifacts. We have demonstrated the need of such model in our previous work using the example of full flight simulator. Our search in the literature for a solution to the problems discussed above was not successful (Mustafa, 2015). The main reason is that, each solution we found is tailored to a specific domain: e.g., some solutions can only trace artifacts from MOF-based models; and some solutions can only trace during model transformation. This paper contribution is manifold. It involves the design of a generic traceability model oblivious of the heterogeneity of the model’s elements that need to be traced. We argue that our solution is extensible in the sense that it can adapt to new modeling languages, new ways of characterizing traceability information for instance, without the need to change the model itself. Our traceability model should be able to receive different kinds of artifacts in different kinds of models that are generated from different tools. Our trace model instance can then be used to support traditional traceability management tasks such as querying to identify broken traceability links (e.g., a requirement is traced to a component, which is traced to a class 358 Mustafa N. and Labiche Y.. Modeling Traceability for Heterogeneous Systems. DOI: 10.5220/0005520303580366 In Proceedings of the 10th International Conference on Software Engineering and Applications (ICSOFT-EA-2015), pages 358-366 ISBN: 978-989-758-114-4 Copyright c 2015 SCITEPRESS (Science and Technology Publications, Lda.)