"Good" and "Bad" Failures in Industrial CI/CD -- Balancing Cost and Quality Assurance
By: Simin Sun, David Friberg, Miroslaw Staron
Potential Business Impact:
Fixes code faster, saving time and money.
Continuous Integration and Continuous Deployment (CI/CD) pipeline automates software development to speed up and enhance the efficiency of engineering software. These workflows consist of various jobs, such as code validation and testing, which developers must wait to complete before receiving feedback. The jobs can fail, which leads to unnecessary delays in build times, decreasing productivity for developers, and increasing costs for companies. To explore how companies adopt CI/CD workflows and balance cost with quality assurance during optimization, we studied 4 companies, reporting industry experiences with CI/CD practices. Our findings reveal that organizations can confuse the distinction between CI and CD, whereas code merge and product release serve as more effective milestones for process optimization and risk control. While numerous tools and research efforts target the post-merge phase to enhance productivity, limited attention has been given to the pre-merge phase, where early failure prevention brings more impacts and less risks.
Similar Papers
A Systematic Literature Review on Continuous Integration and Deployment (CI/CD) for Secure Cloud Computing
Software Engineering
Makes apps safer when put online.
DevOps Automation Pipeline Deployment with IaC (Infrastructure as Code)
Software Engineering
Makes building and sending out computer programs faster.
On Queueing Theory for Large-Scale CI/CD Pipelines Optimization
Software Engineering
Makes computer code updates faster and cheaper.