The impact of code review coverage and code review participation on software quality: a case study of the qt, VTK, and ITK projects

Shane McIntosh, Yasutaka Kamei, Bram Adams, A. Hassan
{"title":"The impact of code review coverage and code review participation on software quality: a case study of the qt, VTK, and ITK projects","authors":"Shane McIntosh, Yasutaka Kamei, Bram Adams, A. Hassan","doi":"10.1145/2597073.2597076","DOIUrl":null,"url":null,"abstract":"Software code review, i.e., the practice of having third-party team members critique changes to a software system, is a well-established best practice in both open source and proprietary software domains. Prior work has shown that the formal code inspections of the past tend to improve the quality of software delivered by students and small teams. However, the formal code inspection process mandates strict review criteria (e.g., in-person meetings and reviewer checklists) to ensure a base level of review quality, while the modern, lightweight code reviewing process does not. Although recent work explores the modern code review process qualitatively, little research quantitatively explores the relationship between properties of the modern code review process and software quality. Hence, in this paper, we study the relationship between software quality and: (1) code review coverage, i.e., the proportion of changes that have been code reviewed, and (2) code review participation, i.e., the degree of reviewer involvement in the code review process. Through a case study of the Qt, VTK, and ITK projects, we find that both code review coverage and participation share a significant link with software quality. Low code review coverage and participation are estimated to produce components with up to two and five additional post-release defects respectively. Our results empirically confirm the intuition that poorly reviewed code has a negative impact on software quality in large systems using modern reviewing tools.","PeriodicalId":6621,"journal":{"name":"2016 IEEE/ACM 13th Working Conference on Mining Software Repositories (MSR)","volume":"26 1","pages":"192-201"},"PeriodicalIF":0.0000,"publicationDate":"2014-05-31","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"267","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2016 IEEE/ACM 13th Working Conference on Mining Software Repositories (MSR)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2597073.2597076","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 267

Abstract

Software code review, i.e., the practice of having third-party team members critique changes to a software system, is a well-established best practice in both open source and proprietary software domains. Prior work has shown that the formal code inspections of the past tend to improve the quality of software delivered by students and small teams. However, the formal code inspection process mandates strict review criteria (e.g., in-person meetings and reviewer checklists) to ensure a base level of review quality, while the modern, lightweight code reviewing process does not. Although recent work explores the modern code review process qualitatively, little research quantitatively explores the relationship between properties of the modern code review process and software quality. Hence, in this paper, we study the relationship between software quality and: (1) code review coverage, i.e., the proportion of changes that have been code reviewed, and (2) code review participation, i.e., the degree of reviewer involvement in the code review process. Through a case study of the Qt, VTK, and ITK projects, we find that both code review coverage and participation share a significant link with software quality. Low code review coverage and participation are estimated to produce components with up to two and five additional post-release defects respectively. Our results empirically confirm the intuition that poorly reviewed code has a negative impact on software quality in large systems using modern reviewing tools.
代码审查覆盖率和代码审查参与对软件质量的影响:qt、VTK和ITK项目的一个案例研究
软件代码审查,也就是让第三方团队成员对软件系统的更改进行评论的做法,是在开放源码和专有软件领域中公认的最佳实践。以前的工作已经表明,过去的正式代码检查倾向于提高学生和小团队交付的软件质量。然而,正式的代码审查过程要求严格的审查标准(例如,面对面的会议和审查人员检查表)来确保基本的审查质量水平,而现代的轻量级代码审查过程则没有这样做。尽管最近的工作定性地探讨了现代代码审查过程,但很少有研究定量地探讨了现代代码审查过程的属性与软件质量之间的关系。因此,在本文中,我们研究了软件质量与以下因素之间的关系:(1)代码审查覆盖率,即已被代码审查的变更比例;(2)代码审查参与度,即审查者在代码审查过程中的参与程度。通过对Qt、VTK和ITK项目的案例研究,我们发现代码审查覆盖率和参与都与软件质量有着重要的联系。较低的代码审查覆盖率和参与率估计会分别产生两个和五个额外的发布后缺陷的组件。我们的结果从经验上证实了这样一种直觉,即在使用现代评审工具的大型系统中,评审不佳的代码对软件质量有负面影响。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信