Chianti: a tool for change impact analysis of java programs
Proceedings of the 19th annual ACM SIGPLAN conference on Object-oriented …, 2004•dl.acm.org
This paper reports on the design and implementation of Chianti, a change impact analysis
tool for Java that is implemented in the context of the Eclipse environment. Chianti analyzes
two versions of an application and decomposes their difference into a set of atomic changes.
Change impact is then reported in terms of affected (regression or unit) tests whose
execution behavior may have been modified by the applied changes. For each affected test,
Chianti also determines a set of affecting changes that were responsible for the test's …
tool for Java that is implemented in the context of the Eclipse environment. Chianti analyzes
two versions of an application and decomposes their difference into a set of atomic changes.
Change impact is then reported in terms of affected (regression or unit) tests whose
execution behavior may have been modified by the applied changes. For each affected test,
Chianti also determines a set of affecting changes that were responsible for the test's …
This paper reports on the design and implementation of Chianti, a change impact analysis tool for Java that is implemented in the context of the Eclipse environment. Chianti analyzes two versions of an application and decomposes their difference into a set of atomic changes. Change impact is then reported in terms of affected (regression or unit) tests whose execution behavior may have been modified by the applied changes. For each affected test, Chianti also determines a set of affecting changes that were responsible for the test's modified behavior. This latter step of isolating the changes that induce the failure of one specific test from those changes that only affect other tests can be used as a debugging technique in situations where a test fails unexpectedly after a long editing session. We evaluated Chianti on a year (2002) of CVS data from M. Ernst's Daikon system, and found that, on average, 52% of Daikon's unit tests are affected. Furthermore, each affected unit test, on average, is affected by only 3.95% of the atomic changes. These findings suggest that our change impact analysis is a promising technique for assisting developers with program understanding and debugging.