A Genetic Algorithm for Automated Refactoring of Component-Based Software
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 anom...
Main Authors: | , , |
---|---|
Format: | Article |
Language: | English |
Published: |
European Alliance for Innovation (EAI)
2016-05-01
|
Series: | EAI Endorsed Transactions on Creative Technologies |
Subjects: | |
Online Access: | http://eudl.eu/doi/10.4108/eai.3-12-2015.2262353 |
_version_ | 1828470733825638400 |
---|---|
author | Salim Kebir Isabelle Borne Djamel Meslati |
author_facet | Salim Kebir Isabelle Borne Djamel Meslati |
author_sort | Salim Kebir |
collection | DOAJ |
description | 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. |
first_indexed | 2024-12-11T04:58:41Z |
format | Article |
id | doaj.art-f2eebce3bbb94acaa6d229549905836c |
institution | Directory Open Access Journal |
issn | 2409-9708 |
language | English |
last_indexed | 2024-12-11T04:58:41Z |
publishDate | 2016-05-01 |
publisher | European Alliance for Innovation (EAI) |
record_format | Article |
series | EAI Endorsed Transactions on Creative Technologies |
spelling | doaj.art-f2eebce3bbb94acaa6d229549905836c2022-12-22T01:20:13ZengEuropean Alliance for Innovation (EAI)EAI Endorsed Transactions on Creative Technologies2409-97082016-05-01391810.4108/eai.3-12-2015.2262353A Genetic Algorithm for Automated Refactoring of Component-Based SoftwareSalim Kebir0Isabelle Borne1Djamel Meslati2Ecole Nationale Supérieure d'informatique, Alger, Algeria; s_kebir@esi.dzIRISA, Vannes, FranceLISCO, Université Badji Mokhtar, Annaba, AlgeriaNowadays 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.http://eudl.eu/doi/10.4108/eai.3-12-2015.2262353genetic algorithmrefactoringcomponent-based software engineeringbad smells |
spellingShingle | Salim Kebir Isabelle Borne Djamel Meslati A Genetic Algorithm for Automated Refactoring of Component-Based Software EAI Endorsed Transactions on Creative Technologies genetic algorithm refactoring component-based software engineering bad smells |
title | A Genetic Algorithm for Automated Refactoring of Component-Based Software |
title_full | A Genetic Algorithm for Automated Refactoring of Component-Based Software |
title_fullStr | A Genetic Algorithm for Automated Refactoring of Component-Based Software |
title_full_unstemmed | A Genetic Algorithm for Automated Refactoring of Component-Based Software |
title_short | A Genetic Algorithm for Automated Refactoring of Component-Based Software |
title_sort | genetic algorithm for automated refactoring of component based software |
topic | genetic algorithm refactoring component-based software engineering bad smells |
url | http://eudl.eu/doi/10.4108/eai.3-12-2015.2262353 |
work_keys_str_mv | AT salimkebir ageneticalgorithmforautomatedrefactoringofcomponentbasedsoftware AT isabelleborne ageneticalgorithmforautomatedrefactoringofcomponentbasedsoftware AT djamelmeslati ageneticalgorithmforautomatedrefactoringofcomponentbasedsoftware AT salimkebir geneticalgorithmforautomatedrefactoringofcomponentbasedsoftware AT isabelleborne geneticalgorithmforautomatedrefactoringofcomponentbasedsoftware AT djamelmeslati geneticalgorithmforautomatedrefactoringofcomponentbasedsoftware |