Title :
A differencing algorithm for object-oriented programs
Author :
Apiwattanapong, Taweesup ; Orso, Alessandro ; Harrold, Mary Jean
Author_Institution :
Georgia Inst. of Technol., Atlanta, GA, USA
Abstract :
During software evolution, information about changes between different versions of a program is useful for a number of software engineering tasks. For many of these tasks, a purely syntactic differencing may not provide enough information for the task to be performed effectively. This problem is especially relevant in the case of object-oriented software, for which a syntactic change can have subtle and unforeseen effects. We present a technique for comparing object-oriented programs that identifies both differences and correspondences between two versions of a program. The technique is based on a representation that handles object-oriented features and, thus, can capture the behavior of object-oriented programs. We also present JDIFF, a tool that implements the technique for Java programs, and empirical results that show the efficiency and effectiveness of the technique on a real program.
Keywords :
Java; object-oriented programming; software maintenance; software tools; JDIFF tool; Java programs; differencing algorithm; object-oriented features; object-oriented programming; object-oriented software; software engineering; software evolution; syntactic differencing; Collaborative software; Costs; Electronic mail; Information analysis; Java; Merging; Software engineering; Software maintenance; Software systems; Software testing;
Conference_Titel :
Automated Software Engineering, 2004. Proceedings. 19th International Conference on
Print_ISBN :
0-7695-2131-2
DOI :
10.1109/ASE.2004.1342719