译自《Is ALM Dead in The Time of DevOps?》,作者 D Sarkar
PLM 的历史以及 ALM 的引入
要了解 DevOps 的当前事实和状态,我们必须回顾历史,看看这一切是从哪里开始的。
首先,PLM(产品生命周期管理)的概念是在 1985 年由美国汽车公司首次实施的。他们希望提高吉普“大切诺基”的生产率和开发速度。这些原则已经存在于管理系统中,但在此期间,它被安排并应用于开发过程中。CAD(计算机辅助设计)、需求管理、配置管理、资源规划、工程规划和产品生命周期管理的各种其他重要元素的同步由 PLM 完成。不仅在产品开发级别,而且在项目级别的软件应用程序、数据库管理、设计和管理都需要集成。
这催生了ALM(应用程序生命周期管理),它被纳入制造公司的PLM流程。随着公司开始实施 PLM,软件开发公司很明显会遵循该套件。最初,在设计、需求、发布和构建管理、源代码开发、错误报告、测试和用户支持,事实上,整个项目管理的过程中,现有的使用中的工具被组合但没有集成。他们天生倾向于在集成中工作,因此 ALM 最初是现有工具的概念和实际实现。
将 ALM 纳入瀑布和敏捷方法
新发现的管理策略适用于瀑布模型和敏捷模型。两者都有不同的结果。
瀑布模型和 ALM——该模型也称为线性顺序生命周期模型;这是最容易遵循的。瀑布模型按顺序工作,只有在完成一个开发阶段并测试项目的下一阶段后才开始。顾名思义,它是非常线性的。ALM 被纳入瀑布模型中,它增强了现有系统。集成 ALM 并不能改变模型,尽管它与传统的 Waterfall 高度不兼容。
敏捷模型和 ALM – 另一方面,敏捷模型是一个以客户为中心的模型,客户的参与和意见与开发人员、测试人员和管理人员共享。它分为设计组的小的快速循环,测试迭代非常适合该模型,可以增强模型的适应性和敏捷性。ALM 的紧密开发集成是敏捷模型的基础。两者都基于高度集成的工具,而 ALM 作为一个概念是在敏捷内部构建的。ALM 已成为敏捷的一个组成部分,而敏捷的身份与 ALM 共享高度集成的方法。
因此,敏捷模型是实现 ALM 的首选模型。
DevOps 和 ALM 的起源
DevOps 的起源可以追溯到 2008 年,当时 Patrick Debois 和 Andrew Clay Shafer 就在Agile敏捷方法的基础架构中以更少的错误加速交付进行了讨论。2009 年,由于比利时发生的 DevOpsDays 事件,这个概念变得流行起来。
因此,DevOps是敏捷的一个分支是公认的。然而,DevOps 不是敏捷,但它遵循并支持敏捷方法论。考虑到这一点,DevOps 与 ALM 密切相关,因为 ALM 加速了敏捷,进而有助于更好地实施 DevOps。
DevOps 增加了集成的力量,带来了 ALM 概念的完整实施,这远远超过了基本的敏捷方法,因为众所周知,运营包含了应用程序生命周期管理的大部分内容,并且 DevOps 与整个 ALM 的前线接触.
事实上; DevOps 是在敏捷框架内实施 ALM 之后的结果,即使看起来并非如此。结果各不相同,因此前景存在差异。从流程来看,很明显 DevOps 与 ALM 直接相关。
在 DevOps 时代,ALM 真的死了吗?
让我们正面回答以下问题!
ALM 的本质是将任何方法中的开发到部署过程划分为小的单独阶段。在传统方法的情况下,ALM 只能集成项目和数据管理的整体系统。但在敏捷的情况下,过程是同质的,边界模糊。而 ALM 的核心是加速开发和运营过程,尽管它可能不可见。传统方法是基于所有人一致遵循的各个阶段。
新开发的 ALM 不需要进行任何单独的安排,因为该概念已内置在 DevOps 中。ALM 是并且将永远是 DevOps 存在的一个组成部分,因为它存在于 DevOps 的实施中。
结论
所以,ALM 在 DevOps 时代就死掉的想法是完全不可能的,ALM 是 DevOps 用来加速软件开发和生产的一种想法。它是一种有助于集成和实施 DevOps 的管理概念。DevOps 永远无法杀死 ALM,也无法掩盖它。
原文:https://www.kovair.com/blog/is-alm-dead-in-the-time-of-devops/