中文

持续集成服务对合并拉取请求交付时间的影响

软件工程 2023-05-29 v1

摘要

持续集成(CI)是一种频繁构建和测试软件(例如每次推送时)的软件开发实践。采用CI的一个主要动机是相较于不使用CI有可能更快地交付软件功能。然而,鲜有经验证据支持CI能帮助项目更快地交付软件功能。通过对87个GitHub项目的162,653个拉取请求(PR)的分析,我们实证研究了采用CI服务(TravisCI)是否能加快已合并PR的交付时间。我们通过分析来自73个软件项目参与者的450份调查反馈补充了我们的定量研究。我们的结果表明,采用CI服务未必能加快合并PR的交付。相反,CI服务的关键优势在于改善对PR提交的决定,且不损害质量或使项目的审阅者和维护者过载。CI提供的自动化和开发者信心的提升是采用CI服务的主要优势。此外,计划吸引和留住开发者的开源项目应考虑在其项目中使用CI服务,因为CI被认为降低了贡献门槛,同时使贡献者感到更自信并参与到项目中。

关键词

引用

@article{arxiv.2305.16365,
  title  = {The Impact of a Continuous Integration Service on the Delivery Time of Merged Pull Requests},
  author = {João Helis Bernardo and Daniel Alencar da Costa and Uirá Kulesza and Christoph Treude},
  journal= {arXiv preprint arXiv:2305.16365},
  year   = {2023}
}