《Scrum敏捷软件开发》Succeeding with Agile

作者:Mike Cohn(Mountain Goat Software 创始人,Scrum Alliance 联合创始人)

“If you only read one agile book, this is the one.” — Henrik Kniberg

本书不是 Scrum 入门书,而是从入门到精通的组织级转型指南。Mike Cohn 基于数十年咨询经验,系统回答了:如何在真实组织中推动 Scrum 落地、如何克服阻力、如何扩展到大型项目、如何衡量成效。全书 5 大部分 22 章,覆盖从个人到团队再到整个组织的完整转型路径。


核心观点

  1. Scrum 转型是组织变革,不是技术工具替换。失败的转型往往只培训了开发者,却忽略了 Scrum 对整个组织(HR、PMO、管理层、法务)的深远影响。
  2. 没有终点状态。敏捷是持续改进之旅——“there can be no end state in a process that calls for continuous improvement.”
  3. 自下而上 + 自上而下必须同时进行。只有开发者热情不够,只有管理层推动也不够。
  4. 不要把 Scrum 变成最佳实践清单。Scrum 是一个框架,需要结合具体情境去调整和适应。
  5. 先成功,再扩展。找到合适的试点项目,做出可见成果,用成功的故事感染更多团队,胜过大规模强制推广。

全书结构

Part I: Getting Started(起步)——第 1-5 章

解决”为什么要变、怎么开始变”的问题。

章节主题核心内容
第1章为什么敏捷转型困难(但值得)转型失败的常见原因;Scrum 的可衡量收益(生产力、质量、上市时间、员工士气)
第2章ADAPT 模型转型的 5 个阶段:Awareness → Desire → Ability → Promotion → Transfer
第3章采用模式从小处开始 vs. 大爆炸式转型;渐进式 vs. 一次性切换
第4章迭代迈向敏捷改进待办列表(improvement backlog);改进社区(improvement communities);企业转型社区(ETC)
第5章第一个项目理想试点项目的 4 个特征;何时开始(新项目 / 失败项目 / 行将失败的项目)

Part II: Individuals(个人)——第 6-9 章

聚焦个人层面的角色转变和阻力克服。

章节主题核心内容
第6章克服阻力阻力来源(个人得失、权力转移、不确定性);应对策略
第7章ScrumMaster 新角色ScrumMaster 的特征、职责、权威来源;从项目经理到 ScrumMaster 的转变
第8章变化的角色产品负责人、分析师、测试人员、项目经理等传统角色如何适应 Scrum
第9章技术实践TDD、持续集成、结对编程、重构、代码集体所有权——Scrum 团队的技术基石

Part III: Teams(团队)——第 10-16 章

从团队视角看 Scrum 如何运转。

章节主题核心内容
第10章团队结构特性团队 vs. 组件团队;团队规模(两个披萨原则);通才 vs. 专才
第11章团队协作全员责任制(whole-team responsibility);团队问责
第12章领导自组织团队自组织的 3 个条件;领导者的 7 种影响方式
第13章产品待办列表从文档到对话;用户故事;待办列表渐进式细化
第14章每个 Sprint 交付可用软件DoD(完成定义);跨功能团队;为下个 Sprint 做准备
第15章渐进式完善计划敏捷规划的不同层次;发布规划;迭代规划
第16章将测试融入过程为什么传统测试模式失效;测试自动化的不同层次;持续测试

Part IV: The Organization(组织)——第 17-20 章

将 Scrum 扩展到整个组织。

章节主题核心内容
第17章扩展 Scrum首席产品负责人;Scrum of Scrums;大型项目的组织方式
第18章分布式团队分布式团队的组织模式;沟通挑战;面对面会议的重要性
第19章与其他方法共存三种交互场景:前置瀑布、后置瀑布、混合模式;合规与治理要求
第20章HR、设施与 PMO绩效评估、薪酬、职业路径;办公空间设计;PMO 的转型

Part V: Next Steps(下一步)——第 21-22 章

衡量进展,持续改进。

章节主题核心内容
第21章衡量进展平衡计分卡;敏捷成熟度评估;有用的和无用的度量
第22章永无止境敏捷转型没有终点;持续改进的文化

关键模型与概念

ADAPT 转型模型(第 2 章)

Mike Cohn 基于 Prosci ADKAR 模型改造,更贴合 Scrum 转型:

  • A - Awareness(认知):意识到当前流程无法交付满意结果
    • 常见障碍:看不到全局、拒绝面对现实、把忙碌当进步、听惯了内部宣传
  • D - Desire(意愿):产生采用 Scrum 解决问题的意愿
    • 意愿不能被强迫,只能被激发;展示收益而非灌输理念
  • A - Ability(能力):具备成功实施 Scrum 的能力
    • 培训、教练、试点项目、访问标杆企业
  • P - Promotion(推广):分享成功经验,让更多人看到成果
    • 口口相传是最好的推广方式;像病毒营销一样传播 Scrum
  • T - Transfer(传递):将 Scrum 的影响传递到整个组织
    • 影响 HR、财务、法务、PMO 等职能部门

Awareness、Desire、Ability 是重叠递进的,而 Promotion 和 Transfer 贯穿整个转型过程。

改进待办列表 + 改进社区(第 4 章)

把 Scrum 方法本身用于推动 Scrum 转型:

  • 改进待办列表(Improvement Backlog):像产品待办列表一样,列出组织在 Scrum 实践上所有可以改进的事项,按优先级排序
  • 改进社区(Improvement Communities):由对某个领域有热情的人组成的自组织团体,负责推动该领域的改进
    • 例:产品待办列表改进社区、测试改进社区
  • 企业转型社区(Enterprise Transition Community, ETC):在更高层面协调和推动整体转型工作

