A Genetic Algorithm for Automated Refactoring of Component-Based Software

Journal Title: EAI Endorsed Transactions on Creative Technologies - Year 2016, Vol 3, Issue 9

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.

Authors and Affiliations

Salim Kebir, Isabelle Borne, Djamel Meslati

Keywords

Related Articles

Solitude or co-existence – or learning-together-apart with digital dialogic technologies for kids with developmental and attention difficulties

An overall political vision of a prosperous society is one in which everyone has the same access and possibilities of participating in democratic processes, and in which everyone has equal access to the resources, life a...

Moving Collaborations: A Critical Inquiry Into Designing Creative Interactive Systems for Choreography

The use of technology in choreographic process has been encumbered by the richness of data in live human movement and the constraints of computation. While technology is often considered a tool in choreographic process,...

Towards a new software quality model for evaluation the quality of gamified systems

Due to the emergence of the Gamification concept in various domains, this article studies how to improve the quality of gamified systems with the software engineering discipline. Recent studies have shown a significant g...

A High Visual Quality Embedding Method in Edges Based on Pixel Pair Difference

In this paper, we proposed a new data hiding method based on diamond encoding (DE) and pixel pair difference (PPD). DE proposes a pixel-wise algorithm which flexibly embeds different base digits to maximize payload and i...

Philosophy of Computer Game with BCI as Healthcare Information Design Outcomes: Toward a New Approach of Knowledge Game

This study presents that the computer game using brain information as healthcare design outcomes is being philosophized as an object of thoughts. In order to define the philosophy of computer game with BCI (Brain-Compute...

Download PDF file
  • EP ID EP45859
  • DOI http://dx.doi.org/10.4108/eai.3-12-2015.2262353
  • Views 252
  • Downloads 0

How To Cite

Salim Kebir, Isabelle Borne, Djamel Meslati (2016). A Genetic Algorithm for Automated Refactoring of Component-Based Software. EAI Endorsed Transactions on Creative Technologies, 3(9), -. https://europub.co.uk/articles/-A-45859