Continuous Integration (CI) has become a well-established software development practice for automatically and continuously integrating code changes during software development. An increasing number of Machine Learning (ML) based approaches for automation of CI phases are being reported in the literature. It is timely and relevant to provide a Systemization of Knowledge (SoK) of ML-based approaches for CI phases. This paper reports an SoK of different aspects of the use of ML for CI. Our systematic analysis also highlights the deficiencies of the existing ML-based solutions that can be improved for advancing the state-of-the-art.
翻译:持续集成(Continuous Integration,CI)已成为自动化软件开发实践,在软件开发过程中,它能够自动和持续地集成代码更改。越来越多基于机器学习(Machine Learning,ML)的方法用于自动化CI阶段的处理在文献中有所报道。提供ML用于CI的系统性知识(Systemization of Knowledge,SoK)已经及时与相关。本文报告了使用ML实现CI不同方面的SoK。我们的系统分析还强调了现有ML解决方案的缺陷,这些缺陷可以改进以推动技术发展。