论文标题
关于软件体系结构在DevOps转换中的作用:一个工业案例研究
On the Role of Software Architecture in DevOps Transformation: An Industrial Case Study
论文作者
论文摘要
开发和操作(DEVOPS)是一种特定类型的连续软件工程,已成为流行的软件系统工程范式。软件体系结构对于与DevOps的成功至关重要。但是,几乎没有关于如何在行业中架构软件系统来启用和支持DevOps的循证知识。由于建筑决策及其理由和含义在架构过程中非常重要,因此我们进行了一项工业案例研究,该案例研究已经验鉴定并综合了两个软件开发团队的DevOps转型至关重要的关键架构决策。我们的研究还表明,除了选择的建筑风格外,DevOps在模块化架构中最有效。此外,我们发现,如果将操作专家添加到团队中以执行需要高级专业知识的运营任务,则研究团队的性能可以改善DEVOPS。最后,如果团队想更快地发布软件,则不可避免地对测试进行投资。
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.