BIKER: a tool for Bi-information source based API method recommendation

Liang Cai, Haoye Wang, Qiao Huang, Xin Xia, Zhenchang Xing, David Lo

Research output: Chapter in Book/Report/Conference proceedingConference PaperResearchpeer-review

Abstract

Application Programming Interfaces (APIs) in software libraries play an important role in modern software development. Although most libraries provide API documentation as a reference, developers may find it difficult to directly search for appropriate APIs in documentation using the natural language description of the programming tasks. We call such phenomenon as knowledge gap, which refers to the fact that API documentation mainly describes API functionality and structure but lacks other types of information like concepts and purposes. In this paper, we propose a Java API recommendation tool named BIKER (Bi-Information source based KnowledgE Recommendation) to bridge the knowledge gap. We implement BIKER as a search engine website. Given a query in natural language, instead of directly searching API documentation, BIKER first searches for similar API-related questions on Stack Overflow to extract candidate APIs. Then, BIKER ranks them by considering the querys similarity with both Stack Overflow posts and API documentation. Finally, to help developers better understand why each API is recommended and how to use them in practice, BIKER summarizes and presents supplementary information (e.g., API description, code examples in Stack Overflow posts) for each recommended API. Our quantitative evaluation and user study demonstrate that BIKER can help developers find appropriate APIs more efficiently and precisely.

Original languageEnglish
Title of host publicationProceedings of the 2019 27th ACM Joint Meeting - European Software Engineering Conference and Symposium on the Foundations of Software Engineering
EditorsMarlon Dumas, Dietmar Pfahl, Sven Apel, Alessandra Russo
Place of PublicationNew York NY USA
PublisherAssociation for Computing Machinery (ACM)
Pages1075-1079
Number of pages5
ISBN (Electronic)9781450355728
DOIs
Publication statusPublished - 2019
EventJoint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering 2019 - Tallinn, Estonia
Duration: 26 Aug 201930 Aug 2019
Conference number: 27th
https://esec-fse19.ut.ee/

Conference

ConferenceJoint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering 2019
Abbreviated titleESEC/FSE 2019
CountryEstonia
CityTallinn
Period26/08/1930/08/19
Internet address

Keywords

  • API Documentation
  • API Recommendation
  • Stack Overflow

Cite this

Cai, L., Wang, H., Huang, Q., Xia, X., Xing, Z., & Lo, D. (2019). BIKER: a tool for Bi-information source based API method recommendation. In M. Dumas, D. Pfahl, S. Apel, & A. Russo (Eds.), Proceedings of the 2019 27th ACM Joint Meeting - European Software Engineering Conference and Symposium on the Foundations of Software Engineering (pp. 1075-1079). Association for Computing Machinery (ACM). https://doi.org/10.1145/3338906.3341174