Should we be worried about code smells? It would seem not. In a controlled industrial setting, six developers undertook real maintenance tasks over a period of three to four weeks on four different but functionally equivalent systems. The time they spent working on these tasks was measured directly using MimEc, an Eclipse integrated development environment (IDE) plugin. Various regression analyses were undertaken to determine if code smells, whose nature and density varied between the four systems, affected effort. The 12 code smells examined were found to have no additional explanatory power. Instead, the effort of working on a file could be predicted to an extent by the size of the file. The authors conclude that focusing on ways to reduce code size may prove beneficial for reducing maintenance effort. According to Table 3, the density of code smells was small, so many empirical software engineers will not be surprised by the findings of this study.
Despite finding an average drop in effort of 40 percent between the first and second round of their controlled study, the authors failed to conclude that obtaining a familiarity with a domain eases the effort involved for subsequent work in the same domain. Also, despite the fact that System B was around two to three times bigger than the other three systems, the authors failed to investigate the nature of System B and so did not discover the reasons why it was so much bigger. Nevertheless, this paper is recommended to those working in software quality assurance and software maintenance.