Publication | Open Access
Recommending automated extract method refactorings
71
Citations
24
References
2014
Year
Unknown Venue
Software MaintenanceEngineeringSoftware EngineeringSource Code AnalysisSoftware AnalysisProgram EvaluationNatural Language ProcessingData ScienceData MiningNew MethodsExtract Method RefactoringsSoftware Re-engineeringKnowledge DiscoveryExtract MethodComputer ScienceStatic Program AnalysisSoftware DesignCode RefactoringStructural DependenciesRefinement TechniqueProgram AnalysisSoftware TestingProgram Comprehension
Extract Method is a key refactoring for improving program comprehension. However, recent empirical research shows that refactoring tools designed to automate Extract Methods are often underused. To tackle this issue, we propose a novel approach to identify and rank Extract Method refactoring opportunities that are directly automated by IDE-based refactoring tools. Our approach aims to recommend new methods that hide structural dependencies that are rarely used by the remaining statements in the original method. We conducted an exploratory study to experiment and define the best strategies to compute the dependencies and the similarity measures used by the proposed approach. We also evaluated our approach in a sample of 81 extract method opportunities generated for JUnit and JHotDraw, achieving a precision of 48% (JUnit) and 38% (JHotDraw).
| Year | Citations | |
|---|---|---|
Page 1
Page 1