In Proceedings of the 2008 International Workshop on Recommendation Systems for Software Engineering (RSSE), of RSSE '08, pages 36–40, New York, NY, USA, 2008. ACM. Paper doi abstract bibtex
The process of refactoring code—changing its structure while preserving its meaning—has been identified as an important way of maintaining code quality over time. However, it is sometimes difficult for progammers to identify which pieces of code are in need of refactoring. "Smell detectors" are designed to help programmers in this task, but most smell detectors do not mesh well with "floss refactoring," the recommended tactic in which refactoring and programming are finely interleaved. In this paper we present a smell detector that we have built with floss refactoring in mind by combining seven habits that we postulate are important to consider when designing usable smell detectors. We hope that this combination can help the designers of future smell detectors build tools that align with the way that programmers refactor.