arXivDaily arXiv每日学术速递 周一至周五更新
arXiv周末暂无论文更新,休息一下吧,周末愉快~~
arXiv 2005.10176cs.SEcs.LG
收藏

开源软件开发者专业知识的表示

Representation of Developer Expertise in Open Source Software

The University of Tennessee(田纳西大学)

Tapajit Dey, Andrey Karnauch, Audris Mockus

摘要:

背景:开发人员专业知识的准确表示一直是一个重要的研究问题。虽然一些研究提出了在单个项目中代表专业知识的新方法,但这些方法很难在生态系统层面上应用。然而,随着软件开发的重点从单一转向模块,在整个开放源码软件开发的背景下,例如,当一个项目试图寻找新的维护人员和具有相关技能的开发人员时,就有必要采用一种方法来代表开发人员的专门知识。目的:我们的目标是通过提出和构建技能空间来解决这个知识缺口,每个API,开发人员和项目都代表了这个空间,并假设这个空间的拓扑结构应该如何反映开发人员的知识(和项目需要)。方法:我们使用World of Code基础设施来提取开源开发人员更改的文件中的完整API集,并基于这些数据,使用Doc 2 Vec嵌入来表示API,开发人员和项目的矢量。然后,我们通过预测开发人员使用/加入的新API/项目以及他们的拉取请求是否被接受来评估这些嵌入是否反映了技能空间的假设拓扑。我们还检查开发人员在技能空间中的表示如何与他们自我报告的API专业知识保持一致。测试结果:我们的研究结果表明,在技能空间中提出的嵌入似乎满足假设的拓扑结构,我们希望这样的表示可以帮助构建信号,提高整个开源生态系统的信任(和效率),并有助于调查与开发人员熟练程度和学习相关的其他现象。

英文摘要:

Background: Accurate representation of developer expertise has always been an important research problem. While a number of studies proposed novel methods of representing expertise within individual projects, these methods are difficult to apply at an ecosystem level. However, with the focus of software development shifting from monolithic to modular, a method of representing developers' expertise in the context of the entire OSS development becomes necessary when, for example, a project tries to find new maintainers and look for developers with relevant skills. Aim: We aim to address this knowledge gap by proposing and constructing the Skill Space where each API, developer, and project is represented and postulate how the topology of this space should reflect what developers know (and projects need). Method: we use the World of Code infrastructure to extract the complete set of APIs in the files changed by open source developers and, based on that data, employ Doc2Vec embeddings for vector representations of APIs, developers, and projects. We then evaluate if these embeddings reflect the postulated topology of the Skill Space by predicting what new APIs/projects developers use/join, and whether or not their pull requests get accepted. We also check how the developers' representations in the Skill Space align with their self-reported API expertise. Result: Our results suggest that the proposed embeddings in the Skill Space appear to satisfy the postulated topology and we hope that such representations may aid in the construction of signals that increase trust (and efficiency) of open source ecosystems at large and may aid investigations of other phenomena related to developer proficiency and learning.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