VTracker: Differencing Object-Oriented Models

The comparison of source code versions can be useful for recovering the development process of the system, recognizing applied refactorings, and inferring high-level patterns in the history of the system. In the past, several domain-specific approaches have been applied to the problem of recovering the design evolution of object-oriented systems. In this work, we applied VTracker, a generic domain-independent tree differencing algorithm, to the problem of extracting the changes between two versions of an object-oriented software system. We evaluated VTracker by executing it over successive versions of JFreeChart, and also compared its accuracy in terms of precision and recall against a state-of-the-art domain-specific differencing algorithm, namely UMLDiff.

Getting Started

Experiment Data

The JDEvAn and VTracker experiment results are available for download:

Related Papers