DocumentCode :
2672552
Title :
Template-based reconstruction of complex refactorings
Author :
Prete, Kyle ; Rachatasumrit, Napol ; Sudan, Nikita ; Kim, Miryung
Author_Institution :
Dept. of Electr. & Comput. Eng., Univ. of Texas at Austin, Austin, TX, USA
fYear :
2010
fDate :
12-18 Sept. 2010
Firstpage :
1
Lastpage :
10
Abstract :
Knowing which types of refactoring occurred between two program versions can help programmers better understand code changes. Our survey of refactoring identification techniques found that existing techniques cannot easily identify complex refactorings, such as an replace conditional with polymorphism refactoring, which consist of a set of atomic refactorings. This paper presents REF-FINDER that identifies complex refactorings between two program versions using a template-based refactoring reconstruction approach - REF-FINDER expresses each refactoring type in terms of template logic rules and uses a logic programming engine to infer concrete refactoring instances. It currently supports sixty three refactoring types from Fowler´s catalog, showing the most comprehensive coverage among existing techniques. The evaluation using code examples from Fowler´s catalog and open source project histories shows that REF-FINDER identifies refactorings with an overall precision of 0.79 and recall of 0.95.
Keywords :
logic programming; software maintenance; Fowler catalog; REF-FINDER; atomic refactorings; complex refactorings; logic programming engine; polymorphism refactoring; refactoring identification techniques; template logic rules; template-based refactoring reconstruction approach; Algorithm design and analysis; Catalogs; Cloning; Concrete; Databases; Feature extraction; Software;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Software Maintenance (ICSM), 2010 IEEE International Conference on
Conference_Location :
Timisoara
ISSN :
1063-6773
Print_ISBN :
978-1-4244-8630-4
Electronic_ISBN :
1063-6773
Type :
conf
DOI :
10.1109/ICSM.2010.5609577
Filename :
5609577
Link To Document :
بازگشت