FCA-CIA : An approach of using FCA to support cross-level change impact analysis for object oriented Java programs

Research output: Journal Publications and ReviewsRGC 21 - Publication in refereed journalpeer-review

21 Scopus Citations
View graph of relations

Author(s)

Related Research Unit(s)

Detail(s)

Original languageEnglish
Pages (from-to)1437-1449
Journal / PublicationInformation and Software Technology
Volume55
Issue number8
Publication statusPublished - Aug 2013

Abstract

Background: Software Change Impact Analysis (CIA) is an essential technique in software engineering to identifying the potential influences of a change, or determining change entities to accomplish such a change. The results derived, in many cases, ambiguous for the software maintainers, introduces the problem of unclear starting point of these impacted entities. Objective In an attempt to address this issue, this work proposes a novel approach for cross-level CIA, producing a ranked list of potentially impacted methods derived from class-level changes. Moreover, the approach of ranking the impact results is expected to be effective for maintainers to distinguish the probability of the impacted methods to be false-positives. Such results provide an eclectic approach for CIA. Method The approach, FCA-CIA, uses formal concept analysis (FCA) to produce an intermediate representation of the program based on the static analysis of the source code. The representation is called Lattice of Class and Method Dependence (LoCMD). FCA-CIA takes the changed classes in the change set as a whole, and determines the reachable set from the changed classes on the LoCMD. Based on the hierarchical property of the LoCMD, the impacted methods are ranked according to the impact factor metric which corresponds to the priority of these methods to be inspected. Result Empirical evaluations on four real-world software projects demonstrate the effectiveness of the impact factor metric and the FCA-CIA technique. The result shows the predicted impacted methods with higher impact factor values are more likely to be affected by the changes. Our study also shows that the FCA-CIA technique generates more accurate impact set than the JRipples and ICP coupling based CIA technique. © 2013 Elsevier B.V. All rights reserved.

Research Area(s)

  • Change impact analysis, Formal concept analysis, Impact factor, Lattice of class and method dependence