DocumentCode
2745290
Title
Automatic Inference of Structural Changes for Matching across Program Versions
Author
Kim, Miryung ; Notkin, David ; Grossman, Dan
Author_Institution
Comput. Sci. & Eng., Washington Univ., Seattle, WA
fYear
2007
fDate
20-26 May 2007
Firstpage
333
Lastpage
343
Abstract
Mapping code elements in one version of a program to corresponding code elements in another version is a fundamental building block for many software engineering tools. Existing tools that match code elements or identify structural changes - refactorings and API changes - between two versions of a program have two limitations that we overcome. First, existing tools cannot easily disambiguate among many potential matches or refactoring candidates. Second, it is difficult to use these tools´ results for various software engineering tasks due to an unstructured representation of results. To overcome these limitations, our approach represents structural changes as a set of high-level change rules, automatically infers likely change rules and determines method-level matches based on the rules. By applying our tool to several open source projects, we show that our tool identifies matches that are difficult to find using other approaches and produces more concise results than other approaches. Our representation can serve as a better basis for other software engineering tools.
Keywords
codes; software tools; automatic inference; code elements; open source projects; program versions; software engineering tools; structural changes; Computer science; Information analysis; Natural languages; Packaging; Programming profession; Rendering (computer graphics); Software engineering; Software packages; Software tools; Testing;
fLanguage
English
Publisher
ieee
Conference_Titel
Software Engineering, 2007. ICSE 2007. 29th International Conference on
Conference_Location
Minneapolis, MN
ISSN
0270-5257
Print_ISBN
0-7695-2828-7
Type
conf
DOI
10.1109/ICSE.2007.20
Filename
4222595
Link To Document