当前位置: X-MOL 学术Inf. Softw. Technol. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
On the impact of Continuous Integration on refactoring practice: An exploratory study on TravisTorrent
Information and Software Technology ( IF 3.8 ) Pub Date : 2021-05-10 , DOI: 10.1016/j.infsof.2021.106618
Islem Saidani , Ali Ouni , Mohamed Wiem Mkaouer , Fabio Palomba

Context:

The ultimate goal of Continuous Integration (CI) is to support developers in integrating changes into production constantly and quickly through automated build process. While CI provides developers with prompt feedback on several quality dimensions after each change, such frequent and quick changes may in turn compromise software quality without Refactoring. Indeed, recent work emphasized the potential of CI in changing the way developers perceive and apply refactoring. However, we still lack empirical evidence to confirm or refute this assumption.

Objective:

We aim to explore and understand the evolution of refactoring practices, in terms of frequency, size and involved developers, after the switch to CI in order to emphasize the role of this process in changing the way Refactoring is applied.

Method:

We collect a corpus of 99,545 commits and 89,926 refactoring operations extracted from 39 open-source GitHub projects that adopt Travis CI and analyze the changes using Multiple Regression Analysis (MRA).

Results:

Our study delivers several important findings. We found that the adoption of CI is associated with a drop in the refactoring size as recommended, while refactoring frequency as well as the number (and its related rate) of developers that perform refactoring are estimated to decrease after the shift to CI, indicating that refactoring is less likely to be applied in CI context.

Conclusion:

Our study uncovers insights about CI theory and practice and adds evidence to existing knowledge about CI practices related especially to quality assurance. Software developers need more customized refactoring tool support in the context of CI to better maintain and evolve their software systems.



中文翻译:

关于持续集成对重构实践的影响:TravisTorrent探索性研究

语境:

持续集成(CI)的最终目标是支持开发人员通过自动构建过程将变更不断地,快速地集成到生产中。尽管CI在每次更改后为开发人员提供有关多个质量维度的及时反馈,但如此频繁而快速的更改可能反过来会损害软件质量而无需重构。实际上,最近的工作强调了CI在改变开发人员感知和应用重构方式方面的潜力。但是,我们仍然缺乏经验证据来证实或驳斥这一假设。

客观的:

在转换为CI之后,我们旨在探索和理解重构实践的发展,包括频率,规模和相关开发人员,以强调此过程在改变重构应用方式中的作用。

方法:

我们收集了从39个采用Travis CI的开源GitHub项目中提取的99,545个提交和89,926个重构操作的语料库,并使用多元回归分析(MRA)分析了更改。

结果:

我们的研究提供了一些重要的发现。我们发现,采用CI会导致建议的重构规模减小,而重构的频率以及执行重构的开发人员的数量(及其相关比率)估计会在转换为CI后减少。重构不太可能在CI环境中应用。

结论:

我们的研究发现了关于CI理论和实践的见解,并为现有的关于CI实践(尤其是质量保证)的知识提供了证据。软件开发人员需要在CI环境中提供更多定制的重构工具支持,以更好地维护和发展他们的软件系统。

更新日期:2021-05-12
down
wechat
bug