Abstract

Software Change Impact Analysis (CIA) is an essential technique to identify the potential effects caused by software changes during software maintenance and evolution. A rich body of CIA techniques, especially static CIA techniques, have continuously emerged in recent years such as structural static analysis, textual analysis, and historical analysis. However, there were only a few works focusing on comparison of static CIA techniques. This article attempts to bridge this gap by presenting a comparative study of three class-level static CIA techniques, i.e., Columbus, ROSE, and IRC2M. We compare them based on a CIA comparative framework and conduct an empirical study to evaluate these three CIA techniques and their combinations based on five real-world programs. The empirical results show that: (1) IRC2M and ROSE achieve relatively better precision, recall and F-measure compared to Columbus; (2) combination of any two CIA techniques can improve the precision and recall over their individual one; moreover, combining ROSE with IRC2M produces the best impact results; and (3) combining all three CIA techniques obtain a similar precision and recall as combining ROSE with IRC2M.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call