The research presented here addresses the problem of change impact analysis CIA for object-oriented software. A major problem for developers in an evolutionary environment is that seemingly small changes can ripple throughout the system to have major unintended impacts elsewhere. As a result, software developers need to understand how a change to a software system will a ect the rest of the system. Major results of this research include definitions for object-oriented data dependency graphs, a set of algorithms that allow software developers to evaluate proposed changes on object-oriented software, a set of object-oriented change impact metrics to quantitatively evaluate the change impacts, and a proof-of-concept tool ChAT that computes the impacts of changes. This research also supports e cient regression testing by helping testers decide what classes and methods need to be retested, and in supporting cost estimation and schedule planning.
Michelle Lee, A. Jefferson Offutt, Roger T. Alexan