Back close

Prioritizing Code Smell Correction Task Using SPEA Algorithm

Publication Type : Journal Article

Source : Indian Journal of Science and Technology (IJST), vol. 11, no.20, pp.1-12

Url : https://indjst.org/articles/prioritizing-code-smell-correction-task-using-strength-pareto-evolutionary-algorithm

Keywords : Code Smells, Maintenance, Prioritizing, Refactoring, Search Based Software Engineering, Strength Pareto Evolutionary Algorithm (SPEA)

Campus : Chennai

School : School of Computing

Department : Computer Science and Engineering

Year : 2018

Abstract : Objective: Code smells indicate the design decay in software applications. The code smells existence in the software will hinder the understandability of code and possibly increases changes and fault proneness. Methods / Statistical Analysis: To remove the code smells’ from the software applications refactoring operations are applied which in turn improves the software system structure without changing its overall behaviour. Generally, in a large sized system, code smell cannot be fixed automatically. Therefore based on the maintainer’s preference, the prioritized list of refactoring sequences to fix the code smells is essential. Findings: Majority of the refactoring just rely on the structural information, which fails to preserve the construct semantics, minimization of changes and the use of development history. To overcome this, in this work, the Strength Pareto Evolutionary Algorithm (SPEA) is used to prioritize the list of refactoring operations that maximize the quality improvement, constructs semantics coherence and preserving the consistency with the previous refactoring. This work is carried out on two open source software Xerces-J and J Hot Draw. Blob, shotgun surgery, functional decomposition, data class, Swiss army knife and schizophrenic class code smells’ are considered for prioritizing refactoring operations in these open source system. SPEA is evaluated using the metrics Code smell Correction Ratio (CCR) and Refactoring Meanings (RM). Application / Improvements: SPEA is compared with other algorithms namely Non-dominated Sorting Genetic Algorithm II (NSGA II) and Chemical Reaction Optimization (CRO), to prove its efficiency in prioritizing code smell correction tasks.

Cite this Research Publication : Saranya, G, Khanna Nehemiah, H & Kannan, A, (2018). Prioritizing Code Smell Correction Task Using SPEA Algorithm. Indian Journal of Science and Technology (IJST), vol. 11, no.20, pp.1-12. https://dx.doi.org/10.17485/ijst/2018/v11i20/122472

Admissions Apply Now