中文

工具支持在补丁构建中的影响

软件工程 2018-12-20 v1

摘要

在这项工作中,我们调查了 Linux 内核开发中的补丁构建实践,重点关注三种打补丁过程之间的差异:(1) 完全手动编写以修复缺陷的补丁,(2) 由缺陷检测工具警告推导出的补丁,以及 (3) 基于修复模式自动生成的补丁。通过本研究,我们向研究界提供了关于打补丁实践以及开发社区当前如何接纳研究和商业打补丁工具以提升修复生产力的具体见解。我们的研究结果表明,工具支持的补丁正日益被开发者社区采用,而手动编写的补丁被接受得更快。补丁应用工具使开发者能够持续向代码库贡献补丁。我们的发现还包括,在实际开发过程中,补丁通常实现分布于代码中的若干变更操作,即便是修复缺陷检测工具警告的补丁也是如此。最后,本研究表明,存在直接利用缺陷检测工具输出来随时生成适用于修复问题且与手动编写补丁一致的补丁的机会。

关键词

引用

@article{arxiv.1812.07416,
  title  = {Impact of Tool Support in Patch Construction},
  author = {Anil Koyuncu and Tegawendé F. Bissyandé and Dongsun Kim and Jacques Klein and Martin Monperrus and Yves Le Traon},
  journal= {arXiv preprint arXiv:1812.07416},
  year   = {2018}
}