Title :
Prioritising Refactoring Using Code Bad Smells
Author :
Zhang, Min ; Baddoo, Nathan ; Wernick, Paul ; Hall, Tracy
Author_Institution :
Sch. of Comput. Sci., Univ. of Hertfordshire, Hatfield, UK
Abstract :
We investigated the relationship between six of Fowler et al.´s Code Bad Smells (Duplicated Code, Data Clumps, Switch Statements, Speculative Generality, Message Chains, and Middle Man) and software faults. In this paper we discuss how our results can be used by software developers to prioritise refactoring. In particular we suggest that source code containing Duplicated Code is likely to be associated with more faults than source code containing the other five Code Bad Smells. As a consequence, Duplicated Code should be prioritised for refactoring. Source code containing Message Chains seems to be associated with a high number of faults in some situations. Consequently it is another Code Bad Smell which should be prioritised for refactoring. Source code containing only one of the Data Clumps, Switch Statements, Speculative Generality, or Middle Man Bad Smell is not likely to be fault-prone. As a result these Code Bad Smells could be put into a lower refactoring priority.
Keywords :
software engineering; system recovery; code bad smells; data clumps; duplicated code; message chains; middle man; software faults; source code; speculative generality; switch statements; Encoding; Fault diagnosis; Java; Software; Switches; Systematics; Taxonomy; Code Bad Smells; Fault; Refactoring;
Conference_Titel :
Software Testing, Verification and Validation Workshops (ICSTW), 2011 IEEE Fourth International Conference on
Conference_Location :
Berlin
Print_ISBN :
978-1-4577-0019-4
Electronic_ISBN :
978-0-7695-4345-1
DOI :
10.1109/ICSTW.2011.69