Local Search-Based Refactoring as Graph Transformation
Fawad Qayum, Reiko Heckel · 2009
To improve both performance/scalability and traceability/understandability of search-based refactoring, in this paper, we propose a local formulation of refactoring based on graph transformation. We use graphs to represent software architectures at the class level and graph transformation to formally describe their refactoring operations. This makes it possible to use concepts and techniques from the theory of graph transformation such as unfolding and critical pair analysis to identify dependencies between refactoring steps. As a result, we are able to express the search problem as an instance of the ant colony optimisation metaheuristic.