Improving the Precision of Fowler's Definitions of Bad Smells

M. Zhang, N. Baddoo, P. Wernick, T. Hall

Research output: Contribution to journalArticlepeer-review

14 Citations (Scopus)
120 Downloads (Pure)

Abstract

Current approaches to detecting bad smells in code are mainly based on software metrics. We suggest that these methods lack precision in detecting bad smells, and we propose a code pattern-based approach to detecting bad smells. However before such a pattern-based approach can be implemented, Fowler's original definitions of bad smells need to be made more precise. Currently Fowler's definitions are too informal to implement in a pattern-searching tool. In this paper we use an expert panel to evaluate our enhanced definitions for five of Fowler's bad smells. We use a questionnaire to survey four experts' opinions of our bad smell definitions. Our results show that the experts basically agree with our enhanced definitions of the message chains, middle man and speculative generality bad smells. However, there are strong disagreements on our definitions of the data clumps and switch statements bad smells. We present enhanced definitions on the basis of these expert opinions.
Original languageEnglish
Pages (from-to)161-166
JournalProceedings (NASA Goddard/IEEE Software Engineering Workshop)
Volume2008
DOIs
Publication statusPublished - 2009

Fingerprint

Dive into the research topics of 'Improving the Precision of Fowler's Definitions of Bad Smells'. Together they form a unique fingerprint.

Cite this