代码审查活动预测的实证研究及其实际影响
软件工程
2024-05-14 v2
摘要
在代码审查过程中,审阅者需理解和评估代码变更以验证其质量并防止引入故障到代码库中。这是一个枯燥的过程,所需的工作量高度取决于提交的代码、作者及审阅者的经验,导致审查反馈的中位数等待时间为15-64小时。通过对29位专家进行的初始用户研究发现,重新排序审查环境中提交的变更文件列表,有望提高审查质量,因为评论数量增加了23%,参与者的文件级热点精度和召回率分别提升至53%(+13%)和28%(+8%),与字母顺序排序相比。因此,本文旨在帮助代码审阅者通过预测提交的补丁中哪些文件需要(1)评论,(2)修订,或(3)为热点(即被评论或修订的文件)。为预测这些任务,我们评估了两种不同类型的文本嵌入(即词袋和大型语言模型编码)以及审查过程特征(即基于代码大小和历史记录的特征)。我们对三个开源和两个工业数据集的实证研究表明,结合代码嵌入和审查过程特征的成果优于最新方法。对于所有任务,F1分数(中位数40%-62%)显著优于最新方法(提升1-9个百分点)。
引用
@article{arxiv.2404.10703,
title = {An Empirical Study on Code Review Activity Prediction and Its Impact in Practice},
author = {Doriane Olewicki and Sarra Habchi and Bram Adams},
journal= {arXiv preprint arXiv:2404.10703},
year = {2024}
}
备注
20 pages + 3 pages ref