The Need for Traceability in Heterogeneous Systems: A systematic literature review Nasser Mustafa Systems and computer engineering Carleton University Ottawa, Canada nmustafa@sce.carleton.ca Yvan Labiche Systems and computer engineering Carleton University Ottawa, Canada labiche@sce.carleton.ca AbstractTraceability provides a mean for Software Engineers to track system artifacts at different levels of abstraction to verify and validate system requirements. This paper provides a systematic literature review about modeling traceability in computer systems, particularly, systems that involve artifacts that come from different domains of expertise (i.e., heterogeneous artifacts). Our findings show that there is a lack of research that focus on modeling traceability among heterogeneous artifacts, which reflects in inadequate traceability tools, and that precise semantics for trace links among artifacts is needed. Our findings lead us to highlight the key areas that can enhance research on those directions. Keywords-Modeling traceability; heterogeneous artifacts; testability, trace links; semantic; systematic review. I. INTRODUCTION Traceability refers to the ability of following the life of software artifacts [1] and can be used for many purposes, as mandated by agencies (e.g., FAA) and standard (e.g., DO- 178C), including: development process assessment; evaluation of alternative designs; system validation; requirement tracking; impact analysis. During system, not only software, development there is a need to relate many heterogeneous artifacts. These artifacts are not necessarily software related, they can be also mechanical or electronic, and 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. Although the notion of traceability is well-understood in requirement engineering or model-driven software development, among many fields of software system development, one cannot find a unique solution to the problem of modeling traceability links between heterogeneous artifacts. This paper therefore provides a systematic literature review about traceability in heterogeneous systems. The rest of the paper is structured as follows: Section II describes the views of traceability in Requirement Engineering (RE), Model Driven Engineering (MDE), and Systems Engineering (SysE). Section III describes the methodology used for this review. Section IV discusses the review finding. Section V provides an analysis of the findings and proposes some recommendations. Section VI highlights some threats to validity, and Section VII concludes this review. II. DIFFERENT VIEWS ON TRACEABILITY Traceability has originated in RE [10] and permeated MDE and SysE. In RE, Requirement Traceability is the ability to describe and follow the life of a requirement, in both forward and backward direction, to its subsequent deployment and use, and through periods of ongoing refinement and iteration in any of these phases” [11]. In MDE, traceability is typically restricted to model transformation. Aizenbud-Reshef and colleague [12] extends the Gotel’s definition of traceability [11] and defines MDE traceability as “any relationship that exists between artifacts involved in the software engineering life cycle.” The IEEE Standard Glossary of Software Engineering Terminology [14] provides an extended definition for traceability: traceability is “the degree to which a relationship can be established between two or more products of the development process, especially products having a predecessor- successor or master-subordinate relationship to one another”. This definition applies to traceability in RE, MDE and SysE as well. Other definitions describe subcategories of traceability such as the horizontal and vertical traceability which refers to the traceability among artifacts of similar or different types at the same or at different levels of abstractions [6, 15-17]. In SysE some authors argue that SE definitions of traceability are not sufficient and therefore extend them [18]. III. SYSTEMATIC REVIEW METHODOLOGY Our systematic review follows guidelines from Evidence Based Software Engineering [19], including: planning the review (sections III.A, III.B and III.C, conducting the review (section III.D), and reporting the review (section IV). A. Planning the Review Although the review covers the work on traceability in general, our concern is to study the traceability among artifacts 2017 IEEE 41st Annual Computer Software and Applications Conference 0730-3157/17 $31.00 © 2017 IEEE DOI 10.1109/COMPSAC.2017.237 305 Authorized licensed use limited to: Kean University. Downloaded on November 24,2023 at 13:29:43 UTC from IEEE Xplore. Restrictions apply.