通信与代码依赖对软件代码质量的影响:Herbsleb 假设的实证分析
软件工程
2022-03-22 v3
摘要
先前文献表明,在许多项目中 80% 或更多的贡献来自开发团队中约 20% 的一小群人。大多数先前研究不赞成依赖这样一小群“英雄”,认为其会导致开发与通信中的瓶颈。尽管如此,此类项目在开源项目中非常普遍。那么“英雄”对代码质量的确切影响是什么?Herbsleb 认为,如果代码紧密关联但其开发者之间并无关联,则该代码将存在缺陷。为检验 Herbsleb 假设,我们提出并应用了两个度量:(a)“社交性”与 (b)“英雄性”,分别度量 (a) 一名开发者对另一名开发者议题的评论程度;以及 (b) 一名开发者对另一名开发者代码的改动程度(“英雄”指那些在整个系统中改动代码最多者)。在支持 Herbsleb 假设的结果中,我们在超过 1000 个开源项目中发现,“社交性”作为代码质量(缺陷数)的指标在统计上强于“英雄性”。因此我们称关于“英雄性”优劣的争论在微妙意义上被误导了。我们的结果表明,这些所谓“英雄”的真正益处并非其生成的代码,而是当大量程序员群体间的交互经由一小群中心化开发者时所必需的通信模式。换言之,要构建更好的代码,应在核心开发者与其余人员间构建更好的通信流。为让其他研究者确认、改进或反驳我们的结果,我们的所有脚本与数据均在线发布于 https://github.com/Anonymous633671/A-Comparison-on-Communication-and-Code-Dependency-Effects-on-Software-Code-Quality。
引用
@article{arxiv.1904.09954,
title = {Communication and Code Dependency Effects on Software Code Quality: An Empirical Analysis of Herbsleb Hypothesis},
author = {Suvodeep Majumder and Joymallya Chakraborty and Amritanshu Agrawal and Tim Menzies},
journal= {arXiv preprint arXiv:1904.09954},
year = {2022}
}
备注
12 pages, 7 figures, 2 tables