企业玩转DevOps转型:由弱到强,只需7步
【摘要】 在参考业界方法并总结客户成功故事的基础上,本文提出了“七步法”路线图,希望能帮助更多的企业顺利进行DevOps转型。
从2009年诞生,DevOps已经悄然走过了10多个年头。Gartner在技术热门度曲线报告“Hype Cycle for I&O Automation, 2019”中指出,DevOps处于爬升期(Slope of Enlightenment)。越来越多的国内企业关注DevOps,大有掀起一番大干快上热潮的架势。然而,在这种情形下,企业还是应该理性看待DevOps,将DevOps视为50多年来软件工程方法的扬弃,正如瀑布、敏捷一样,DevOps是软件工程特定的时代标签。
如何避免DevOps变革的六大“焦油坑”一文指出了企业践行DevOps转型面临的许多挑战及应对方法。那么企业应该采用怎样的路线图(Roadmap)来具体实施DevOps转型呢?
在总结客户成功故事的基础上,我们提出了“七步法”路线图(如下图所示),希望能帮助更多的企业顺利进行DevOps转型。

理论上,DevOps是软件工程方法的进一步发展,然而对于企业,DevOps转型并不是轻而易举的。企业需要达到引爆点,即企业在此时将变革作为首要任务。通常来讲,引爆点无外乎2类:生死关头(Burning Platform)与愿景领导(Visionary Leadership)。对于大多数的企业,DevOps转型的最大动力往往来自于“火烧屁股”,主动转型多数时候是奢谈。企业通过引爆点的理解对DevOps变革形成清晰的愿景并确立驱动因素。
第一步:选择合适的价值流
对于企业来讲,希冀全面的DevOps转型往往是不现实的。因此,通常情况下,企业可以选择1-2个价值流(或者产品)来进行尝试。这一步工作可以从以下方面进行考虑:
(1)选择新产品(绿地项目)还是现有产品(棕地项目);
(2)选择记录型型产品还是交互型产品;
(3)选择创新型团队还是保守型团队。
管理学大师彼得·德鲁克曾说过:“小鱼在小池塘里成为大鱼”。选择合适的价值流是DevOps转型的非常关键的一步。
第二步:识别支撑价值流的团队
在选择好试点的价值流后,必须确定价值流的所有成员,来共同为客户创造价值。价值流团队应该为跨职能融合团队,至少包括业务人员、产品负责人、开发团队、QA团队、运维团队、信息安全团队等等。
第三步:绘制价值流图并确定改进目标
价值流团队深入需要深入理解工作方式,可以使用价值流图(Value Stream Mapping)进行记录,通过工作坊的方式确定价值流关键环节的Lead Time、Value Added以及%C/A,来充分识别出阻碍价值流快速流动的环节,并将其作为改进目标。
第四步:组建专门的团队并培养能力
DevOps转型面临的最大挑战是与公司当前业务与交付模式的冲突。因此尽量将转型团队从诸多现有的规则和规定中解放出来。企业可以参考康威定律、Kotter的Dual Operating System等来设计团队结构。关于Kotter的Dual Operating System的阐述可以参考SAFe的“Business Agility”。在组建团队后,企业应该对团队进行体系化培训。然而不少企业往往因为投入成本问题,忽视了培训,结果可想而知。
第五步:应用方法和最佳实践进行转型
转型团队在理解业界DevOps方法与实践的基础上,结合人员技能水平、工具平台以及业务场景等,针对第三步确定的改进目标,循序渐进地进行转型。DevOps方法与实践涉及面非常广,从我们的服务企业的经验来看,企业应该聚焦2+1。所谓的2指的是敏捷项目管理、代码版本控制,1指的是持续交付流水线。其中的2是基础,很多企业在这2点没有做好的情况,就追求1,很多时候是缘木求鱼。
第六步:使用工具平台以强化预期行为
DevOps转型,首当其冲的是文化与思维的转变。文化与思维通过行为进行体现。如果方法与实践等只是纸质规章制度,那么是难以规范并强化预期行为的,文化与思维的转变也就勉为其难。因此企业组织应该使用工具平台(例如华为云DevCloud)来提升交付效率与质量,更为重要的是强化预期行为。如何在华为云DevCloud上玩转DevOps,可以百度搜索查阅。
第七步:扩展到组织的其它价值流
正如前面提到,企业可以选择1-2价值流进行试点,有条件的企业,建议采用2个,形成对照组。在DevOps转型符合预期效果,并且试点价值流良好运转后,可以扩展到组织的其它价值流,实现规模化(Scaled Size)。当然企业应该注意的是规模化有它固有的挑战,并不能看做是价值流的线性规模化,特别是当价值流之间耦合度较高时。
在组织内全面实施DevOps绝非易事,转型可能会给个人、团队、部门以及整个组织带来风险。变革需要勇气,同时也需要合理的路线图,做到风险可控。既然DevOps转型已经势在必行,企业按照七步法路线图有序实施,凤凰涅槃可期。
华为云DevCloud作为一站式云端DevOps平台,集成华为近30年研发实践和前沿理念,面向开发者提供研发工具服务,让软件开发简单高效。百度搜索“DevCloud”可以预约免费的产品演示和技术交流,详情查看华为云官网。
企业玩转DevOps转型:由弱到强,只需7步的更多相关文章
- 为什么学Python语言,只需四步全面了解Python语言
为什么学Python语言,只需四步全面了解Python语言每个时代都会悄悄犒赏会选择的人,Python现在风口的语言Python--第三大主流编程语言Python , 是一种面向对象的解释型计算机程序 ...
- 只需一步,DLA开启TableStore多元索引查询加速!
一.背景介绍 Data Lake Analytics(简称DLA)在构建第一天就是支持直接关联分析Table Store(简称OTS)里的数据,实现存储计算分离架构,满足用户基于SQL接口分析Tabl ...
- 安装go语言,配置环境及IDE,只需3步
安装go语言,配置环境及IDE,只需3步 ( 欢迎加入go语言群: 218160862 , 群内有实践) 第1.下载 go压缩包,解压 ,如果你是window系统,请选择go1.5.windows ...
- PDF怎么旋转页面,只需几步轻松搞定!
有时候我们下载一个PDF文件里面有页面是旋转的情况,用手机看的时候可以把手机旋转过来看,那么用电脑的时候总不可能也转过来看吧,笔记本是可以的台式的是不行的,这个时候我们就需要把PDF文件中旋转的页面转 ...
- vuex其实超简单,只需3步
前言 之前几个项目中,都多多少少碰到一些组件之间需要通信的地方,而因为种种原因,event bus 的成本反而比vuex还高, 所以技术选型上选用了 vuex, 但是不知道为什么,团队里的一些新人一听 ...
- 如何把C++的源代码改写成C代码?而C改C++只需一步!
★ 如何把C++的源代码改写成C代码? C++解释器比C语言解释器占用的存储空间要大,想要在某些特定场合兼容C++代码,同时为了节省有限的存储空间,降低成本,也为了提高效率,将用C++语言写的源程序用 ...
- 一、JavaScript实现AJAX(只需四步)
-----------------------------------------------一.JavaScript实现AJAX(只需四步)----------------------------- ...
- 只需3步,快来用AI预测你爱的球队下一场能赢吗?
摘要:作为球迷,我们有时候希望自己拥有预测未来的能力. 本文分享自华为云社区<用 AI 预测球赛结果只需三步,看看你爱的球队下一场能赢吗?>,作者:HWCloudAI. 还记得今年夏天的欧 ...
- 【代码更新】单细胞分析实录(21): 非负矩阵分解(NMF)的R代码实现,只需两步,啥图都有
1. 起因 之前的代码(单细胞分析实录(17): 非负矩阵分解(NMF)代码演示)没有涉及到python语法,只有4个python命令行,就跟Linux下面的ls grep一样的.然鹅,有几个小伙伴不 ...
随机推荐
- mysql 漏洞利用与提权
判断MySQL服务运行的权限 1.查看系统账号,如果出现MySQL这类用户,意味着系统可能出现了降权. 2.看mysqld运行的priority值. 3.查看端口是否可外联. MySQL密码获取与破解 ...
- 数据可视化之powerBI基础(十五)Power BI同步切片器,你知道怎么用吗?
https://zhuanlan.zhihu.com/p/67932754 在PowerBI报表中,切片器绝对是最常用的控件了,利用它可以进行各种维度的动态切换,同一个页面中的所有图表可以同步响应:利 ...
- python 装饰器(三):装饰器实例(一)
示例 7-15 定义了一个装饰器,它会在每次调用被装饰的函数时计时,然后把经过的时间.传入的参数和调用的结果打印出来.示例 7-15 一个简单的装饰器,输出函数的运行时间 import time de ...
- 03-Python控制语句
一.简介 通过一些语句来改变程序的执行顺序,这些语句被叫做控制语句,在python主要有if.for.while三种控制流语句. 二.if语句 用来检测一个条件是否成立,如果为真,则执行该语句(一般为 ...
- 软件测试工程师入门——Linux【使用说明书】
先来说一下linux是什么? linux 是一个开源.免费的操作系统,其稳定性.安全性.处理多并发已经得到业界的认可,目前很多中性,大型甚至是巨型项目都在使用linux. linux 内核:redha ...
- less : 写一个display:flex的mixin
和scss一样,less也是一个好用的css预处理语言,语法也很相近. 而我们在使用display:flex的时候,很容易苦恼于里面的设置的单词很难记(尤其是对我这种英语很差的人来说). 所以我们可以 ...
- ISE第三方编辑器的使用
刚开始使用ISE时候感觉ISE自带的编辑器并没有什么难用的,但是在看到了小梅哥的视频教学中那样行云流水般的操作让我心动不已,由此找到了相关的编辑器.为了以后看着方便直接摘取了前人的经验在我自己的博客中 ...
- python-闭包和装饰器-02-装饰器(decorator)
装饰器(decorator) 理解了上一章的闭包之后,装饰器就是闭包的一种应用,只是外部函数的参数传入的不是普通的变量类型,而是传入一个函数名.装饰器一般用于:不修改被装饰函数(即外部函数传入的参数) ...
- 关于Type-C扩展坞干扰路由器交换机的解决方案
近期看到网友反馈Type-C扩展坞干扰交换机的问题,具体表现为USB Type-C扩展坞在同时插上网线和PD充电的情况下,引起路由器或交换机死机,导致局域网断开的情况.经实测分析,原因为部分电脑默认设 ...
- 全栈的自我修养: 0005 Java 包扫描实现和应用(Jar篇)
全栈的自我修养: 0005 Java 包扫描实现和应用(Jar篇) It's not the altitude, it's the attitude. 决定一切的不是高度而是态度. Table of ...