Detecting Merging and Splitting using Origin Analysis

Authors: Lijie Zou Michael W. Godfrey

Venue: SANER   10th Working Conference on Reverse Engineering, 2003

Year: 2003

Abstract: Merging and splittingsource code artifacts is a commonactivity during the lifespan of a software system; as developersrethink the essential structure of a system or plan fora new evolutionary direction, so must they be able to reorganizethe design artifacts at various abstraction levelsas seems appropriate. However, while the raw effects ofsuch changes may be plainly evident in the new artifacts,the original intent of the design changes is often lost. Inthis paper, we discuss how we have extended origin analysis[10, 5] to aid in the detection of merging and splittingof files and functions in procedural code; in particular,we show how reasoning about how call relationships havechanged can aid a developer in locating where merges andsplits have occurred, thereby helping to recover informationabout the intent of the design change. We also describea case study of these techniques (as implemented inthe Beagle tool) using the PostgreSQL database as the candidatesystem.

BibTeX:

@inproceedings{lijiezou2003dmasuoa,
    author = "Lijie Zou and Michael W. Godfrey",
    title = "Detecting Merging and Splitting using Origin Analysis",
    year = "2003",
    booktitle = "Proceedings of the 10th Working Conference on Reverse Engineering"
}

Plain Text:

Lijie Zou and Michael W. Godfrey, "Detecting Merging and Splitting using Origin Analysis," 10th Working Conference on Reverse Engineering