KG2Lib: Knowledge-Graph-based Convolutional Network for Third-Party Library Recommendation

Jing-zhuan Zhao,Xuan Zhang,Chen Gao,Zhu-dong Li,Bao-lei Wang
DOI: https://doi.org/10.1007/s11227-022-04603-3
IF: 3.3
2022-01-01
The Journal of Supercomputing
Abstract:In the process of software system evolution, software users constantly put forward a large number of expectations. For these expectations, software developers usually use the existing third-party libraries and other software resources to accelerate their development processes. At present, tons of third-party libraries are available. Therefore, appropriate recommendation methods are very important for developers to find suitable libraries for their development projects. In this paper, we present KG2Lib, a recommendation method to assist software developers in selecting suitable software libraries for their current projects. KG2Lib exploits a knowledge-graph-based convolutional network to recommend software libraries by relying on a set of libraries which were already called by current projects. The interaction matrix, weight matrix and knowledge graph are the inputs of KG2Lib. What's more, KG2Lib recommends libraries to developers from project level and library level, which can better capture the fine-grained information to achieve better recommend performance. The performance of KG2Lib was evaluated on three datasets with four existing baseline models. The experimental results show that KG2Lib achieves better performance and helps software developers accurately select the appropriate third-party libraries.
What problem does this paper attempt to address?