Automated Refactoring of ATL Model Transformations: A Search-Based Approach

被引:13
作者
Alkhazi, Bader [1 ]
Ruas, Terry [1 ]
Kessentini, Marouane [1 ]
Wimmer, Manuel [2 ]
Grosky, William, I [1 ]
机构
[1] Univ Michigan, Ann Arbor, MI 48109 USA
[2] Vienna Univ Technol, Vienna, Austria
来源
19TH ACM/IEEE INTERNATIONAL CONFERENCE ON MODEL DRIVEN ENGINEERING LANGUAGES AND SYSTEMS (MODELS'16) | 2016年
关键词
Refactoring; model transformations; search-based software engineering; ALGORITHM;
D O I
10.1145/2976767.2976782
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
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.
引用
收藏
页码:295 / 304
页数:10
相关论文
共 17 条
[1]  
[Anonymous], 2012, J OBJECT TECHNOL
[2]   A fast and elitist multiobjective genetic algorithm: NSGA-II [J].
Deb, K ;
Pratap, A ;
Agarwal, S ;
Meyarivan, T .
IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, 2002, 6 (02) :182-197
[3]  
E. M. Project, 2015, ATL ZOO
[4]   Model refactoring using examples: a search-based approach [J].
Ghannem, Adnane ;
El Boussaidi, Ghizlane ;
Kessentini, Marouane .
JOURNAL OF SOFTWARE-EVOLUTION AND PROCESS, 2014, 26 (07) :692-713
[5]   Evaluation of model transformation approaches for model refactoring [J].
Kolandouz-Rahimi, S. ;
Lano, K. ;
Pillay, S. ;
Troya, J. ;
Van Gorp, P. .
SCIENCE OF COMPUTER PROGRAMMING, 2014, 85 :5-40
[6]  
Kusel Angelika, 2013, REALITY CHECK MODEL
[7]  
Mansoor U., SOFTWARE QUALITY J
[8]   MOMM: Multi-objective model merging [J].
Mansoor, Usman ;
Kessentini, Marouane ;
Langer, Philip ;
Wimmer, Manuel ;
Bechikh, Slim ;
Deb, Kalyanmoy .
JOURNAL OF SYSTEMS AND SOFTWARE, 2015, 103 :423-439
[9]   UML model refactoring: a systematic literature review [J].
Misbhauddin, Mohammed ;
Alshayeb, Mohammad .
EMPIRICAL SOFTWARE ENGINEERING, 2015, 20 (01) :206-251
[10]   Classification of model refactoring approaches [J].
Mohamed, Maddeh ;
Romdhani, Mohamed ;
Ghedira, Khaled .
JOURNAL OF OBJECT TECHNOLOGY, 2009, 8 (06) :143-158