Refactoring: improving the design of existing code
Refactoring: improving the design of existing code
CSMR '01 Proceedings of the Fifth European Conference on Software Maintenance and Reengineering
A Quantitative Evaluation of Maintainability Enhancement by Refactoring
ICSM '02 Proceedings of the International Conference on Software Maintenance (ICSM'02)
Java Quality Assurance by Detecting Code Smells
WCRE '02 Proceedings of the Ninth Working Conference on Reverse Engineering (WCRE'02)
Effects of Refactoring Legacy Protocol Implementations: A Case Study
METRICS '04 Proceedings of the Software Metrics, 10th International Symposium
Mylar: a degree-of-interest model for IDEs
Proceedings of the 4th international conference on Aspect-oriented software development
A Case Study in Refactoring a Legacy Component for Reuse in a Product Line
ICSM '05 Proceedings of the 21st IEEE International Conference on Software Maintenance
Building Usage Contexts During Program Comprehension
ICPC '06 Proceedings of the 14th IEEE International Conference on Program Comprehension
Are refactorings less error-prone than other changes?
Proceedings of the 2006 international workshop on Mining software repositories
Refactoring Practice: How it is and How it Should be Supported - An Eclipse Case Study
ICSM '06 Proceedings of the 22nd IEEE International Conference on Software Maintenance
Supporting Refactoring Activities Using Histories of Program Modification
IEICE - Transactions on Information and Systems
A catalogue of lightweight visualizations to support code smell inspection
Proceedings of the 4th ACM symposium on Software visualization
Refactoring Tools: Fitness for Purpose
IEEE Software
JDeodorant: Identification and Removal of Type-Checking Bad Smells
CSMR '08 Proceedings of the 2008 12th European Conference on Software Maintenance and Reengineering
Hi-index | 0.00 |
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.