【华为敏捷/DevOps实践】7. 敏捷,DevOps,傻傻不分清楚 (2)

还有DevOps的6C概念,即Continuous Planning, Continuous Integration, Continuous Testing, Continuous Deploy, Continuous Release, Continuous Feedback,事实上,也是端到端广义的DevOps。

image.png

维基百科上的总结,DevOps的出现,有四个关键驱动力

互联网冲击要求业务的敏捷

虚拟化和云计算基础设施日益普遍

数据中心自动化技术

敏捷开发的普及

业务敏捷,开发敏捷,运维侧自动化,以及云计算等技术的普及,几乎打穿了从业务到开发到运维(当然里面还有测试),所以虽然字面上是Dev到Ops,事实上,开玩笑的说,已经是BizDevTestOpsSec了,即从狭义的D2O,前后延伸到E2E,端到端广义的DevOps了。

image.png

能力成长模型

image.png

DevOps能力成长模型,是Nicole Forsgren博士,Jez Humble以及Gene Kim三位大师,基于多年DevOps现状报告的基础上,汇聚出来的能力模型。(上图是刘征老师基于Accelerate一书,以及多年DevOps现状报告的基础上,二次创新,汇总出来的模型)

从能力模型上来看,所有的连线汇聚点,也就是最终的目的,是组织效能。软件交付和运维效能,是敏捷与DevOps共同的目标。

其中持续交付是狭义DevOps的核心理念,横跨了架构、开发、测试、运维等角色;持续交付的核心开发实践,也涵盖了架构管理,版本管理,分支策略,测试自动化,部署发布,运维监控,信息安全,团队授权,数据库管理等多个维度,其中不乏传统我们常说的敏捷相关实践,尤其是下图中XP极限编程的很多实践,半数以上在DevOps里都能找到。

image.png

能力成长模型,除了持续交付,还包括精益领导力、精益产品开发、精益管理、组织文化与学习氛围。DevOps已远远不是CI/CD那么简单,CALMS原则,也横跨了文化、管理、精益与技术。

敏捷宣言的十二条原则,SAFe的九大原则,以及DevOps的CALMS原则,也是彼此相互融合。SAFe有借鉴DevOps的理念和方法,DevOps又采纳敏捷的思想和实践,大家又都以精益为思想核心。到底谁包含谁,谁比谁大,彼此的界限在哪里呢?

小结

方法也好,实践也好,其价值应该由客户价值来体现。对客户而言,需要解决的问题,是端到端的,是全局而不是局部优化;

所以,是什么,不重要;能解决什么,要解决什么问题,很重要。

DevOps的核心,是精益与敏捷的思想和原则,所以你说到底是敏捷包含了DevOps呢,还是DevOps包含了敏捷呢?我觉得没必要纠缠,两者原本已经无法区分,也无需区分。

敏捷也好,DevOps也罢,能抓住耗子就是好猫。具体应该叫什么,你为什么要那么纠结?

DevOps是集大成者,是各种好的原则和实践的融合;敏捷又何尝不是如此,2001年的17位雪鸟大师,各自在践行着不同的敏捷框架和实践,敏捷宣言和原则,原本就是一次融合;2003年Mary Poppendieck和Tom Poppendieck的精益软件开发方法,即便是已经有敏捷宣言的前提下,不也一样纳入敏捷开发的范畴么;敏捷也是在不断前行,DevOps与敏捷殊途同归,是同一问题的不同分支,最终汇集到同一个目标。

一个好的方法论,应该是与时俱进,兼容并蓄的;应该是开放的,演进的而不是固化的。

方法论如此,学习和实践方法论的人,更应该如此,以一颗开放的心态,接纳一切合理的存在。

参考资料:

”“

“DevOps能力成长模型”

IBM DevOps资料

维基百科

关于作者

姚冬 资深DevOps与精益/敏捷专家,软件工程专家;中国DevOpsDays社区核心组织者之一;Exin DevOps Professional认证讲师;凤凰沙盘认证讲师;SAFe SPC规模化敏捷咨询师;认证Scrum Master, SAFe Agilist;曾任IBM DevOps产品线大中华区技术总监,金融行业Technical Leader;现任华为云软件开发云首席技术布道师。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zzgjzy.html