返回
Repository‐Level Developer Behavior Signals From Pull Request Data
DOI:10.1002/spe.70117.png)
摘要
En 中文
摘要
背景
拉取请求在软件开发生命周期中扮演着关键角色,并产生了大量关于贡献者和审查者在基于拉取的开发模型中如何做出决策的指标。先前的研究者在单个拉取请求层面进行分析,这面临着输入数据稀缺和噪声大的挑战性问题,且产生的信号难以在不同代码库之间进行比较。
目的
本研究探讨了在代码库层面测量的信号是否比按拉取请求测量的指标更能稳健地表征开发者行为,以及这些信号是否能在不同托管平台和开发环境中通用。我们特别关注两种行为:审查时间如何响应代码复杂性,以及审查在开发者对之间的集中程度如何。
方法
我们比较了四个拉取请求数据来源:来自Atlassian Corporation Plc的Atlassian Bitbucket和Atlassian GitHub代码库(均为公开可用),以及来自J.P. Morgan的Avatar和ISM/VET Bitbucket项目代码库。我们首先使用增强的高斯混合模型,根据有意义的代码行数对审查时间与代码复杂性进行建模。然后,我们使用作者和审查者的图论构造来分析开发者对之间的审查者选择行为,由此构建了一个过度共同审查行为的综合指数,并在两年期间通过滚动窗口对其进行跟踪。
结果
我们的混合模型很好地拟合了数据,并利用它们来探索和解释代码复杂性增加但审查时间未增加的实例。我们的指数有助于识别高共同审查期,并在J.P. Morgan代码库中恢复已知时期,在这些时期中,对大型拉取请求的单审查者批准是预期的。
结论
代码库层面的信号规避了限制单个拉取请求层面分析的 数据稀缺和噪声问题,并产生可在不同代码库之间比较的指标。将公开的、开源的GitHub数据集与闭源的Bitbucket项目相结合,证明了该方法的平台和开发环境通用性。
期刊
S
IF:
2.7
论文数:
49
被引数:
0
机构
暂无机构信息
引用论文
没有更多内容

