kirancodes.me
To Proof Maintenance & Beyond!

Embedding app-library graph for neural third party library recommendation

Bo Li, Qiang He, Feifei Chen, Xin Xia, Li Li, John C. Grundy, Yun Yang

Abstract

The mobile app marketplace has fierce competition for mobile app developers, who need to develop and update their apps as soon as possible to gain first mover advantage. Third-party libraries (TPLs) offer developers an easier way to enhance their apps with new features. However, how to find suitable candidates among the high number and fast-changing TPLs is a challenging problem. TPL recommendation is a promising solution, but unfortunately existing approaches suffer from low accuracy in recommendation results. To tackle this challenge, we propose GRec, a graph neural network (GNN) based approach, for recommending potentially useful TPLs for app development. GRec models mobile apps, TPLs, and their interactions into an app-library graph. It then distills app-library interaction information from the app-library graph to make more accurate TPL recommendations. To evaluate GRec’s performance, we conduct comprehensive experiments based on a large-scale real-world Android app dataset containing 31,432 Android apps, 752 distinct TPLs, and 537,011 app-library usage records. Our experimental results illustrate that GRec can significantly increase the prediction accuracy and diversify the prediction results compared with state-of-the-art methods. A user study performed with app developers also confirms GRec's usefulness for real-world mobile app development.

BibTeX
@inproceedings{Li-al:FSE21,
  author    = {Bo Li and
               Qiang He and
               Feifei Chen and
               Xin Xia and
               Li Li and
               John C. Grundy and
               Yun Yang},
  title     = {Embedding app-library graph for neural third party library recommendation},
  booktitle = {{ESEC/SIGSOFT} {FSE}},
  pages     = {466--477},
  publisher = {{ACM}},
  year      = {2021},
}

Related papers