SEMar 13, 2020

On the Role of Software Architecture in DevOps Transformation: An Industrial Case Study

arXiv:2003.06108v119 citations
AI Analysis

This provides incremental insights for software engineering teams in industry on architectural decisions to enable DevOps transformation.

The study tackled the lack of evidence on how software architecture supports DevOps by conducting an industrial case study with two teams, finding that modular architectures and adding operations specialists improve performance, and that testing investment is essential for faster releases.

Development and Operations (DevOps), a particular type of Continuous Software Engineering, has become a popular Software System Engineering paradigm. Software architecture is critical in succeeding with DevOps. However, there is little evidence-based knowledge of how software systems are architected in the industry to enable and support DevOps. Since architectural decisions, along with their rationales and implications, are very important in the architecting process, we performed an industrial case study that has empirically identified and synthesized the key architectural decisions considered essential to DevOps transformation by two software development teams. Our study also reveals that apart from the chosen architecture style, DevOps works best with modular architectures. In addition, we found that the performance of the studied teams can improve in DevOps if operations specialists are added to the teams to perform the operations tasks that require advanced expertise. Finally, investment in testing is inevitable for the teams if they want to release software changes faster.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes