灵敏开发与DevOps的差异
灵敏与 DevOps 之间的主要差异在于:灵敏是关于怎么开发和交给软件的哲学,而 DevOps 则描绘了怎么经过运用现代东西和主动化流程来继续布置代码。
灵敏宣言
如果软件开发人员是灵敏的,他们的行为方式与灵敏宣言中界说的价值观和准则相一致。
灵敏宣言于 2001 年由软件开发领导者编撰并签署,它界说了灵敏从业者有必要遵从的十二项准则和四项根本价值观,包含:
-
个别和互动高于流程和东西
-
作业的软件高于全面的文档
-
客户协作高于合同商洽
-
响应改变高于遵从方案
虽然灵敏宣言对软件开发社区的重要性不言而喻,但它的篇幅却十分短。 一共不到500字。
除了坚持将软件继续将会给客户是灵敏的最高优先级之外,宣言并没有提供任何简明的辅导,也没有推荐任何能够遵从的详细流程。 这纯粹是一种哲学练习。
怎么界说 DevOps?
与灵敏比较,DevOps 有界说文档。 DevOps 没有普遍承受的界说。
我们乃至不清楚 DevOps 是什么时分进入公共词典的,虽然许多人指出 John Allspaw 和 Paul Hammond 在 2009 年 Velocity 大会上的演讲《每天10+个布置:Flickr上的开发和运维协作》是它的初步。许多人也认为 Gene Kim 的《凤凰方案》一书也是 DevOps 遍及的一个推动因素。
| 比较 | 灵敏开发 | DevOps |
| ———- | ——————————- | ———————————————————— |
| 启始时间 | 2001 | 2007 |
| 开创人 | J约翰克恩、马丁福勒等人 | Flickr 的 John Allspaw 和 Paul Hammond 以及 Gene Kim 的凤凰方案 |
| 最高优先级 | 软件继续交给 | 软件继续布置 |
| 开创神器 | 灵敏宣言 | 《每天10+个布置:Flickr上的开发与运维协作》 |
| 施行框架 | Scrum、看板、ScrumBan、精益、XP | CAMS, CALMS, DORA |
| 备选方案 | 瀑布开发模型 | 竖井形式的开发与布置 |
| 团队规划 | 由 10 人以下的小团队运用 | 作为公司范围内的战略施行 |
| 范围 | 专注于单个应用程序的开发 | 公司范围内的软件布置方法 |
在 2009 年的 Velocity 演示中,Allspaw 和 Hammond 描绘了他们对的软件测验例程的信心怎样使得在开发和运营之间建立了诸多信赖,该公司乃至现已施行了一个流程,能够每天将代码主动布置到生产环境中 10 次以上。主动化这样的作业在其时被认为是石破惊天的。
自 2009 年以来,软件开发职业发生了许多改变,但 DevOps 的基石仍然是:
-
开发和运维团队之间的信赖和协作
-
严峻依赖全面的软件测验例程
-
集成现代东西以简化开发和运营任务
-
无需任何人工干预或检查点即可主动布置到生产中
灵敏和 DevOps 文明
虽然许多人争论 DevOps 究竟是什么,但大多数界说都包含“文明”一词。这就引出了一个问题:什么是文明?
一般来说,文明能够界说为任何一群志同道合的人,他们运用一套通用的东西并遵从一套可重复的流程。
从本质上讲,文明能够归结为以下三点:
-
人
-
流程
-
及他们所用的东西
DevOps 东西和流程
在 DevOps 的国际中,从业者运用的盛行东西包含:
-
Git 和 GitHub
-
Docker 和容器
-
Jenkins 其他 CI 东西
-
用于编排的 Kubernetes
-
Chef 和 Puppet
-
静态代码剖析
-
Terraform
-
公有云
运用这些发生的过程是代码的继续集成和布置(CI/CD)。
灵敏和 DevOps 有何相似之处?
从事 DevOps 的人有什么独特之处?
数字化转型成功的先决条件是什么?
这正是灵敏和 DevOps 的交汇点。
为了使 DevOps 发挥作用,一切 DevOps 从业者都有必要承受灵敏思想。
一切 DevOps 从业者都相信:
-
手动任务的主动化和未完成作业的重要性
-
与积极的个人组成的自组织团队协作的重要性
-
将软件继续交给给客户作为最高优先级
这些要点中的每一个都直接映射到灵敏宣言中列出的十二条准则之一。
怎么将灵敏和 DevOps 结合起来?
DevOps 人员有必要是灵敏的。
要正确履行 DevOps,DevOps 从业者有必要承受灵敏思想。
灵敏和 DevOps 从业者不仅有共同的思想形式,并且他们的方针也很一致。
DevOps 过渡的最终方针是将作业代码彻底主动化布置到生产中。这代表了 DevOps 的完整启示。
灵敏宣言毫不含糊地指出,其最高优先级是继续向客户交给软件。
灵敏和 DevOps 都相信构建软件、保证透明度和促进可继续发展的最佳方式是将可作业的软件交到客户手中。
灵敏和 DevOps 有着彻底相同的方针,就是让开发和运营团队运用现代东西并遵循流程,将软件赶快交到客户手中。
灵敏与 DevOps 的异同
总结一下,下面是 DevOps 和灵敏之间最常见的差异和相似之处:
-
灵敏由灵敏宣言界说,而 DevOps 没有普遍承受的界说
-
DevOps 界说了一种作业文明,而灵敏是一种软件开发理念
-
灵敏的最高优先级是继续交给,而 DevOps 则是继续布置
-
DevOps 坚持一切手动任务的主动化,而灵敏则重视“未完成的作业量”
-
DevOps 从业者拥护灵敏思想,而灵敏则要求参与者自组织和激励
灵敏和 DevOps 相结合
灵敏和 DevOps 并不是彼此抵触的概念。事实上,情况恰恰相反。
具有灵敏思想并承受 DevOps 文明的人都有一个共同的方针,那就是向客户继续交给和布置有价值的软件。
要正确履行 DevOps,一切参与者都有必要承受灵敏思想。只有这样,根据 DevOps 的数字化转型才会成功。
【注】本文译自:Agile vs DevOps: What’s the difference?