Code smells are structural characteristics of software that may indicate a code or design problem that makes software hard to evolve and maintain, and may trigger refactoring of code. Recent research is active in defining automatic detection tools to help humans in finding smells when code size becomes unmanageable for manual review. Since the definitions of code smells are informal and subjective, assessing how effective code smell detection tools are is both important and hard to achieve. This paper reviews the current panorama of the tools for automatic code smell detection. It defines research questions about the consistency of their responses, their ability to expose the regions of code most affected by structural decay, and the relevance of their responses with respect to future software evolution. It gives answers to them by analyzing the output of four representative code smell detectors applied to six different versions of GanttProject, an open source system written in Java. The results of these experiments cast light on what current code smell detection tools are able to do and what the relevant areas for further improvement are

ARCELLI FONTANA, F., Braione, P., Zanoni, M. (2012). Automatic detection of bad smells in code: An experimental assessment. JOURNAL OF OBJECT TECHNOLOGY, 11(2), 1-38 [10.5381/jot.2012.11.2.a5].

Automatic detection of bad smells in code: An experimental assessment

ARCELLI FONTANA, FRANCESCA;BRAIONE, PIETRO;ZANONI, MARCO
2012

Abstract

Code smells are structural characteristics of software that may indicate a code or design problem that makes software hard to evolve and maintain, and may trigger refactoring of code. Recent research is active in defining automatic detection tools to help humans in finding smells when code size becomes unmanageable for manual review. Since the definitions of code smells are informal and subjective, assessing how effective code smell detection tools are is both important and hard to achieve. This paper reviews the current panorama of the tools for automatic code smell detection. It defines research questions about the consistency of their responses, their ability to expose the regions of code most affected by structural decay, and the relevance of their responses with respect to future software evolution. It gives answers to them by analyzing the output of four representative code smell detectors applied to six different versions of GanttProject, an open source system written in Java. The results of these experiments cast light on what current code smell detection tools are able to do and what the relevant areas for further improvement are
Articolo in rivista - Articolo scientifico
code smells; code smell detection tools; refactoring; software quality evaluation
English
2012
11
2
1
38
reserved
ARCELLI FONTANA, F., Braione, P., Zanoni, M. (2012). Automatic detection of bad smells in code: An experimental assessment. JOURNAL OF OBJECT TECHNOLOGY, 11(2), 1-38 [10.5381/jot.2012.11.2.a5].
File in questo prodotto:
File Dimensione Formato  
2012-JOT.pdf

Solo gestori archivio

Descrizione: articolo
Dimensione 1.2 MB
Formato Adobe PDF
1.2 MB Adobe PDF   Visualizza/Apri   Richiedi una copia

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10281/36137
Citazioni
  • Scopus 173
  • ???jsp.display-item.citation.isi??? ND
Social impact