一句话:首次实证研究构建系统规格说明的代码审查,发现其讨论更少、更易指出缺陷,并揭示社会与技术阻碍因素。
构建系统将源代码集成为可执行文件,其维护困难且宽松维护会导致构建失败或意外行为。代码审查广泛用于提升软件质量,但构建规格说明的审查实践尚不清楚。本文首次实证研究:对 Qt 与 Eclipse 社区 502,931 个变更集定量分析发现,构建规格变更在审查中被讨论的频率至少比生产/测试代码低两倍;对 500 个变更集定性分析表明,其评论更可能指出缺陷,且可演化性与依赖问题最常见。对九名开发者的访谈揭示,缺乏理解、兴趣与专用工具等社会技术因素阻碍了严格审查。
Build systems automate the integration of source code into executables. Maintaining build systems is known to be challenging. Lax build maintenance can lead to costly build breakages or unexpected software behaviour. Code review is a broadly adopted practice to improve software quality. Yet, little is known about how code review is applied to build specifications. In this paper, we present the first empirical study of how code review is practiced in the context of build specifications. Through quantitative analysis of 502,931 change sets from the Qt and Eclipse communities, we observe that changes to build specifications are at least two times less frequently discussed during code review when compared to production and test code changes. A qualitative analysis of 500 change sets reveals that (i) comments on changes to build specifications are more likely to point out defects than rates reported in the literature for production and test code, and (ii) evolvability and dependency-related issues are the most frequently raised patterns of issues. Follow-up interviews with nine developers with 1–40 years of experience point out social and technical factors that hinder rigorous review of build specifications, such as a prevailing lack of understanding of and interest in build systems among developers, and the lack of dedicated tooling to support the code review of build specifications.