paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Intelligent Code Review Assignment for Large Scale Open Source Software Stacks

面向大规模开源软件栈的智能代码评审分配
ASE Proceedings of the 37th IEEE/ACM International Conference on Automated Software Engineering2022匹配度 2/10 · 该论文研究代码评审分配推荐,属于软件工程/开发者工具中的机器学习应用,不涉及静态分析、LLM/Agent 与程序语言或形式化验证的交叉,也不涉及浮点程序分析或贝叶斯程序分析。与用户画像的核心方向基本无关。引用 4 inbox
Ishan Aryendu, Ying Wang, Farah Elkourdi, Eman Abdullah Alomar
crossref: 2026-09-12

AI 速览

一句话:提出基于质量属性与评审者技能匹配的自动代码评审分配方法,并构建自学习平台。

在大规模开源软件栈中,为代码变更找到合适评审者十分困难,尤其在跨职能协作场景下;缺乏相关知识的评审会消耗大量资源并引入技术错误。论文面向大规模软件栈的自动评审者分配,构建自学习、自纠正平台,将提交按质量属性与评审者技能进行智能匹配。作者从OpenStack仓库历史数据中抽取质量属性,使用人工标注和多分类器训练两个模型以自动分类提交;再依据评审者历史数据及其质量属性特征定位评审者,最后通过提交与候选评审者之间的距离选择推荐评审者。实验表明,在相对较小的训练集上,两个模型分别取得77%和85.31%的F-1分数。

问题
大规模开源软件栈中,如何为代码提交自动分配合适评审者,避免因评审者缺乏领域或非功能知识导致资源浪费和技术错误。
方法
从提交消息中分类和抽象质量属性,基于OpenStack历史数据与多分类器训练两个提交分类模型;再根据评审者历史数据和质量属性特征定位评审者,并计算提交与候选评审者之间的距离进行推荐。
评估
使用OpenStack仓库历史数据与人工标注训练和评估;在较小训练集下,两个模型的F-1分数分别为77%和85.31%。
原文摘要(Abstract)

In the process of developing software, code review is crucial. By identifying problems before they arise in production, it enhances the quality of the code. Finding the best reviewer for a code change, however, is extremely challenging especially in large scale, especially open source software stacks with cross functioning designs and collaborations among multiple developers and teams. Additionally, a review by someone who lacks knowledge and understanding of the code can result in high resource consumption and technical errors. The reviewers who have the specialty in both functioning (domain knowledge) and non-functioning areas of a commit are considered as the most qualified reviewer to look over any changes to the code. Quality attributes serve as the connection among the user requirements, delivered function description, software architecture and implementation through put the entire software stack cycle. In this study, we target on auto reviewer assignment in large scale software stacks and aim to build a self-learning, and self-correct platform for intelligently matching between a commit based on its quality attributes and the skills sets of reviewers. To achieve this, quality attributes are classified and abstracted from the commit messages and based on which, the commits are assigned to the reviewers with the capability in reviewing the target commits. We first designed machine learning schemes for abstracting quality attributes based on historical data from the OpenStack repository. Two models are built and trained for automating the classification of the commits based on their quality attributes using the manual labeling of commits and multi-class classifiers. We then positioned the reviewers based on their historical data and the quality attributes characteristics. Finally we selected the recommended reviewer based on the distance between a commit and candidate reviewers. In this paper, we demonstrate how the models can choose the best quality attributes and assign the code review to the most qualified reviewers. With a comparatively small training dataset, the models are able to achieve F-1 scores of 77% and 85.31%, respectively.

链接与引用

DOI 原文 · PDF(开放获取) ·

BibTeX
@inproceedings{paperbot7314,
  title = {Intelligent Code Review Assignment for Large Scale Open Source Software Stacks},
  author = {Ishan Aryendu and Ying Wang and Farah Elkourdi and Eman Abdullah Alomar},
  booktitle = {ASE},
  year = {2022},
  doi = {10.1145/3551349.3561147}
}