Research Article
A Genetic Algorithm for Automated Refactoring of Component-Based Software
@ARTICLE{10.4108/eai.3-12-2015.2262353, author={Salim Kebir and Isabelle Borne and Djamel Meslati}, title={A Genetic Algorithm for Automated Refactoring of Component-Based Software}, journal={EAI Endorsed Transactions on Creative Technologies}, volume={3}, number={9}, publisher={ACM}, journal_a={CT}, year={2016}, month={5}, keywords={genetic algorithm, refactoring, component-based software engineering, bad smells}, doi={10.4108/eai.3-12-2015.2262353} }
- Salim Kebir
Isabelle Borne
Djamel Meslati
Year: 2016
A Genetic Algorithm for Automated Refactoring of Component-Based Software
CT
EAI
DOI: 10.4108/eai.3-12-2015.2262353
Abstract
Nowadays a software undergoes modifications done by different people to quickly fulfill new requirements, but its underlying design is not adjusted properly after each update. This leads to the emergence of bad smells. Refactoring provides a de facto behavior-preserving means to eliminate these anomalies. However, manually determining and performing useful refactorings is known as an NP-Complete problem as stated by Harman et al. because seemingly useful refactorings can improve some aspect of a software while making another aspect worse. Therefore it has been proposed to view object-oriented automated refactoring as a search based technique. However the review of the litterature shows that automated refactoring of component-based software has not been investigated yet. Recently a catalogue of component-relevant bad smells has been proposed in the literature but there is a lack of component-relevant refactorings. In this paper we propose a catalogue of component-relevant refactoring as well as detections rules for component-relevant bad smells. Then we rely on these two ingredients to propose a genetic algorithm for automated refactoring of component-based software systems.
Copyright © 2015 S. Kebir et al., licensed to EAI. This is an open access article distributed under the terms of the Creative Commons Attribution licence (http://creativecommons.org/licenses/by/3.0/), which permits unlimited use, distribution and reproduction in any medium so long as the original work is properly cited.