kirancodes.me
To Proof Maintenance & Beyond!

Ref-Finder: a refactoring reconstruction tool based on logic query templates

Miryung Kim, Matthew Gee, Alex Loh, Napol Rachatasumrit

Abstract

Knowing which parts of a system underwent which types of refactoring between two program versions can help programmers better understand code changes. Though there are a number of techniques that automatically find refactorings from two input program versions, these techniques are inadequate in terms of coverage by handling only a subset of refactoring types---mostly simple rename and move refactorings at the level of classes, methods, and fields. This paper presents a Ref-Finder Eclipse plug-in that automatically identifies both atomic and composite refactorings using a template-based refactoring reconstruction approach---it expresses each refactoring type in terms of template logic queries and uses a logic programming engine to infer concrete refactoring instances. Ref-Finder currently supports sixty three types in the Fowler's catalog, showing the most comprehensive coverage among existing techniques.

BibTeX
@inproceedings{Kim-al:FSE10,
  author    = {Miryung Kim and
               Matthew Gee and
               Alex Loh and
               Napol Rachatasumrit},
  title     = {{Ref-Finder:} a refactoring reconstruction tool based on logic query templates},
  booktitle = {FSE},
  pages     = {371--372},
  publisher = {{ACM}},
  year      = {2010},
}

Related papers