Automated refactoring of ATL model transformations: a search based approach
Model transformation programs evolve through a process of continuous change. However, this process may weaken the design of the transformation programs and make it unnecessarily complex, leading to increased fault proneness. Refactoring improves the software design while preserving overall functionality and behavior. However, very few studies addressed the problem of refactoring model transformation programs. These existing studies provided an entirely manual or semi automated refactoring support to transformation languages such as ATL. In this paper, we propose a fully automated search based approach to refactor model transformations based on a multi objective algorithm that recommends the best refactoring sequence (e.g. extract rule, merge rules, etc. optimizing a set of ATL based quality metrics (e.g. number of rules, coupling, etc. To validate our approach, we apply it to a comprehensive dataset of model transformations. The statistical analysis of our experiments over 30 runs shows that our automated approach recommended useful refactorings based on benchmark of ATL programs and compared to random search, mono objective search formulation and a semi automated refactoring approach not based heuristic search.
MoDELS