作者
Danny Dig, Can Comertoglu, Darko Marinov, Ralph Johnson
发表日期
2006
研讨会论文
ECOOP 2006–Object-Oriented Programming: 20th European Conference, Nantes, France, July 3-7, 2006. Proceedings 20
页码范围
404-428
出版商
Springer Berlin Heidelberg
简介
One of the costs of reusing software components is updating applications to use the new version of the components. Updating an application can be error-prone, tedious, and disruptive of the development process. Our previous study showed that more than 80% of the disruptive changes in five different components were caused by refactorings. If the refactorings that happened between two versions of a component could be automatically detected, a refactoring tool could replay them on applications. We present an algorithm that detects refactorings performed during component evolution. Our algorithm uses a combination of a fast syntactic analysis to detect refactoring candidates and a more expensive semantic analysis to refine the results. The experiments on components ranging from 17 KLOC to 352 KLOC show that our algorithm detects refactorings in real-world components with accuracy over 85%.
引用总数
2006200720082009201020112012201320142015201620172018201920202021202220232024817221318223027243210171911222119141
学术搜索中的文章
D Dig, C Comertoglu, D Marinov, R Johnson - ECOOP 2006–Object-Oriented Programming: 20th …, 2006