APIBook - An effective approach for finding APIs

Haibo Yu, Wenhao Song, Tsunenori Mine

Research output: Chapter in Book/Report/Conference proceedingConference contribution

3 Citations (Scopus)

Abstract

Software libraries have become more and more complex in recent years. Developers usually have to rely on search engines to find API documents and then select suitable APIs to do relevant development when working on unfamiliar functions. However, the traditional search engines do not focus on searching APIs that make this process inconvenient and time consuming. Although a lot of efforts have been made on API understanding and code search in industry and academia, work and tools that can recommend API methods to users based on their description of API's functionality are still very limited. In this paper, we propose a search-based recommendation algorithm on API methods. We call the algorithm APIBook and implement an API method recommendation tool based on the proposed algorithm. The algorithm can recommend relevant API methods to users based on user input written in natural language. This algorithm combines semantic relevance, type relevance and the extent of degree that API method is used to sort these API methods and rank those that are highly relevant and widely used in the top positions. Examples of codes in real projects are also provided to help users to learn and to understand the API method recommended. The API recommendation tool selects the Java Standard Library as well as 100 popular open source libraries as API recommending material. Users can input the API description via the Web interface, and view the search results with sample codes on screen. The evaluation experiment is performed and the result shows that APIBook is more effective for finding APIs than traditional search models and it takes on average 0.7 seconds for finding relevant API methods which we think to be reasonable for satisfying daily query requirements.

Original languageEnglish
Title of host publication8th Asia-Pacific Symposium on Internetware, Internetware 2016 - Proceedings
PublisherAssociation for Computing Machinery
Pages45-53
Number of pages9
ISBN (Electronic)9781450348294
DOIs
Publication statusPublished - Sep 18 2016
Event8th Asia-Pacific Symposium on Internetware, Internetware 2016 - Beijing, China
Duration: Sep 18 2016 → …

Publication series

NameACM International Conference Proceeding Series
Volume18-September-2016

Other

Other8th Asia-Pacific Symposium on Internetware, Internetware 2016
CountryChina
CityBeijing
Period9/18/16 → …

Fingerprint

Application programming interfaces (API)
Search engines
Interfaces (computer)

All Science Journal Classification (ASJC) codes

  • Human-Computer Interaction
  • Computer Networks and Communications
  • Computer Vision and Pattern Recognition
  • Software

Cite this

Yu, H., Song, W., & Mine, T. (2016). APIBook - An effective approach for finding APIs. In 8th Asia-Pacific Symposium on Internetware, Internetware 2016 - Proceedings (pp. 45-53). [2993727] (ACM International Conference Proceeding Series; Vol. 18-September-2016). Association for Computing Machinery. https://doi.org/10.1145/2993717.2993727

APIBook - An effective approach for finding APIs. / Yu, Haibo; Song, Wenhao; Mine, Tsunenori.

8th Asia-Pacific Symposium on Internetware, Internetware 2016 - Proceedings. Association for Computing Machinery, 2016. p. 45-53 2993727 (ACM International Conference Proceeding Series; Vol. 18-September-2016).

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Yu, H, Song, W & Mine, T 2016, APIBook - An effective approach for finding APIs. in 8th Asia-Pacific Symposium on Internetware, Internetware 2016 - Proceedings., 2993727, ACM International Conference Proceeding Series, vol. 18-September-2016, Association for Computing Machinery, pp. 45-53, 8th Asia-Pacific Symposium on Internetware, Internetware 2016, Beijing, China, 9/18/16. https://doi.org/10.1145/2993717.2993727
Yu H, Song W, Mine T. APIBook - An effective approach for finding APIs. In 8th Asia-Pacific Symposium on Internetware, Internetware 2016 - Proceedings. Association for Computing Machinery. 2016. p. 45-53. 2993727. (ACM International Conference Proceeding Series). https://doi.org/10.1145/2993717.2993727
Yu, Haibo ; Song, Wenhao ; Mine, Tsunenori. / APIBook - An effective approach for finding APIs. 8th Asia-Pacific Symposium on Internetware, Internetware 2016 - Proceedings. Association for Computing Machinery, 2016. pp. 45-53 (ACM International Conference Proceeding Series).
@inproceedings{d6ca02619fda4225b74799f0615c0291,
title = "APIBook - An effective approach for finding APIs",
abstract = "Software libraries have become more and more complex in recent years. Developers usually have to rely on search engines to find API documents and then select suitable APIs to do relevant development when working on unfamiliar functions. However, the traditional search engines do not focus on searching APIs that make this process inconvenient and time consuming. Although a lot of efforts have been made on API understanding and code search in industry and academia, work and tools that can recommend API methods to users based on their description of API's functionality are still very limited. In this paper, we propose a search-based recommendation algorithm on API methods. We call the algorithm APIBook and implement an API method recommendation tool based on the proposed algorithm. The algorithm can recommend relevant API methods to users based on user input written in natural language. This algorithm combines semantic relevance, type relevance and the extent of degree that API method is used to sort these API methods and rank those that are highly relevant and widely used in the top positions. Examples of codes in real projects are also provided to help users to learn and to understand the API method recommended. The API recommendation tool selects the Java Standard Library as well as 100 popular open source libraries as API recommending material. Users can input the API description via the Web interface, and view the search results with sample codes on screen. The evaluation experiment is performed and the result shows that APIBook is more effective for finding APIs than traditional search models and it takes on average 0.7 seconds for finding relevant API methods which we think to be reasonable for satisfying daily query requirements.",
author = "Haibo Yu and Wenhao Song and Tsunenori Mine",
year = "2016",
month = "9",
day = "18",
doi = "10.1145/2993717.2993727",
language = "English",
series = "ACM International Conference Proceeding Series",
publisher = "Association for Computing Machinery",
pages = "45--53",
booktitle = "8th Asia-Pacific Symposium on Internetware, Internetware 2016 - Proceedings",

}