ScrumMaster 角色(第 7 章)

ScrumMaster 像健身教练——权威来自团队的授权,而不是职位赋予。

优秀 ScrumMaster 的特征:

  • 精通 Scrum 框架和敏捷原则
  • 擅长引导(facilitation)而非指挥
  • 有耐心,允许团队从错误中学习
  • 能看到团队的盲点并巧妙指出
  • 服务型领导(servant leader)

从项目经理到 ScrumMaster 的转变:

  • 从”分配任务”到”团队自组织”
  • 从”跟踪进度”到”移除障碍”
  • 从”对结果负责”到”帮助团队对结果负责”

技术实践五件套(第 9 章)

Scrum 要成功,技术实践是地基。没有技术实践支撑的 Scrum 只会变成快速产出烂代码的机器。

实践核心思想价值
测试驱动开发(TDD)先写测试,再写代码内建质量、可重构的安全网、设计驱动
持续集成(CI)频繁集成,每次集成都通过自动化验证及早发现集成问题、可随时发布
结对编程两个人共用一台电脑写代码知识共享、实时代码审查、更高质量
重构在不改变外部行为的前提下优化内部结构保持代码健康、适应变化、降低技术债务
集体代码所有权任何人可以修改任何代码消除知识孤岛、提高团队韧性

特性团队 vs. 组件团队(第 10 章)

  • 特性团队(Feature Team):跨功能、跨组件,端到端交付一个完整特性
    • 优点:减少等待和依赖、更快交付价值、更有成就感
    • 挑战:需要更多通才、需要更多沟通
  • 组件团队(Component Team):按系统组件/技术栈划分
    • 优点:专业化深、效率高(在组件层面)
    • 缺点:依赖多、集成晚、端到端交付慢

推荐方向:逐步向特性团队转型。可以先混合,再逐步增加特性团队比例。

两个披萨团队(第 10 章)

团队规模以”两个披萨能喂饱”为宜(约 5-9 人)。小团队的优势:

  • 沟通成本低(n² 问题)
  • 决策快
  • 责任感强
  • 更容易自组织

扩展 Scrum 的模式(第 17 章)

  • 首席产品负责人(Chief Product Owner):负责整体愿景,下管各团队产品负责人
  • 产品负责人团队:多个产品负责人协作维护统一的产品待办列表
  • Scrum of Scrums:每个团队派代表参加,协调跨团队依赖
    • 不是”每日站会的放大版”,而是聚焦跨团队依赖和集成
  • 特性团队 + 组件团队混合:核心平台用组件团队,业务功能用特性团队

分布式团队模式(第 18 章)

两种组织方式:

  1. 按特性分布:每个地点是一个完整的特性团队,端到端负责
  2. 按层次/组件分布:不同地点负责不同层次或组件(风险更高)

建议:尽量按特性分布,减少跨地点依赖。定期面对面聚会非常重要(至少每个季度一次)。


可行动点

如果你正准备启动 Scrum 转型

  1. 先找一个理想的试点项目:有可见的重要性、有合适的团队、有愿意支持的管理层、有经验的 ScrumMaster
  2. 用 ADAPT 模型评估组织状态:当前在哪个阶段?下一步需要什么?
  3. 建立改进待办列表:把转型本身当作一个 Scrum 项目来做
  4. 不要从”两周培训”开始——培训只是 Ability 的一小部分,先建立 Awareness 和 Desire 更重要

如果你的团队已经在用 Scrum 但效果不好

  1. 检查技术实践:没有 TDD、CI 等技术实践的 Scrum 很快会撞上质量墙
  2. 审视团队结构:是不是组件团队导致了太多依赖和等待?
  3. 评估产品待办列表质量:是不是还在用需求文档代替对话?
  4. 回顾你的 ScrumMaster:TA 是在移除障碍,还是在做项目经理的事?

如果你想在更大范围推广

  1. 用成功故事驱动,而不是行政命令——最好的推广方式是”隔壁团队用了之后效果很好”
  2. 成立改进社区——让有热情的人来带动更多人
  3. 提前考虑 HR/PMO/财务等职能部门的转变——这些是转型失败的隐形杀手
  4. 建立平衡计分卡衡量进展——不要只用速度(velocity)衡量敏捷成效

金句摘录

“Understanding the mechanics of an agile process is just not enough.” 理解敏捷流程的机制是远远不够的。

“There can be no end state in a process that calls for continuous improvement.” 在一个要求持续改进的过程中,不存在终点状态。

“The best architectures, requirements, and designs emerge from self-organizing teams.” 最好的架构、需求和设计来自自组织团队。(敏捷宣言原则之一)

“If everyone is responsible then no one is responsible.” 如果每个人都负责,就等于没人负责。——但 Mike Cohn 认为这是错的,全员责任制是可行的。

“Scrum is not a list of best practices.” Scrum 不是一份最佳实践清单。


与其他知识的关联

参考价值

  • 推荐指数:★★★★★(敏捷转型必读,Mike Cohn 最权威著作)
  • 适合人群:ScrumMaster、敏捷教练、技术负责人、正在推动组织转型的人
  • 不适合:完全不了解 Scrum 的纯新手(建议先读《Scrum 指南》入门)
  • 阅读建议:前 4 章必读(奠定基础),后面根据自己的问题跳读对应章节