Supporting software evolution through dynamically retrieving traces to UML artifacts

The ability to trace new and changed requirements to their impacted components provides critical support for managing change in an evolving software system. Unfortunately numerous studies have shown the difficulties of maintaining links using traditional traceability methods. Information retrieval techniques can be used to dynamically generate traces and alleviate the need to maintain explicit links, however prior work in this area has focused primarily on establishing intra-requirement links or links between requirements and code. We compare several retrieval techniques for generating links between requirements, code, and UML models. Tracing to UML elements provides a higher perspective on the proposed change than would be possible if links were generated directly to the code and supports the growing trend towards model driven development. Our experiment returned better results for establishing links to UML artifacts than to code, suggesting the usefulness of establishing links to code via UML artifacts. We conclude the paper by discussing the implications of this approach for managing the evolution of a software system.

[1]  George Spanoudakis Plausible and adaptive requirement traceability structures , 2002, SEKE '02.

[2]  Lionel C. Briand,et al.  Impact analysis and change management of UML models , 2003, International Conference on Software Maintenance, 2003. ICSM 2003. Proceedings..

[3]  Licia Capra,et al.  xlinkit: a consistency checking and smart link generation service , 2002, TOIT.

[4]  Jane Cleland-Huang,et al.  A heterogeneous solution for improving the return on investment of requirements traceability , 2004, Proceedings. 12th IEEE International Requirements Engineering Conference, 2004..

[5]  Giuliano Antoniol,et al.  Recovering Traceability Links between Code and Documentation , 2002, IEEE Trans. Software Eng..

[6]  Klaus Pohl,et al.  Adapting traceability environments to project-specific needs , 1998, CACM.

[7]  Øystein Nytrø,et al.  Dynamic traceability links supported by a system architecture description , 1997, 1997 Proceedings International Conference on Software Maintenance.

[8]  Gerard Salton,et al.  Term-Weighting Approaches in Automatic Text Retrieval , 1988, Inf. Process. Manag..

[9]  Amit Singhal,et al.  Pivoted document length normalization , 1996, SIGIR 1996.

[10]  Jane Huffman Hayes,et al.  Improving requirements tracing via information retrieval , 2003, Proceedings. 11th IEEE International Requirements Engineering Conference, 2003..

[11]  Carl K. Chang,et al.  Automating performance-related impact analysis through event based traceability , 2003, Requirements Engineering.

[12]  Olly Gotel,et al.  An analysis of the requirements traceability problem , 1994, Proceedings of IEEE International Conference on Requirements Engineering.

[13]  Michael McGill,et al.  Introduction to Modern Information Retrieval , 1983 .

[14]  Matthias Jarke,et al.  Toward Reference Models of Requirements Traceability , 2001, IEEE Trans. Software Eng..

[15]  Ricardo Baeza-Yates,et al.  Information Retrieval: Data Structures and Algorithms , 1992 .