TY - JOUR
T1 - APIMatchmaker
T2 - Matching the Right APIs for Supporting the Development of Android Apps
AU - Zhao, Yanjie
AU - Li, Li
AU - Wang, Haoyu
AU - He, Qiang
AU - Grundy, John
N1 - Publisher Copyright:
© 1976-2012 IEEE.
PY - 2023/1/1
Y1 - 2023/1/1
N2 - 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.
AB - 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.
KW - API
KW - Android
KW - apimatchmaker
KW - collaborative filtering
KW - recommendation
UR - https://www.scopus.com/pages/publications/85124095457
U2 - 10.1109/TSE.2022.3146831
DO - 10.1109/TSE.2022.3146831
M3 - 文章
AN - SCOPUS:85124095457
SN - 0098-5589
VL - 49
SP - 113
EP - 130
JO - IEEE Transactions on Software Engineering
JF - IEEE Transactions on Software Engineering
IS - 1
ER -