APIMatchmaker: Matching the Right APIs for Supporting the Development of Android Apps

Yanjie Zhao,Li,Haoyu Wang,Qiang He,John Grundy
DOI: https://doi.org/10.1109/tse.2022.3146831
IF: 7.4
2023-01-01
IEEE Transactions on Software Engineering
Abstract:Android developers are often faced with the need to learn how to use different APIs suitable for their projects. Automated API recommendation approaches have been invented to help fill this gap, and these have been demonstrated to be useful to some extent. Unfortunately, most state-of-the-art works are not proposed for Android developers, and the ones dedicated to Android app development often suffer from high redundancy and poor run-time performance, or do not target the problem of recommending API usage patterns. To address this gap we propose to the community a new tool, namely APIMatchmaker , to recommend API usages by learning directly from similar real-world Android apps. Unlike existing recommendation approaches, which leverage a single context to find similar projects, we innovatively introduce a multi-dimensional, context-aware, collaborative filtering approach to better achieve the purpose. Specifically, in addition to code similarity, we also take app descriptions (or topics) into consideration to ensure that similar apps also provide similar functions. We evaluate APIMatchmaker on a large number of real-world Android apps and observe that APIMatchmaker yields a high success rate in recommending APIs for Android apps under development, and it is also able to outperform the state-of-the-art.
What problem does this paper attempt to address?