2014 · 82 citations · 15 references
ComputingComputer ScienceKnowledge ReuseRequirements EngineeringSoftware EngineeringSoftware DesignSoftware MaintenanceSoftware RefactoringAutomated RefactoringPatternsRefactoringRefactoring DetectionRefactoring PatternsRefactoring Strategy
Abstract—Although useful and widely available, refactoring tools are underused. One cause of this underuse is that a developer sometimes fails to recognize that she is going to refactor before she begins manually refactoring. To address this issue, we conducted a formative study of developers ’ manual refactoring process, suggesting that developers ’ reliance on “chasing error messages ” when manually refactoring is an error-prone manual refactoring strategy. Additionally, our study distilled a set of manual refactoring workflow patterns. Using these patterns, we designed a novel refactoring tool called BeneFactor. BeneFactor detects a developer’s manual refactoring, reminds her that automatic refactoring is available, and can complete her refactoring automatically. By alleviating the burden of recognizing manual refactoring, BeneFactor is designed to help solve the refactoring tool underuse problem. I.
15
Java quality assurance by detecting code smells
Eva van Emden, Leon Moonen · 2003 · 380 citations
Mauro Cherubini, Gina Venolia, Rob DeLine et al. · 2007 · 251 citations
Computing, Design, Visualization +8
Automated testing of refactoring engines
Brett Daniel, Danny Dig, Kely Garcia et al. · 2007 · 226 citations · Full text
Template-based reconstruction of complex refactorings
Kyle Prete, Napol Rachatasumrit, Nikita Sudan et al. · 2010 · 203 citations