Title :
Do They Really Smell Bad? A Study on Developers´ Perception of Bad Code Smells
Author :
Palomba, Fabio ; Bavota, Gabriele ; Di Penta, Massimiliano ; Oliveto, Rocco ; De Lucia, Andrea
Author_Institution :
Univ. of Salerno, Salerno, Italy
fDate :
Sept. 29 2014-Oct. 3 2014
Abstract :
In the last decade several catalogues have been defined to characterize bad code smells, i.e., symptoms of poor design and implementation choices. On top of such catalogues, researchers have defined methods and tools to automatically detect and/or remove bad smells. Nevertheless, there is an ongoing debate regarding the extent to which developers perceive bad smells as serious design problems. Indeed, there seems to be a gap between theory and practice, i.e., what is believed to be a problem (theory) and what is actually a problem (practice). This paper presents a study aimed at providing empirical evidence on how developers perceive bad smells. In this study, we showed to developers code entities -- belonging to three systems -- affected and not by bad smells, and we asked them to indicate whether the code contains a potential design problem, and if any, the nature and severity of the problem. The study involved both original developers from the three projects and outsiders, namely industrial developers and Master´s students. The results provide insights on characteristics of bad smells not yet explored sufficiently. Also, our findings could guide future research on approaches for the detection and removal of bad smells.
Keywords :
software engineering; source code (software); bad code smells; developer perception; industrial developers; masters students; Complexity theory; Context; Encoding; Iron; Open source software; Unified modeling language; Code Smells; Empirical Study;
Conference_Titel :
Software Maintenance and Evolution (ICSME), 2014 IEEE International Conference on
Conference_Location :
Victoria, BC
DOI :
10.1109/ICSME.2014.32