团队转型,Scrum与DevOps要如何取舍?

原创
yanruiyu
2020-07-22 13:11:38
3952
摘要:敏捷就是Scrum,实施敏捷就是套用Scrum方法吗?我们在团队转型的时候要如何做出选择?

团队在践行敏捷的过程中,会有多种选择:Scrum、XP、Kanban、Crystal、精益生产规模化敏捷等,其中最流行的敏捷开发方法当属Scrum。正因如此,大部分人对其产生了刻板印象: 认为敏捷就是Scrum,实施敏捷就是套用Scrum方法


而产生在敏捷之后的DevOps集文化理念、实践和工具于一身,可以提高组织高速交付应用程序和服务的能力,与传统的软件开发和基础设施管理流程相比,能够帮助组织更快地发展和改进产品,也逐渐成为衔接开发团队和运维团队的胶合剂。在这种情况下,大家反而会常常限制在一个 思维困境中: 团队转型,是选择Scrum还是DevOps

在这里,有必要纠正一下人们的思维误区。首先,敏捷并非等于Scrum,敏捷作为一种软件开发运动,其发起人试图以一种更为敏捷的新方式来思考软件开发、方法论以及组织架构,从而帮助行业中的人们。Scrum作为一种方法论,并不是详细的操作规范,而是一套行为框架,在此框架基础上,各团队根据自己团队实际情况制定合适的迭代任务。


而DevOps关注的不只是开发阶段的内容,它关注的是整个系统,以促进端到端的价值流动为目的。从客户提出需求,到进入开发阶段,再到交付客户成果,价值的流动并非局限于某一阶段中。整套系统中各个单元都相辅相成,因此某一部分的改变会影响其他部分,为了使价值顺利地流动出去,需要系统中各个单元的相互配合。

因此,当人们对Scrum和DevOps并不了解时,常常会陷入二选一的误区。实际上,Scrum与DevOps并不冲突,从性质上来讲, Sc rum偏向于基础框架,DevOps偏向于文化理念; 从另一个角度来讲,Scrum与DevOps是局部与整体的关系:Scrum更注重每一sprint结束后的成果交付,DevOps则注重构建、开发、运维等阶段的整体运行、前后的衔接与持续交付


在Scrum团队中,除却原Scrum团队中的开发人员,还包括架构人员、分析人员、销售人员等,团队下一步要考虑的问题是如何将将各职能成员联系在一起。部分已经意识到此问题的团队为了解决单一的Scrum方法论仅注重开发阶段这一弊端,开始寻求DevOps的支持。

1.持续交付

在Scrum中引入DevOps的持续交付概念,强调每个sprint的完成应以产品增量为目标。

  • 首先,在sprint期间,Scrum Master不会制定详实的sprint计划,而是 仅制定sprint中前几日的计划,之后便随着冲刺期间的工作改进、调整灵活变动计划内容;
  • 其次, 每日召开Scrum会议,同步团队中成员计划,提高成员之间的协作效率;
  • 最后,在sprint结束后, 团队需要召开回顾会议来汇总这一阶段所做的工作,反思这次冲刺中的不足之处及应该注意的事项,以便在下次sprint中调整团队的整体方向。

在sprint阶段里,Scrum团队不断地进行学习、获取反馈,努力提高改进、产出速度,使产品尽可能多地发布到交付环境中。随后Scrum Master 通过这一期的目标完成情况决定下一期的sprint目标,在这一期间仍要注意的是,尽量减少过程中的人为干预,从而减少发布过程的周期。

2.扩大反馈

Scrum团队通过验收会议、回顾会议以及每日Scrum同步团队成员的任务进度,以及获取上一sprint成果的反馈。与单一的Scrum不同,应用DevOps的Scrum验收已经处于生产环境中的sprint成果,验收标准也不再是单一的性能测试,而是围绕产品本身、部署架构、市场等方面进行多方位评审,从而制定下一期sprint计划。


扩大反馈的方式有很多,总的来说首要步骤就是如何提高生产效率。有以下几种方法: 可以利用结对编程来增加工作效率,使产品尽可能多地交付到环境中。 也可以统一代码规范,减少额外成本的增加:当团队拥有良好且统一的代码规范时,会有效规避因某个成员的缺席造成团队工作停滞的风险,也能够提升代码的可读性,从而提高工作效率、扩大反馈。


Scrum的仪式感常常表现在 迭代计划会议、 每日站立会议、 回顾会议等方面。而DevOps更注重在整个价值流中快速并持续交付价值,这种价值的快速流动需要产品发布过程中每个人的参与;同时,透过自动化“软件交付”和“架构变更”的流程,逐渐消除人为干预,使得构建、测试、发布软件更加地快捷、频繁和可靠。


DevOps文化倡导 “共同责任”,也就是在产品发布全流程中,所有成员通过协作确保产品有价值,因此,在Scrum框架基础上应用DevOps能够帮助Scrum团队更好地进行知识学习和创新。


Q: Scrum和DevOps在团队转型中有哪些不同的关注点?

A: Scrum侧重于每个sprint后的成果交付,而DevOps关注整个系统的运行、前后衔接和持续交付。


Q: 在团队管理中,Scrum和DevOps可以如何结合使用?

A: Scrum和DevOps可以结合使用,通过在Scrum中引入DevOps的持续交付理念,提高团队的协作和产品发布效率。


Q: 团队在转型过程中如何避免陷入Scrum和DevOps二选一的误区?

A: 理解Scrum作为行为框架和DevOps作为文化理念的互补关系,有助于在团队中应用两者以增强整体效能。

  • ai_thumbnail_81291_1759116685.png
评论列表
🏓
不羁的橙子2025-11-11 10:13:40回复
如果团队不了解,容易走二选一误区。怎么实际结合呢?

推荐阅读

用户故事一定要有 “So that...” 吗?

关于用户故事,我想在这里集中回答大家最常提出的三个问题,希望会有所帮助。
Mike Cohn 2024-05-16

测试过程需不需要践行敏捷?

在敏捷开发模式中,为了解决人力资源浪费的问题,团队的开发过程需要践行敏捷,同样,测试阶段也要践行敏捷。
yanruiyu 2020-09-23

揭秘:顶级产品经理是如何写产品需求文档(PRD)的

10年产品经理经验,我总结的那些产品需求文档写作技巧。
zhengqiaoyin 2021-03-15

用一半的时间做两倍的事——Scrum之父Jeff Sutherland的传奇人生

杰夫•萨瑟兰(Jeff Sutherland)——被誉为“Scrum之父”,Scrum创始人之一,也是《敏捷宣言》合著者。在践行Scrum的几十年里,Jeff身体力行地向受众传达Scrum的真正意义。随着时代的演进,Jeff也在不断地更新Scrum,以继续保持它的活力。
yanruiyu 2020-12-28
返回顶部
客服头像
张淑钧
高级客户经理
客服微信
13156280939
2082428410
统一服务热线 4006-8899-23
我要提问提问有任何问题,您都可以在这里提问。问题反馈反馈点击这里,让我们聆听您的建议与反馈。