随着企业业务对软件系统日益依赖, IT 运营 管理与 产品 研发 交付   敏态  模式产生了 愈发强烈的 需求。 将产品 的设计、开发与运营等元素进行高效整合,综合管理, 就是今天时常提起的 DevOps 。可以 说DevOps  到来  真正让开发者与管理员携起手来    传统 开发 及运营 流程间 存在鸿沟及割裂架起了桥梁。

 

为了  升产品的上线发布速度  实现 更好的开发敏捷性, 让开发人员拥有更多的 时间 去创新  越来越多的技术团队都在 寻求实施DevOps 。但是,采用DevOps并不是万能药,这种方式需要开发团队和运维团队密切交流、高效协作并且相互理解。DevOps模型鼓励沟通、协作和无可指责的回顾, 这个 理念 对于 培养一个 优秀的团队无疑是有百利而无一害的 ,但 在推行过程中势必会存在阻碍, 这些 阻碍会大大降低每个环节的 效率 , 从而影响 最终的落地效果。 所以,使用Devops的整 个过程中, 如何提升效率,则 成为了 DevOps 实践当中最核心内容之一。

 对于 实现 DevOps的组织而言,最大的挑战   发现 并消除工作流程中的  有问题,以便 找到  新颖 ,更敏捷的方法。 为此, Gartner 总结了 六个步骤 帮助想实现 DevOps的组织 来去除限制。接下来, 我们 就来详细讲解下 

 

步骤1:   定义流程

DevOps团队需要从 项目 的开始到最终 为客户实现 价值, 来重新规划并 布局他们的工作流程。通过记录现有 工作流 中的每一步,团队可以更容易地发现并细化可能对整个 工作流程造成影响的部分,并探寻出 更大的价值流。 这样 ,团队就可以很容易地确定 最大价值的工作流, 在保证质量的前提下加快价值流的流动速度,尽可能的优化工作流,减小流动单元合理控制流量,减少等待时间,提高工作效率,可以归结为以下几点:

1.  使工作可见;

2.  合理控制最流动单元;

3.  减少交接次数;

4.  消除阻碍价值流的问题。

 

步骤2:   找到最大的阻碍

 一个 典型的DevOps工作流中,总是  有一个阶段 会在全工作流中 减慢从 点子 到价值 实现 的过程。为了推动 工作流 的改进,团队需要确定阻碍 流程推动的 阶段,并 消除阻碍的来源 

 

 想找到最大的阻碍  可以  这样 一个问题:“每个人都在等待什么?”问这个问题可以让团队 成员统一目标,明确需要重点关注 哪些 问题才可以 提高效率。如果 整个的工作进程 是在一个 平等的、没有 指责的、  建设性的环境中 进行的,团队成员将更有可能 表达自己的观点,才能更快的找到形成阻碍的问题所在 。在 找到 最大的 阻碍 后, 再重新审视整个 项目的进展, 就可以 确认已 找到的问题点是否正确 

 

步骤3:   清除 限制进程  因素

如果团队找到了 DevOps工作流 中的 限制因素时,最常见的做法是  IT人员、 项目 资金、 辅助工作的软件系统上 投入更多的资源。 当然了, 集中精力  消除浪费 掉的资源 ,而不是增加更多 无用的消耗 ,这样做 才会使得整个 DevOps工作流更  有效。

 

根据Gartner的数据 可以 确定 影响进程的3大重要原因是:

1.  突发事件: 把宝贵的 时间花在 处理 突发事件上,而牺牲  了开发新产品或  功能等增值 项目为代价是非常不值当的 而解决这一问题的 最佳实践  是对团队成员进行 丰富多岗位交叉 培训  使 成员全部掌握突发事件的解决之法,知道什么样的问题该如何去进行解决  当然,为了预防 今后发生 类似的 事件, 需要团队间经常进行开放的复盘活动,找到事件的 根本原因 所在  并输出符合企业自身的专属知识库, 并在今后加以预防。 在实践中,可以采用睿象云提供的 SaaS 服务- 智能告警平台 Cloud Alert ,来更加有效的进行事件的汇聚、降噪、流转等功能。

2.  资源 等待: 项目的进程中,往往会遇到自己暂时无法解决的问题,这就不得不面临 等待 的尴尬,等待其他 人员 协作、等待 外部组织 决定、等待 其他资源 入驻 等是一个持续不断的挑战。 想解决这个问题,就可以 通过 日常 培训和 雇佣 具有不同技能和知识的员工来缓解,使他们能够并行工作。这 就可以使他们在等待其他人响应的同时,还可以完成 其他 已经 分配的工作。

3.  人员 潜力:许多专业人员花费  大量  时间进行 像更新数据库、协调人员这样简单而重复的 工作, 其实完全没有体现出人力资源真正的价值 。组织 可以 尽可能多地 通过 自动化 手段  处理固定的简单事务  让人力   专注于高价值的任务。

 

步骤 4  不要忽略 小问题

忽略 带来进程约束和生产瓶颈的小问题, 而专注于新的  即将到来的问题,意味着 原始问题并没有得到解决,这将导致工作会变慢,以后会出现更多的问题。这包括:错误和缺陷将会越来越多、对团队的生产效率造成负面影响、在变化率高的情况下进行高昂成本的返工。

 

DevOps   团队的领导人应该找出限制生产能力的最大瓶颈, 如果 一个 链条中最薄弱的环节没有得到加强,那么其他环节在某一时刻必然会失效。 如果专注于这个最大的限制因素,DevOps团队就能系统地识别什么在阻碍所需的工作节奏,并克服这个瓶颈。

 

步骤 5  增加 团队力量

通过 以上步骤 就已经 可以帮助 团队 提高至少30%的 效能 ,并且 还会让团队拥有回顾和复盘的能力和时间 ,以便 团队能够仔细考虑 并找出解决问题的 最佳方案。团队也应该利用这段时间来想出他们可以增加能力的其他方法, 比如寻找 专业服务 团队  或者是雇佣更多技能 的员工。

 

步骤 6  找出下一个最大的约束

想要提升上线、发布 速度不是一件容易的事,它需要不断 优化 改进过程。例如,即使一个团队 成功地 消除了一个约束,另一个约束也  在工作流的 其他 部分取代它的位置。随着时间的推移,团队将需要调整他们的 流程 和实践,以实现高的开发节奏。最后,为了确保他们满足客户的需求,他们必须对他们的开发节奏进行尽职调查,并在必要时进行改进。

 

写在后面

DevOps的实践不是一天完成, 想让 DevOps实践 可以 有序推进 ,既要 将DevOps实践推向企业内部的其他项目、其他团队,逐步实现团队敏捷、项目敏捷,乃至企业敏捷; 又要在 DevOps的研发效能持续优化与提升,建立学习型、使命型团队,推进DevOps文化的落地。

DevOps自提出以来,其内涵一直在不断的发展与丰富。相应地,DevOps的实践,也会是一个螺旋上升的过程,需要企业持续推进,进而为企业业务发展注入持续不断的活力。