arrow
Return

Process mining software engineering practices: A case study for deployment pipelines

delete2024-04-01
delete2
delete
OA
AI
A
Ana Filipa Nogueira *
M
Mário Zenha-Rela
DOI:10.1016/j.infsof.2023.107392delete
deleteOriginal
deleteShare
deleteSave
View PDF
Abstract

Abstract

En 中文
Context: In mature software development organizations the ci/cd pipeline is the only route to deploy software into production. While the workflow of this process seems straightforward, the reality is different since exceptions and deviations are the norm in actual industry practice. In this context, Process Mining appears as a promising technique to uncover deviations and check compliance with standardized DevOps processes, and highlight bottlenecks and potential improvement areas. Objective: This paper presents a case study designed to assess the potential of using Process Mining techniques to provide visibility into the deployment pipeline. Method: This research uses raw event data extracted from the continuous practices toolchain, which is then used to compute a comprehensive set of DevOps-specific metrics, thus supporting objective monitoring of the quality and efficiency of the deployment workflow. The study focuses on different development units in the Engineering team, each working in a distinct business context but sharing standard practices. Results: We verified that even though there are standards for the deployment pipelines, each team's workflow denotes local variations with unique points for improvement that are highly coupled to their business unit context. We observed that each team's pipeline has different temporal profiles that reflect their context and work practices. Additionally, we identified a set of deployment pipeline metrics focusing on process compliance, efficiency, and deployment stability. Conclusion: The main contributions of this paper include (1) the description of an actual application of Process Mining to the deployment pipeline of a highly complex e -commerce platform, (2) how this approach provided an objective understanding of the efficiency and quality of the development workflow, (3) how this processcentric view, combined with domain -specific DevOps metrics, supports continuous practices, and (4) how Developers can analyse their workflows by applying Process Mining while using standard tools like GitLab and PM4Py.
Keywords:
ci/cd
DevOps
Process mining
Temporal profiling
Continuous improvement
Software engineering
AI Summary

AI Summary

Key information extracted from the uploaded paper, including a brief overview, abstract, background, key highlights, visual analysis, and future outlook.

Journal

Information and Software Technology cover
Information and Software Technology
IF:
4.3
Papers:
3.7K
Citations:
7.7K

Organization

U
universidade de coimbra
Scholars:
1.9W
Papers: 1.6W
Citations: 16