Scrum 与策略

阅读数:2620 2010 年 3 月 10 日

话题:敏捷Scrum文化 & 方法

Scrum 与战略

通常,当要求人们区分 Scrum 的工作流程和“传统流程”驱动下的项目执行过程时,最简单的答案是:在后一种方法里面,你需要把计划做到尽可能完备,然后再付诸行动;而在前一种方法里面,你只需要计划到足以开始即可,然后再随着进展不断完善。能想到的稍微详细的回答是——在 Scrum 里面,你考虑得越远,计划反而越不具体。换句话说,当前的 Sprint 计划得极其详尽,而对于未来 3 个 Sprint 需要完成的任务则只需要粗略地计划,3 个 sprint 之后就只是一个模糊的时间进度安排了。太好了!现在清楚多了,不是吗?但是,以超越一般工程学的眼光来看,为了安排工作成果,进而达成计划的收入目标,业务运作还包括众多的其他因素——预测、产品战略、对已达成共识的战略的执行。如果 Scrum 仅仅关乎短期行为,制订战略的人士又该如何去适应这种状况呢?更重要的是,它如何帮助企业领导人做出并且履行重要的承诺?问得好,但答案却不是那么简单。然而,毫无疑问,战略与执行的重要性不相上下,因为战略是指引企业走出黑暗隧道的明灯。拥有好的战略从来都比迫于当前市场的情况而改变更重要。所有这一切不是使得战略规划和 Scrum 水火不容,就像磁铁的两极?抑或更甚 ——如同地球的两极?

Scrum 中的计划——这里其实并不神秘

对于 Scrum,常见的误解之一是你不知道版本发布周期何时结束,以及最终产品(包括所有的商定特性)何时能准备好交付。这就是支持“非敏捷”流程的最狂热分子们关于 Scrum 的观点。实际上,再不会有比这还要离谱的了。Scrum 从根本上具有“自我管理”这一决定性特性,正是这一特性,使得这些误解多么幼稚可笑。Scrum 从来没有建议不去做长期规划。事实上,企业利益干系人要想在“手头项目是否契合长期目标”这一问题上得出一个大致的观点,长期规划非常关键。传统的业务工具,如资本投资分析,盈亏平衡分析等在 Scrum 中变得更加有意义,因为 Scrum 有助于判断价值——不仅是产品的整体价值,而且是各部分(组成产品的各个具体特性)的价值总和。这最终有助于产品负责人做出判断,从项目的资金投入中获得价值,并且使该价值最大化。总之,所有的 Scrum 方法都建议在心中保持一个总体目标,随后按照短期需要的粒度级别完善计划。这样一来,如果方向需要变革或者路线需要修正,给人们带来的痛苦会更少,而且相对于被动变化,它也提供了更好的业务控制能力。

大局出发且又符合逻辑

Scrum,换作业务术语,就是“价值驱动”执行过程。如果把做事的方法分成两类:其中一类做法是要给投资提供更高的价值或者回报,其他林林总总归为另一类。那么,Scrum 肯定是前一种,与你的长远目标结合在一起,并且与企业利益干系人的需要紧密联系在一起。借助于我参加 CSM 认证时接触到的图表形式,所有的这些意见可以被更好地解读。

图中大部分都是不言自明的,但这里也对其中一些要点做简要总结:

无论是瀑布过程抑或其任何变体,传统流程的大前提是经过一 段时间以后才交付稳定和重要的价值。上图中的 Y 轴用 $ 标识了可交付的价值,X 轴则用来表示时间。快速浏览上图,你能发现:敏捷流程在一开始就把所有的事情 都完成一小部分事情(此为关键),并向利益干系人展示可衡量的进展,来确保在任何时间都能交付一些重要价值。传统流程是在过了一段时间之后,才交付大量的 价值,而敏捷流程是在每个相同的时间间隔,都会有少量的、递增的进展。说到底,这幅图的关键在于:指出项目的业务价值如何与 Scrum 的流程——按照故事 优先级执行——紧密地联系在一起。

简而言之,重点在于 Scrum 如何让业务变得可控。价值最高的故事优先开发,从而给业务提供了最大的机会:

  1. 根据获得足够多的业务价值总和、或者潜在的业务机会为基础,让交付日期提前。
  2. 在缩减功能与推迟发布计划之间做出折衷,确保按时发布,同时对收入几乎没有任何影响。
  3. 突然出现了很快能带来更多销售机会的故事,这样的故事优先级更好,此时需要在缩减功能和这样的故事之间做出折衷。

通过实施 Scrum 方法,我们规避了高度细致的长期计划导致的常见问题:

  1. 错误的估算精度。
  2. 业务环境的变化导致详细的计划 / 设计不得不重新排列优先级。
  3. 不确定性通常被忽略,直到项目后期才让大家发现。

传统的计划 / 战略问题

  1. 关注于任务(需求文档、设计文档、测试计划),而不是客户价值。
  2. 活动不是相互独立的,互相之间的依赖非常复杂。
  3. 延迟随着项目日程传递。

聚沙成塔

对 于比较随意的读者来说,他们会迷惑于上述第一部分和第二部分如何关联在一起。本部分将用全局眼光检视战略,以便把这些点连在一起——战略,简单地说,就是 从理论的角度来看未来。Scrum 和敏捷,从某些角度来看,它们的前提都是反对对未知的未来计划太远。不是基于理论上的抽象概念,而是基于 Scrum 框架 给业务带来收益的坚实基础上去创建战略——正是该理念的核心。换句话说,纪念碑的建筑样式同时取决于其地基的强度,以及其外观给人带来愉悦观感的能力。基 于同样的理由,Scrum 的宗旨是坚实战略的基础。

我们先罗列了一些普遍理解的 Scrum 概念,然后讲述到当 Scrum 遇上战略时看上去似 乎格格不入,接着试图把拼图的各个部分拼接在一起。作为总结,我希望本文有助于解决一些不为人熟知的、并且很少被人论及的 Scrum 本质。更重要的是,执 行和战略就像双眸一样——Scrum 解决了执行的细节问题,而在敏捷生态系统内,同样重要的战略却并没有获得同样的重视。我们作为 Scrum 实践者,只有 意识到了 Scrum 框架中战略角色的微妙复杂,那么我们才能充分发挥自己能力。最后,让我们记住,敏捷是非强制性的,留出了一定范围的自由和灵活性来改进 流程,下一步该看我们的行动了。

查看英文原文Scrum And Strategy


感谢金毅郑柯对本文的审校。

给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家加入到InfoQ 中文站用户讨论组中与我们的编辑和其他读者朋友交流。