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.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.References
Amalfitano D, De Simone V, Maietta RR, Scala S, Fasolino AR (2019) Using tool integration for improving traceability management testing processes: an automotive industrial experience. J Softw Evol Process 31(6):e2171
Maro S, Steghöfer J-P, Bozzelli P, Muccini H (2021) Supplemental information for “TracIMo: a traceability introduction methodology and its evaluation in an Agile development team”. https://doi.org/10.5281/zenodo.4160568
Arkley P, Riddle S, Brookes T (2006) Tailoring traceability information to business needs. In: 2006 14th IEEE international requirements engineering conference (RE). IEEE, pp 239–244
Asuncion HU, François F, Taylor RN (2007) An end-to-end industrial software traceability tool. In: Proceedings of the the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering. ACM, pp 115–124
Asuncion HU, Asuncion AU, Taylor RN (2010) Software traceability with topic modeling. In: Proceedings of the 32nd ACM/IEEE international conference on software engineering, vol. 1. ACM, pp 95–104
Biehl JT, Czerwinski M, Czerwinski M, Smith G, Robertson GG (2007) Fastdash: a visual dashboard for fostering awareness in software teams. In: Proceedings of the SIGCHI conference on Human factors in computing systems. ACM, pp 1313–1322
Borg M, Runeson P, Ardö A (2014) Recovering from a decade: a systematic mapping of information retrieval approaches to software traceability. Emp Softw Eng 19(6):1565–1616
Bouillon E, Mäder P, Philippow I (2013) A survey on usage scenarios for requirements traceability in practice. In: International working conference on requirements engineering: foundation for software quality. Springer, pp 158–173
Cleland-Huang J, Hayes JH, Domel JM (2009) Model-based traceability. In: 2009 ICSE workshop on traceability in emerging forms of software engineering. IEEE, pp 6–10
Cleland-Huang J, Czauderna A, Gibiec M, Emenecker J (2010) A machine learning approach for tracing regulatory codes to product specific requirements. In: Proceedings of the 32nd ACM/IEEE international conference on software engineering. ACM, pp 155–164
Cleland-Huang J, Gotel OC, Huffman Hayes J, Mäder P, Zisman A (2014) Software traceability: trends and future directions. In: Future of software engineering proceedings, pp 55–69
COEST (2015) Center of excellence for software traceability (coest). http://www.coest.org. Accessed 15 Oct 2017
Cruzes DS, Dyba T (2011) Recommended steps for thematic synthesis in software engineering. In: 2011 International symposium on empirical software engineering and measurement. IEEE, pp 275–284
De Lucia A, Fasano F, Oliveto R (2008) Traceability management for impact analysis. In: Frontiers of software maintenance, 2008. FoSM 2008. IEEE, pp 21–30
Dömges R, Pohl K (1998) Adapting traceability environments to project-specific needs. Commun ACM 41(12):54–62
Dybå T (2005) An empirical investigation of the key factors for success in software process improvement. IEEE Trans Softw Eng 31(5):410–424
Engelsman W, Wieringa RJ, van Sinderen M, Gordijn J, Haaker T (2019) Realizing traceability from the business model to enterprise architecture. In: International conference on conceptual modeling. Springer, pp 37–46
Espinoza A, Garbajosa J (2011) A study to support agile methods more effectively through traceability. Innov Syst Softw Eng 7(1):53–69
Florez JM (2019) Automated fine-grained requirements-to-code traceability link recovery. In: 2019 IEEE/ACM 41st international conference on software engineering: companion proceedings (ICSE-Companion). IEEE, pp 222–225
Gotel O, Mäder P (2012) Acquiring tool support for traceability. In: Software and systems traceability. Springer, pp 43–68
Gotel O, Cleland-Huang J, Hayes JH, Zisman A, Egyed A, Grünbacher P, Antoniol G (2012a) The quest for ubiquity: A roadmap for software and systems traceability research. In: 2012 20th IEEE international requirements engineering conference (RE). IEEE, pp 71–80
Gotel O, Cleland-Huang J, Hayes JH, Zisman A, Egyed A, Grünbacher P, Dekhtyar A, Antoniol G, Maletic J (2012b) The grand challenge of traceability (v1. 0). In: Software and systems traceability. Springer, pp 343–409
Gotel O, Cleland-Huang J, Hayes JH, Zisman A, Egyed A, Grünbacher P, Dekhtyar A, Antoniol G, Maletic J, Mäder P (2012c) Traceability fundamentals. In: Software and systems traceability. Springer, pp 3–22
Gotel OC, Finkelstein C (1994) An analysis of the requirements traceability problem. In: 1994., Proceedings of the first international conference on requirements engineering (RE). IEEE, pp 94–101
Guo J, Cheng J, Cleland-Huang J (2017) Semantically enhanced software traceability using deep learning techniques. In: Proceedings of the 39th international conference on software engineering. IEEE Press, pp 3–14
Hayes JH, Dekhtyar A, Osborne J (2003) Improving requirements tracing via information retrieval. In: 2003 11th IEEE international requirements engineering conference (RE). IEEE, pp 138–147
Ingram C, Riddle S (2012) Cost-benefits of traceability. In: Software and systems traceability. Springer, pp 23–42
Itemis (2019) Yakindu traceability. https://www.itemis.com/en/yakindu/traceability/. Accessed 07 Aug 2019
Javed MA, Zdun U (2014) A systematic literature review of traceability approaches between software architecture and source code. In: Proceedings of the 18th international conference on evaluation and assessment in software engineering. ACM, p 16
Jönsson P, Lindvall M (2005) Impact analysis. In: Engineering and managing software requirements. Springer, pp 117–142
Kinoshita F (2008) Practices of an agile team. In: Agile 2008 conference. IEEE, pp 373–377
Kirova V, Kirby N, Kothari D, Childress G (2008) Effective requirements traceability: models, tools, and practices. Bell Labs Tech J 12(4):143–157
Klimpke L, Hildenbrand T (2009) Towards end-to-end traceability: insights and implications from five case studies. In: 2009 Fourth international conference on software engineering advances. IEEE, pp 465–470
Kotter JP, Cohen DS (2002) The heart of change: Real-life stories of how people change their organizations. Harvard Business Press, Harvard
Mäder P, Cleland-Huang J (2013) A visual language for modeling and executing traceability queries. Softw Syst Modell 12(3):537–553
Mäder P, Gotel O (2012) Ready-to-use traceability on evolving projects. In: Software and systems traceability. Springer, pp 173–194
Mader P, Gotel O, Philippow I (2009) Motivation matters in the traceability trenches. In: 2009 17th IEEE international requirements engineering conference. IEEE, pp 143–148
Mader P, Jones PL, Zhang Y, Cleland-Huang J (2013) Strategic traceability for safety-critical projects. IEEE Softw 30(3):58–66
Mahmoud A, Niu N (2013) Supporting requirements traceability through refactoring. In: 2013 21st IEEE international requirements engineering conference (RE). IEEE, pp 32–41
Maro S, Steghöfer JP (2016) Capra: a configurable and extendable traceability management tool. In: 2016 24th International requirements engineering conference (RE). IEEE, pp 407–408
Maro S, Anjorin A, Wohlrab R, Steghöfer JP (2016) Traceability maintenance: factors and guidelines. In: 2016 31st IEEE/ACM international conference on automated software engineering (ASE). IEEE, pp 414–425
Maro S, Steghöfer JP, Hayes J, Cleland-Huang J, Staron M (2018a) Vetting automatically generated trace links: what information is useful to human analysts? In: 2018 IEEE 26th international requirements engineering conference (RE). IEEE, pp 52–63
Maro S, Steghöfer JP, Staron M (2018b) Software traceability in the automotive domain: challenges and solutions. J Syst Softw 141:85–110
Mezghani M, Kang J, Kang EB, Sedes F (2019) Clustering for traceability managing in system specifications. In: 2019 IEEE 27th international requirements engineering conference (RE). IEEE, pp 257–264
Nair S, De La Vara JL, Sen S (2013) A review of traceability research at the requirements engineering conference re@ 21. In: 2013 21st IEEE international requirements engineering conference (RE). IEEE, pp 222–229
Nair S, de la Vara JL, Melzi A, Tagliaferri G, De-La-Beaujardiere L, Belmonte F (2014) Safety evidence traceability: Problem analysis and model. In: International working conference on requirements engineering: Foundation for software quality. Springer, pp 309–324
Niazi M (2006) Software process improvement: a road to success. In: International conference on product focused software process improvement. Springer, pp 395–401
Pages B (2018) Bouml. https://www.bouml.fr/index.html. Accessed 23 May 2019
Panis MC (2010) Successful deployment of requirements traceability in a commercial engineering organization... really. In: 2010 18th IEEE InternationalRequirements Engineering Conference (RE), IEEE, pp 303–307
Peffers K, Tuunanen T, Rothenberger MA, Chatterjee S (2007) A design science research methodology for information systems research. J Manage Inform Syst 24(3):45–77
Prat N, Comyn-Wattiau I, Akoka J (2014) Artifact evaluation in information systems design-science research-a holistic view. In: 9th Pacific Asia conference on information systems. p 23
Pruski P, Lohar S, Goss W, Rasin A, Cleland-Huang J (2015) Tiqi: answering unstructured natural language trace queries. Requir Eng 20(3):215–232
Ramesh B, Jarke M (2001) Toward reference models for requirements traceability. IEEE Trans Softw Eng 27(1):58–93
Regan G, McCaffery F, McDaid K, Flood D (2012) The barriers to traceability and their potential solutions: towards a reference framework. In: 2012 38th Euromicro conference on software engineering and advanced applications. IEEE, pp 319–322
Rempel P, Lehnert S, Kuschke T et al (2012) A framework for traceability tool comparison. Softwaretechnik-Trends 32(3):6–11
Rempel P, Mäder P, Kuschke T (2013) An empirical study on project-specific traceability strategies. In: 2013 21st IEEE international requirements engineering conference (RE). IEEE, pp 195–204
Rempel P, Mäder P, Kuschke T, Cleland-Huang J (2014) Mind the gap: assessing the conformance of software traceability to relevant guidelines. In: Proceedings of the 36th international conference on software engineering. ACM, pp 943–954
Runeson P, Höst M (2009) Guidelines for conducting and reporting case study research in software engineering. Emp Softw Eng 14(2):131
Ståhl D, Hallén K, Bosch J (2017) Achieving traceability in large scale continuous integration and delivery deployment, usage and validation of the eiffel framework. Emp Softw Eng 22(3):967–995
Staron M (2006) Adopting model driven software development in industry—a case study at two companies. In: Nierstrasz O, Whittle J, Harel D, Reggio G (eds) Model driven engineering languages and systems. Springer, Berlin Heidelberg, Berlin, Heidelberg, pp 57–72
Steghöfer JP (2017) Software traceability tools: Overview and categorisation. In: Report of the GI working group “traceability/evolution”. German Informatics Society (GI), pp 2–7. http://pi.informatik.uni-siegen.de/gi/stt/38_1/01_Fachgruppenberichte/ARC_AKTE/ARC_AKTE_2017_p2_steghoefer.pdf
Van Solingen R, Basili V, Caldiera G, Rombach HD (2002) Goal/question/metric (GQM) approach. Encyclopedia of Software Engineering
Vara JM, Bollati VA, Jiménez Á, Marcos E (2014) Dealing with traceability in the mddof model transformations. IEEE Trans Softw Eng 40(6):555–583
Venable J, Pries-Heje J, Baskerville R (2012) A comprehensive framework for evaluation in design science research. In: International conference on design science research in information systems. Springer, pp 423–438
Wang B, Peng R, Li Y, Lai H, Wang Z (2018) Requirements traceability technologies and technology transfer decision support: a systematic review. J Syst Softw 146:59–79
Wieringa R (2010) Design science methodology: principles and practice. In: Proceedings of the 32nd ACM/IEEE international conference on software engineering, vol 2. ACM, pp 493–494
Winkler S, Pilgrim J (2010) A survey of traceability in requirements engineering and model-driven development. Softw Syst Model (SoSyM) 9(4):529–565
Wohlrab R, Steghöfer JP, Knauss E, Maro S, Anjorin A (2016) Collaborative traceability management: challenges and opportunities. In: 2016 IEEE 24th international requirements engineering conference (RE). IEEE, pp 216–225
Wolfenstetter T, Basirati MR, Böhm M, Krcmar H (2018) Introducing trails: a tool supporting traceability, integration and visualisation of engineering knowledge for product service systems development. J Syst Softw 144:342–355
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Maro, S., Steghöfer, JP., Bozzelli, P. et al. TracIMo: a traceability introduction methodology and its evaluation in an Agile development team. Requirements Eng 27, 53–81 (2022). https://doi.org/10.1007/s00766-021-00361-5
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00766-021-00361-5