Maro, Salome, Steghöfer, Jan-Philipp, Bozzelli, Paolo, Muccini, Henry
{"title":"TracIMo: a traceability introduction methodology and its evaluation in an Agile development team","authors":"Maro, Salome, Steghöfer, Jan-Philipp, Bozzelli, Paolo, Muccini, Henry","doi":"10.1007/s00766-021-00361-5","DOIUrl":null,"url":null,"abstract":"<p>Software traceability, the ability to relate software development artifacts such as requirements, design models and code to each other, is an important aspect in software development. It yields a number of benefits such as facilitating impact analysis and tracking software changes. However, for companies to reap these benefits, a proper traceability strategy—a plan for how traceability should be managed—needs to be defined and implemented. Existing literature lacks concrete guidelines for practitioners to systematically define such a strategy. In this study, we address this gap by defining a Traceability Introduction Methodology (TracIMo), which is a methodology for systematically designing, implementing and evaluating software traceability in practice. We used design science research to design TracIMo and evaluated it in a case study with an agile development team of a company in the finance domain. Our results show that TracIMo is feasible as it allows incremental definition and evaluation of a traceability strategy that is aligned with the company’s traceability goals and the existing development process. We also report practical challenges encountered when designing a traceability strategy such as defining the right level of granularity and the need for defining intermediate development artifacts.</p>","PeriodicalId":20912,"journal":{"name":"Requirements Engineering","volume":"154 ","pages":""},"PeriodicalIF":2.1000,"publicationDate":"2021-08-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"6","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Requirements Engineering","FirstCategoryId":"94","ListUrlMain":"https://doi.org/10.1007/s00766-021-00361-5","RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q3","JCRName":"COMPUTER SCIENCE, INFORMATION SYSTEMS","Score":null,"Total":0}
引用次数: 6
Abstract
Software traceability, the ability to relate software development artifacts such as requirements, design models and code to each other, is an important aspect in software development. It yields a number of benefits such as facilitating impact analysis and tracking software changes. However, for companies to reap these benefits, a proper traceability strategy—a plan for how traceability should be managed—needs to be defined and implemented. Existing literature lacks concrete guidelines for practitioners to systematically define such a strategy. In this study, we address this gap by defining a Traceability Introduction Methodology (TracIMo), which is a methodology for systematically designing, implementing and evaluating software traceability in practice. We used design science research to design TracIMo and evaluated it in a case study with an agile development team of a company in the finance domain. Our results show that TracIMo is feasible as it allows incremental definition and evaluation of a traceability strategy that is aligned with the company’s traceability goals and the existing development process. We also report practical challenges encountered when designing a traceability strategy such as defining the right level of granularity and the need for defining intermediate development artifacts.
期刊介绍:
The journal provides a focus for the dissemination of new results about the elicitation, representation and validation of requirements of software intensive information systems or applications. Theoretical and applied submissions are welcome, but all papers must explicitly address:
-the practical consequences of the ideas for the design of complex systems
-how the ideas should be evaluated by the reflective practitioner
The journal is motivated by a multi-disciplinary view that considers requirements not only in terms of software components specification but also in terms of activities for their elicitation, representation and agreement, carried out within an organisational and social context. To this end, contributions are sought from fields such as software engineering, information systems, occupational sociology, cognitive and organisational psychology, human-computer interaction, computer-supported cooperative work, linguistics and philosophy for work addressing specifically requirements engineering issues.