Publication Type

Conference Proceeding Article

Publication Date

11-2013

Abstract

Developers often receive many feature requests. To implement these features, developers can leverage various methods from third party libraries. In this work, we propose an automated approach that takes as input a textual description of a feature request. It then recommends methods in library APIs that developers can use to implement the feature. Our recommendation approach learns from records of other changes made to software systems, and compares the textual description of the requested feature with the textual descriptions of various API methods. We have evaluated our approach on more than 500 feature requests of Axis2/Java, CXF, Hadoop Common, HBase, and Struts 2. Our experiments show that our approach is able to recommend the right methods from 10 libraries with an average recall-rate@5 of 0.690 and recall-rate@10 of 0.779 respectively. We also show that the state-of-the-art approach by Chan et al., that recommends API methods based on precise text phrases, is unable to handle feature requests.

Keywords

Java, application program interfaces, software libraries

Discipline

Software Engineering

Research Areas

Software and Cyber-Physical Systems

Publication

2013 28th IEEE/ACM International Conference on Automated Software Engineering (ASE) Proceedings: 11-15 November 2013, Silicon Valley, CA

First Page

290

Last Page

300

ISBN

9781479902156

Identifier

10.1109/ASE.2013.6693088

Publisher

IEEE

City or Country

Piscataway, NJ

Creative Commons License

Creative Commons Attribution-Noncommercial-No Derivative Works 4.0 License
This work is licensed under a Creative Commons Attribution-Noncommercial-No Derivative Works 4.0 License.

Additional URL

http://doi.org/10.1109/ASE.2013.6693088

Share

COinS