Analyzing Impact Rules of Different Change Types to Support Change Impact Analysis.

Xiaobing Sun,Bixin Li,Wanzhi Wen,Sai Zhang
DOI: https://doi.org/10.1142/s0218194013500071
IF: 1.007
2013-01-01
International Journal of Software Engineering and Knowledge Engineering
Abstract:Software change impact analysis (CIA) is a key technique for identifying unpredicted and potential effects caused by changes made to software. Different changes have different ripple effects to other parts in the program, even some changes do not affect other entities in spite of some dependencies existing between these entities and the modified one. This induces imprecision if such a factor is neglected. This article proposes a static CIA technique which considers the impact rules of different change types to predict the change effects. Input of our CIA includes changed classes, class methods and class fields, and the output is composed of potentially affected classes, class methods, and class fields. Precision improvement of the CIA technique relies on three aspects: change types of a modified entity, dependencies between the modified entity and other entities, and a precise initial impact set (IIS), on which the final impact set (FIS) is computed. Experimental case studies demonstrate the effectiveness of our technique, and present its potential applications in software maintenance.
What problem does this paper attempt to address?