arrow
Return

RefactoringMiner 2.0

delete2022-03-01
delete103
delete
OA
AI
N
Nikolaos Tsantalis *
A
Ameya Ketkar
D
Danny Dig
DOI:10.1109/TSE.2020.3007722delete
deleteOriginal
deleteShare
deleteSave
View PDF
Abstract

Abstract

En 中文
Refactoring detection is crucial for a variety of applications and tasks: (i) empirical studies about code evolution, (ii) tools for library API migration, (iii) code reviews and change comprehension. However, recent research has questioned the accuracy of the state-of-the-art refactoring mining tools, which poses threats to the reliability of the detected refactorings. Moreover, the majority of refactoring mining tools depend on code similarity thresholds. Finding universal threshold values that can work well for all projects, regardless of their architectural style, application domain, and development practices is extremely challenging. Therefore, in a previous work [N. Tsantalis, M. Mansouri, L. M. Eshkevari, D. Mazinanian, and D. Dig, Accurate and efficient refactoring detection in commit history, in 40th International Conference on Software Engineering, 2018, pp. 483-494], we introduced the first refactoring mining tool that does not require any code similarity thresholds to operate. In this work, we extend our tool to support low-level refactorings that take place within the body of methods. To evaluate our tool, we created one of the most accurate, complete, and representative refactoring oracles to date, including 7,226 true instances for 40 different refactoring types detected by one (minimum) up to six (maximum) different tools, and validated by one up to four refactoring experts. Our evaluation showed that our approach achieves the highest average precision (99.6 percent) and recall (94 percent) among all competitive tools, and on median is 2.6 times faster than the second faster competitive tool.
Keywords:
Tools
Open source software
Software systems
Task analysis
Libraries
Syntactics
Maintenance engineering
Refactoring mining
refactoring oracle
precision
recall
execution time
git
commit
AI Summary

AI Summary

Key information extracted from the uploaded paper, including a brief overview, abstract, background, key highlights, visual analysis, and future outlook.

Journal

IEEE Transactions on Software Engineering cover
IEEE Transactions on Software Engineering
IF:
5.6
Papers:
2.8K
Citations:
1.1W

Organization

University of Colorado System cover
University of Colorado System
Scholars:
6.3W
Papers: 5.5W
Citations: 1.8K
C
concordia university - canada
Scholars:
8.0K
Papers: 8.9K
Citations: 4
O
Oregon State University
Scholars:
1.7W
Papers: 1.5W
Citations: 2.4W
researcher View more organizations