Back to Search Start Over

Model refactoring by example: A multi‐objective search based software engineering approach.

Authors :
Ghannem, Adnane
Kessentini, Marouane
Hamdi, Mohammad Salah
El Boussaidi, Ghizlane
Source :
Journal of Software: Evolution & Process; Apr2018, Vol. 30 Issue 4, p1-1, 20p
Publication Year :
2018

Abstract

Abstract: Declarative rules are frequently used in model refactoring in order to detect refactoring opportunities and to apply the appropriate ones. However, a large number of rules is required to obtain a complete specification of refactoring opportunities. Companies usually have accumulated examples of refactorings from past maintenance experiences. Based on these observations, we consider the model refactoring problem as a multi objective problem by suggesting refactoring sequences that aim to maximize both structural and textual similarity between a given model (the model to be refactored) and a set of poorly designed models in the base of examples (models that have undergone some refactorings) and minimize the structural similarity between a given model and a set of well‐designed models in the base of examples (models that do not need any refactoring). To this end, we use the Non‐dominated Sorting Genetic Algorithm (NSGA‐II) to find a set of representative Pareto optimal solutions that present the best trade‐off between structural and textual similarities of models. The validation results, based on 8 real world models taken from open‐source projects, confirm the effectiveness of our approach, yielding refactoring recommendations with an average correctness of over 80%. In addition, our approach outperforms 5 of the state‐of‐the‐art refactoring approaches. [ABSTRACT FROM AUTHOR]

Details

Language :
English
ISSN :
20477473
Volume :
30
Issue :
4
Database :
Complementary Index
Journal :
Journal of Software: Evolution & Process
Publication Type :
Academic Journal
Accession number :
129158017
Full Text :
https://doi.org/10.1002/smr.1916