Prioritizing code-smells correction tasks using chemical reaction optimization

A Ouni, M Kessentini, S Bechikh, H Sahraoui - Software Quality Journal, 2015 - Springer
Software Quality Journal, 2015Springer
The presence of code-smells increases significantly the cost of maintenance of systems and
makes them difficult to change and evolve. To remove code-smells, refactoring operations
are used to improve the design of a system by changing its internal structure without altering
the external behavior. In large-scale systems, the number of code-smells to fix can be very
large and not all of them can be fixed automatically. Thus, the prioritization of the list of code-
smells is required based on different criteria such as the risk and importance of classes …
Abstract
The presence of code-smells increases significantly the cost of maintenance of systems and makes them difficult to change and evolve. To remove code-smells, refactoring operations are used to improve the design of a system by changing its internal structure without altering the external behavior. In large-scale systems, the number of code-smells to fix can be very large and not all of them can be fixed automatically. Thus, the prioritization of the list of code-smells is required based on different criteria such as the risk and importance of classes. However, most of the existing refactoring approaches treat the code-smells to fix with the same importance. In this paper, we propose an approach based on a chemical reaction optimization metaheuristic search to find the suitable refactoring solutions (i.e., sequence of refactoring operations) that maximize the number of fixed riskiest code-smells according to the maintainer’s preferences/criteria. We evaluate our approach on five medium- and large-sized open-source systems and seven types of code-smells. Our experimental results show the effectiveness of our approach compared to other existing approaches and three different others metaheuristic searches.
Springer
以上显示的是最相近的搜索结果。 查看全部搜索结果