JDiff: A differencing technique and tool for object-oriented programs
Identifying the semantic and textual differences between two versions of a program