ACM Home Page
Please provide us with feedback. Feedback
Automated detection of api refactorings in libraries
Full text PdfPdf (112 KB)
Source
Automated Software Engineering archive
Proceedings of the twenty-second IEEE/ACM international conference on Automated software engineering table of contents
Atlanta, Georgia, USA
POSTER SESSION: Posters table of contents
Pages 377-380  
Year of Publication: 2007
ISBN:978-1-59593-882-4
Authors
Kunal Taneja  North Carolina State University, Raleigh, NC
Danny Dig  University of Illinois, Urbana-Champaign, IL
Tao Xie  North Carolina State University, Raleigh, NC
Sponsors
ACM: Association for Computing Machinery
SIGACT: ACM Special Interest Group on Algorithms and Computation Theory
SIGSOFT: ACM Special Interest Group on Software Engineering
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 10,   Downloads (12 Months): 64,   Citation Count: 2
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1321631.1321688
What is a DOI?

ABSTRACT

Software developers often do not build software from scratch but reuse software libraries. In theory, the APIs of a library should be stable, but in practice they do change and thus require changes in software that reuses the library. Our previous study of five reusable components shows that more than 80% of these API changes are caused by refactorings. If these refactorings could be automatically detected, they could be used to automatically upgrade applications.

In this paper, we present a technique and its supporting tool, RefacLib, to automatically detect refactorings in libraries. RefacLib uses syntactic analysis in the first phase to quickly detect refactoring candidates across two versions of a library. In the second phase, RefacLib uses various heuristics to refine the results. We used RefacLib to detect refactorings in five open source libraries and frameworks. The experiments show that RefacLib can process realistic code bases and detects refactorings with practical accuracy


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
 
2
3
 
4
D. Dig, C. Comertoglu, D. Marinov, and R. Johnson. Automatic detection of refactorings in evolving components. In Proc. ECOOP'06, pages 404--428.
 
5
 
6
 
7
Code Conventions for the Java Programming Language. http://java.sun.com/docs/codeconv/html/CodeConvTOC.doc.html, Apr. 1999.
 
8
JavaWordNet Library. http://sourceforge.net/projects/jwordnet.
 
9
 
10
 
11
 
12
 
13


Collaborative Colleagues:
Kunal Taneja: colleagues
Danny Dig: colleagues
Tao Xie: colleagues