A Stochastic Petri Net Model of Continuous Integration and Continuous Delivery - Bhadra, Sushovan; Das, Bikram; Silva, Priscila; Nagaraju, Vidhyashree; Fiondella, Lance (Proceedings. Annual Reliability and Maintainability Symposium, 2023)
SUMMARY & CONCLUSIONSModern software development organizations rely on continuous integration and continuous delivery (CI/CD), since it allows developers to continuously integrate their code in a single shared repository and automates the delivery process of the product to the user. While modern software practices improve the performance of the software life cycle, they also increase the complexity of this process. Past studies make improvements to the performance of the CI/CD pipeline. However, there are fewer formal models to quantitatively guide process and product quality improvement or characterize how automated and human activities compose and interact asynchronously. Therefore, this paper develops a stochastic Petri net model to analyze a CI/CD pipeline to improve process performance in terms of the probability of successfully delivering new or updated functionality by a specified deadline. The utility of the model is demonstrated through a sensitivity analysis to identify stages of the pipeline where improvements would most significantly improve the probability of timely product delivery.