An exploratory study of the impact of code smells on software change-proneness

F Khomh, M Di Penta… - 2009 16th Working …, 2009 - ieeexplore.ieee.org
2009 16th Working Conference on Reverse Engineering, 2009ieeexplore.ieee.org
Code smells are poor implementation choices, thought to make object-oriented systems
hard to maintain. In this study, we investigate if classes with code smells are more change-
prone than classes without smells. Specifically, we test the general hypothesis: classes with
code smells are not more change prone than other classes. We detect 29 code smells in 9
releases of Azureus and in 13 releases of Eclipse, and study the relation between classes
with these code smells and class change-proneness. We show that, in almost all releases of …
Code smells are poor implementation choices, thought to make object-oriented systems hard to maintain. In this study, we investigate if classes with code smells are more change-prone than classes without smells. Specifically, we test the general hypothesis: classes with code smells are not more change prone than other classes. We detect 29 code smells in 9 releases of Azureus and in 13 releases of Eclipse, and study the relation between classes with these code smells and class change-proneness. We show that, in almost all releases of Azureus and Eclipse, classes with code smells are more change-prone than others, and that specific smells are more correlated than others to change-proneness. These results justify a posteriori previous work on the specification and detection of code smells and could help focusing quality assurance and testing activities.
ieeexplore.ieee.org