TY - GEN

T1 - APIBook - An effective approach for finding APIs

AU - Yu, Haibo

AU - Song, Wenhao

AU - Mine, Tsunenori

PY - 2016/9/18

Y1 - 2016/9/18

N2 - Software libraries have become more and more complex in recent years. Developers usually have to rely on search engines to find API documents and then select suitable APIs to do relevant development when working on unfamiliar functions. However, the traditional search engines do not focus on searching APIs that make this process inconvenient and time consuming. Although a lot of efforts have been made on API understanding and code search in industry and academia, work and tools that can recommend API methods to users based on their description of API's functionality are still very limited. In this paper, we propose a search-based recommendation algorithm on API methods. We call the algorithm APIBook and implement an API method recommendation tool based on the proposed algorithm. The algorithm can recommend relevant API methods to users based on user input written in natural language. This algorithm combines semantic relevance, type relevance and the extent of degree that API method is used to sort these API methods and rank those that are highly relevant and widely used in the top positions. Examples of codes in real projects are also provided to help users to learn and to understand the API method recommended. The API recommendation tool selects the Java Standard Library as well as 100 popular open source libraries as API recommending material. Users can input the API description via the Web interface, and view the search results with sample codes on screen. The evaluation experiment is performed and the result shows that APIBook is more effective for finding APIs than traditional search models and it takes on average 0.7 seconds for finding relevant API methods which we think to be reasonable for satisfying daily query requirements.

AB - Software libraries have become more and more complex in recent years. Developers usually have to rely on search engines to find API documents and then select suitable APIs to do relevant development when working on unfamiliar functions. However, the traditional search engines do not focus on searching APIs that make this process inconvenient and time consuming. Although a lot of efforts have been made on API understanding and code search in industry and academia, work and tools that can recommend API methods to users based on their description of API's functionality are still very limited. In this paper, we propose a search-based recommendation algorithm on API methods. We call the algorithm APIBook and implement an API method recommendation tool based on the proposed algorithm. The algorithm can recommend relevant API methods to users based on user input written in natural language. This algorithm combines semantic relevance, type relevance and the extent of degree that API method is used to sort these API methods and rank those that are highly relevant and widely used in the top positions. Examples of codes in real projects are also provided to help users to learn and to understand the API method recommended. The API recommendation tool selects the Java Standard Library as well as 100 popular open source libraries as API recommending material. Users can input the API description via the Web interface, and view the search results with sample codes on screen. The evaluation experiment is performed and the result shows that APIBook is more effective for finding APIs than traditional search models and it takes on average 0.7 seconds for finding relevant API methods which we think to be reasonable for satisfying daily query requirements.

UR - http://www.scopus.com/inward/record.url?scp=84995513582&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=84995513582&partnerID=8YFLogxK

U2 - 10.1145/2993717.2993727

DO - 10.1145/2993717.2993727

M3 - Conference contribution

AN - SCOPUS:84995513582

T3 - ACM International Conference Proceeding Series

SP - 45

EP - 53

BT - 8th Asia-Pacific Symposium on Internetware, Internetware 2016 - Proceedings

PB - Association for Computing Machinery

ER -