DocumentCode
2672308
Title
Are all code smells harmful? A study of God Classes and Brain Classes in the evolution of three open source systems
Author
Olbrich, Steffen M. ; Cruze, Daniela S. ; Sjøberg, Dag I K
Author_Institution
Fraunhofer IESE, Kaiserslautern, Germany
fYear
2010
fDate
12-18 Sept. 2010
Firstpage
1
Lastpage
10
Abstract
Code smells are particular patterns in object-oriented systems that are perceived to lead to difficulties in the maintenance of such systems. It is held that to improve maintainability, code smells should be eliminated by refactoring. It is claimed that classes that are involved in certain code smells are liable to be changed more frequently and have more defects than other classes in the code. We investigated the extent to which this claim is true for God Classes and Brain Classes, with and without normalizing the effects with respect to the class size. We analyzed historical data from 7 to 10 years of the development of three open-source software systems. The results show that God and Brain Classes were changed more frequently and contained more defects than other kinds of class. However, when we normalized the measured effects with respect to size, then God and Brain Classes were less subject to change and had fewer defects than other classes. Hence, under the assumption that God and Brain Classes contain on average as much functionality per line of code as other classes, the presence of God and Brain Classes is not necessarily harmful; in fact, such classes may be an efficient way of organizing code.
Keywords
object-oriented programming; public domain software; software maintenance; brain classes; code smells; god classes; maintainability; object-oriented systems; open source systems; Data analysis; FAA; Instruments; Software; Code smells; change frequency; defects; detection strategies; open source; software evolution;
fLanguage
English
Publisher
ieee
Conference_Titel
Software Maintenance (ICSM), 2010 IEEE International Conference on
Conference_Location
Timisoara
ISSN
1063-6773
Print_ISBN
978-1-4244-8630-4
Electronic_ISBN
1063-6773
Type
conf
DOI
10.1109/ICSM.2010.5609564
Filename
5609564
Link To Document