Integrating Software Traceability for Change Impact Analysis
Suhaimi Ibrahim1, Norbik Bashah Idris1, Malcolm Munro2, and Aziz Deraman3
1 Centre for Advanced Software Engineering, University of Technology Malaysia, Malaysia
2 Department of Computer Science, University of Durham, United Kingdom
3 Faculty of Technology and Information System, University Kebangsaan Malaysia, Malaysia
Abstract: Software maintenance is recognized as the most costly activity in software engineering with typical estimates of more than half of the software development cost. The main problem to a maintainer is that seemingly small changes can ripple throughout the system to cause substantial impact elsewhere. Software traceability and its subsequent impact analysis help relate the consequences or ripple-effects of a proposed change across different levels of software models. In this paper, we present a software traceability approach to support change impact analysis of object oriented software. The significant contribution in our traceability approach can be observed in its ability to integrate the high level with the low level software models that involve the requirements, test cases, design and code. Our approach allows a direct link between a component at one level to other components at any levels. It supports the top down and bottom up traceability in response to tracing for the ripple-effects. We developed a software prototype called Catia to support C++ software, applied it to a case study of an embedded system and discuss the results.
Keywords: Requirement traceability, impact analysis, concept location, change request.
Received June 17, 2004; accepted October 30, 2004