With the increase of complexity of modern software, social collaborative coding and reuse of open source software packages become more and more popular, which thus greatly enhances the development efficiency and software quality. However, the explosive growth of open source software packages exposes developers to the challenge of information overload. While this can be addressed by conventional recommender systems, they usually do not consider particular constraints of social coding such as social influence among developers and dependency relations among software packages. In this paper, we aim to model the dynamic interests of developers with both social influence and dependency constraints, and propose the Session-based Social and Dependency-aware software Recommendation (SSDRec) model. This model integrates recurrent neural network (RNN) and graph attention network (GAT) into a unified framework. A RNN is employed to model the short-term dynamic interests of developers in each session and two GATs are utilized to capture social influence from friends and dependency constraints from dependent software packages, respectively. Extensive experiments are conducted on real-world datasets and the results demonstrate that our model significantly outperforms the competitive baselines.
翻译:随着现代软件、社会协作编码和重新使用开放源码软件包的复杂程度的提高,开放源码软件包的爆炸性增长使开发者面临信息超载的挑战。虽然这可以通过常规建议系统加以解决,但通常不考虑社会编码的特殊限制,如开发者之间的社会影响和软件包之间的依赖关系。在本文件中,我们的目标是建模具有社会影响和依赖性制约的开发者的动态利益,并提出基于会议的社会和依赖性软件建议(SSDRec)模式。这一模式将经常性神经网络(RNN)和图形关注网络(GAT)纳入一个统一框架。一个网络被用于模拟开发者在每届会议上的短期动态利益,而两个GAT用于捕捉来自依赖性软件包的朋友和依赖性制约的社会影响。在现实世界数据集上进行了广泛的实验,结果显示,我们的模型大大超出了竞争基线。