API recommendation for the development of Android App features based on the knowledge mined from App stores

Shanquan Gao,Lei Liu,Yuzhou Liu,Huaxiao Liu,Yihui Wang
DOI: https://doi.org/10.1016/j.scico.2020.102556
IF: 1.039
2021-01-01
Science of Computer Programming
Abstract:To improve the efficiency, developers tend to use APIs to avoid reinventing wheels in the development of Apps. However, there are thousands of APIs for various purposes, so it is difficult for developers to identify suitable APIs according to the functionalities to be realized. App stores manage millions of products, which embody the experience and wisdom of developers, and they provide valuable data resource for solving this problem. By summarizing the API usage for the same or similar functionalities in Apps, reusable knowledge can be mined for the API recommendation. In this paper, we utilize the data resource in App stores and provide an API recommendation method for the development of Android Apps. Firstly, by using UI elements as the bridge, we establish mapping relationships between functionalities and APIs. Secondly, we build a framework to describe functionalities of Apps in the same category, and utilize relationships between functionalities and APIs to construct the API knowledge for each node in the framework. Thirdly, we identify nodes according to queried features and show the API knowledge to developers by giving recommendation lists. We conducted experiments based on Google Play, and the result shows that our method has a good recommendation performance. (C) 2020 Elsevier B.V. All rights reserved.
What problem does this paper attempt to address?