敏捷指南 · 敏捷实践
敏捷中的冲刺是什么?时长、事件与示例
敏捷中的冲刺是一个短而固定的周期,不超过一个月,最常见的是两周,团队在此期间将一组待办事项转化为可用的成果。冲刺为敏捷团队带来稳定的计划、构建、评审和改进节奏。本指南将解释冲刺如何运作、应持续多长时间、冲刺内会发生什么,以及一个真实的两周冲刺每天是什么样子。
要点总结
- 冲刺是一个不超过一个月的固定时间盒,只有一个冲刺目标;两周是最常见的时长。
- 每个冲刺都包含冲刺计划会、每日 Scrum、冲刺评审会和冲刺回顾会,并以一个可用的增量结束。
- 冲刺目标就是承诺。范围可以重新协商,但会危及目标的变更应当避免。
- 冲刺从不延长。未完成的工作退回产品待办事项列表,下一个冲刺随即开始。
- 只有产品负责人可以取消冲刺,而且只有在冲刺目标已经过时的情况下才能取消。
- 大多数冲刺问题源于过度承诺、目标模糊以及同时开始太多工作。
敏捷中的冲刺是什么?
A 冲刺 是一个不超过一个月的固定时长周期,敏捷团队在此期间朝着单一的冲刺目标努力,并产出至少一个可用的产品增量。冲刺一个接一个、无缝衔接,与产品相关的所有计划、协调、评审和改进活动都在冲刺内进行。
这个术语来自 Scrum,即使用最广泛的敏捷框架。《Scrum 指南》(2020 版,仍为当前的官方版本)将冲刺描述为 Scrum 的心跳,在冲刺中想法被转化为价值。其他敏捷方法用 迭代 一词表达同一概念,许多并不严格遵循 Scrum 的团队也仍然称之为“冲刺”。
无论叫什么名字,冲刺都具有五个决定性特征:
- 固定长度。 时长事先确定,并在各个冲刺之间保持不变,使团队能够掌握自己的节奏。
- 一个目标。 每个冲刺都有一个冲刺目标:一个说明该冲刺为何值得进行的单一目标。
- 可用的成果。 到冲刺结束时,团队拥有一个满足 完成的定义的增量,即使它尚未发布。
- 首尾相接。 上一个冲刺结束后,新冲刺立即开始。
- 一切都在冲刺之内。 计划、日常协调、梳理、评审和回顾都在冲刺内进行,而不是在冲刺之前或之后。
正是短而固定的周期使敏捷成为经验性的:每隔几周,团队及其相关方就会查看真实可用的产出,并决定下一步做什么。
冲刺、迭代与 Scrum
这些术语经常被混淆。下表展示了它们之间的关系。
| 术语 | 是什么 | 使用场合 |
|---|---|---|
| 冲刺 | 一个不超过一个月、产出可用增量的固定时间盒 | Scrum,以及大多数敏捷团队中的宽泛用法 |
| 迭代 | 对重复进行的、有时间盒的开发周期的统称 | XP、SAFe、DSDM/AgilePM 以及一般敏捷文献 |
| Scrum | 定义冲刺、角色、事件和工件的框架 | 遵循《Scrum 指南》的团队 |
| 发布 | 向用户交付增量;可以在一个冲刺内进行多次,也可以在几个冲刺之后进行 | 所有交付方法 |
| 项目群增量(PI) | 更长的计划周期,通常包含若干次迭代,用于协调多个团队 | SAFe(规模化敏捷框架) |
简而言之,冲刺是迭代的一种,而 Scrum 是为冲刺制定规则的框架。两者背后的理念都是迭代和增量开发:以小块切片构建产品,并在每个周期中加以改进。
冲刺有多长?
《Scrum 指南》只规定了一条规则:冲刺持续 不超过一个月。在此限度内,由团队自行选择。实践中,大多数团队的冲刺为一到四周,而两周是迄今最常见的选择,因为它在快速反馈与计划和评审的开销之间取得了平衡。
| 长度 | 适用于 | 需要注意 |
|---|---|---|
| 1 周 | 快速变化的产品、早期初创企业、需要非常快速反馈的团队 | 事件占用的时间比例较大;较大的条目难以完成 |
| 2 周 | 大多数团队;入门时的良好默认选择 | 如果条目过大,仍可能隐藏一个迷你瀑布 |
| 3 周 | 测试周期较长或有受监管签核步骤的团队 | 较少见,因此较难与其他团队保持一致 |
| 4 周 / 一个月 | 需要较长时间才能显现成果的复杂工作;稳定的环境 | 反馈较慢,偏离目标的风险较大,计划会议规模较大 |
如何选择冲刺时长
选择 团队能够交付有意义且已完成成果的最短时长。然后考虑:
- 变化有多快。 市场或需求越不稳定,冲刺就应越短。
- 反馈可以等待多久。 如果相关方需要每周看到进展,那么四周的冲刺就太长了。
- 条目大小。 如果大多数待办事项需要几天以上才能完成,请先拆分它们,而不是延长冲刺。
- 发布和测试方面的约束。 集成、合规检查或硬件交付周期可能会使非常短的冲刺变得不切实际。
- 协调一致。 开发同一产品的团队通常采用相同的冲刺时长和开始日期。
更改冲刺时长
请将时长至少在几个冲刺内保持稳定,这样您的 速度 和预测才有意义。应在回顾会上经过深思熟虑后再更改时长,而不是在冲刺中途更改,也绝不要因为工作未完成而延长某个冲刺。有关 Scrum 的具体规则,请参阅我们的指南: Scrum 冲刺周期.
冲刺的基本构成要素
三样东西构成了冲刺的形态:目标、计划和成果。
冲刺目标
冲刺目标是冲刺的单一目标。它在冲刺计划会中制定,是开发人员做出的承诺。好的冲刺目标描述的是一个 成果,而不是一串工单,这样团队在不断学习的过程中就有余地调整具体工作。
- 较弱:“完成工单 412、415、419 和 420。”
- 较好:“让回头客一步完成结账,以便我们检验这是否能减少购物车放弃。”
- 非软件示例:“上线春季营销活动落地页和前两封邮件,以便销售团队能在周一开始客户拓展。”
冲刺待办事项列表
冲刺待办事项列表 由冲刺目标、为该冲刺选定的产品待办事项列表条目以及开发人员交付这些条目的计划组成。它归开发人员所有,开发人员在整个冲刺期间持续更新它,使每个人都能看到剩余的工作。
增量与完成的定义
增量是迈向产品目标的一步,它是可用的,并且满足完成的定义。不满足完成的定义的工作,无论多么接近完成,都不属于增量。一个冲刺中可以创建多个增量,并且可以随时发布;冲刺评审会并不是发布关口。
冲刺中的事件
冲刺是其他四个事件的容器。下表中的时间盒是《Scrum 指南》针对一个月冲刺给出的上限;对于较短的冲刺,事件通常也更短。
| 事件 | 目的 | 参与者 | 最长时间盒(一个月的冲刺) |
|---|---|---|---|
| 冲刺计划会 | 商定冲刺为何有价值(冲刺目标)、能完成什么以及如何完成 | 整个 Scrum 团队 | 8 小时 |
| 每日 Scrum | 检视实现冲刺目标的进展,并调整第二天的计划 | 开发人员(其他人可以参加) | 15 分钟,每天 |
| 冲刺评审会 | 向相关方展示成果并调整产品待办事项列表 | Scrum 团队和关键相关方 | 4 小时 |
| 冲刺回顾会 | 改进团队的工作方式:人员、流程、工具、完成的定义 | Scrum 团队 | 3 小时 |
冲刺计划会 开启冲刺。产品负责人说明哪些目标最重要,开发人员选择他们认为能够完成的条目,团队共同制定冲刺目标。随后开发人员规划如何开展工作,通常会将条目拆分为一天或更短时间内可完成的任务。
每日 Scrum 是开发人员 15 分钟的检查会。它不是向管理者汇报状态。关键问题是:我们能否按计划实现冲刺目标?如果不能,今天要做出什么改变?
冲刺评审会 是一次工作会议,而不是幻灯片演示。团队展示已完成的工作,相关方提供反馈,大家一起讨论下一步做什么,从而更新产品待办事项列表。
冲刺回顾会 为冲刺画上句号。团队挑选少量具体的改进措施,其中最重要的可以加入下一个冲刺待办事项列表。
待办事项列表梳理 不是一个事件,而是冲刺期间的一项持续性活动。团队对即将开展的条目进行澄清、拆分和估算,使下一次冲刺计划会能够快速进行。
有关每个会议的议程和引导技巧,请参阅我们的指南: Scrum 仪式.
冲刺中的分工
Scrum 团队有三项职责。三者缺一不可,冲刺才能顺利运作。
| 角色 | 冲刺期间的主要职责 |
|---|---|
| 产品负责人 | 对产品待办事项列表排序,提出冲刺如何增加价值,解答关于条目的问题,与相关方合作确定下一步工作,并且是唯一可以取消冲刺的人 |
| 开发人员 | 选择工作、制定计划、构建和测试增量、召开每日 Scrum、更新冲刺待办事项列表,并相互问责 |
| Scrum Master | 确保各事件如期进行并控制在时间盒内,消除障碍,指导团队和组织 |
| 相关方 | 参加冲刺评审会,提供反馈,并帮助决定下一步工作 |
请注意,没有人给开发人员分派任务;他们自行组织工作。
如何逐步计划和运行冲刺
这是我们为刚开始运行冲刺的团队推荐的步骤顺序。它遵循《Scrum 指南》,并加入了一些实用习惯。
- 准备产品待办事项列表。 在计划之前,确保排在最前面的条目已排序、清晰,并且足够小,可以在冲刺内完成。上一个冲刺中的梳理工作就是为此而做。
- 检查产能。 列出假期、培训和其他事务,以便了解团队真正有多少时间。我们的 敏捷产能规划指南 介绍了具体方法。
- 商定冲刺目标。 在冲刺计划会中,产品负责人提出目标,团队将其提炼为一句清晰的话。
- 选择工作。 开发人员以近期的速度或吞吐量为参考,从待办事项列表顶部拉取条目,直到达到切合实际的工作量。
- 规划如何完成。 将前几天的工作拆分为任务,并商定谁先做什么。您不需要预先规划所有任务。
- 小批量工作。 先完成手头的条目再开始新的条目。当有人遇到阻碍时,其他人提供帮助;这被称为集群协作(swarming)。
- 每日检视。 利用每日 Scrum 和可视化的 Scrum 看板,及早发现危及冲刺目标的风险。
- 梳理即将开展的工作。 每个冲刺花一些时间准备下一批条目;早期版本的《Scrum 指南》建议这通常不超过团队产能的 10%,许多团队至今仍将其作为经验法则。
- 与相关方一起评审。 展示已完成的工作,收集反馈并更新产品待办事项列表。
- 持续改进。 召开回顾会,选择一两项行动并将其带入下一个冲刺,下一个冲刺随即开始。
一份现成的 冲刺计划模板 为您提供记录冲刺目标、产能、选定条目和任务的地方。
示例:一个两周冲刺的每日安排
以下是一个六人产品团队(周一至周五工作)的典型两周冲刺可能的安排。时间仅供参考;请根据您自己的日程进行调整。
| 天 | 主要工作 |
|---|---|
| 第 1 天(周一) | 冲刺计划会(约 2–4 小时)。商定冲刺目标;选定条目;规划首批任务 |
| 第 2–4 天 | 每天早上召开每日 Scrum。开发人员构建并测试首批条目,逐一完成 |
| 第 5 天(周五) | 在每日 Scrum 上进行冲刺中期检查:目标是否仍可实现?如有需要,与产品负责人重新协商范围 |
| 第 6–7 天 | 工作继续进行。召开梳理会,为下一个冲刺准备条目 |
| 第 8–9 天 | 完成并集成剩余条目。不再开始新的大型条目 |
| 第 10 天(周五) | 与相关方召开冲刺评审会(约 1–2 小时),随后召开冲刺回顾会(约 1–1.5 小时) |
| 下周一 | 下一个冲刺以冲刺计划会开始 |
冲刺目标示例
- 软件产品: “新用户可以使用工作邮箱注册并邀请一位同事,以便我们启动新手引导测试版。”
- 营销团队: “发布网络研讨会落地页和报名流程,以便我们开放 6 月活动的报名。”
- 人力资源团队: “与本月入职的两名新员工一起试行新的入职检查清单。”
- 内部 IT: “将财务团队迁移到新的笔记本电脑镜像,同时不丢失对共享驱动器的访问权限。”
冲刺可以更改、延长或取消吗?
《Scrum 指南》为进行中的冲刺制定了明确的规则:
- 不做危及冲刺目标的变更。 可以讨论新的紧急工作,但团队要保护目标。
- 质量不降低。 不为赶日期而放宽完成的定义。
- 范围可以澄清和重新协商 :随着团队了解更多,可与产品负责人重新协商。只要目标仍然成立,条目可以替换或移除。
- 根据需要梳理产品待办事项列表。
不允许延长冲刺。 时间盒是固定的。未完成的工作退回产品待办事项列表,由产品负责人重新排序;它不会自动转入下一个冲刺,部分完成的工作也不计入速度。
取消冲刺 是可能的,但很少见。只有产品负责人可以取消,而且只有在冲刺目标已经过时的情况下才能取消,例如公司改变方向或市场发生变化。已完成的工作会被评审,未完成的条目退回产品待办事项列表。
如果相关方不断将新工作塞进进行中的冲刺,请将其视为一种 范围蔓延:改为通过产品负责人和产品待办事项列表来处理请求。
如何在冲刺期间跟踪进展
管理冲刺并不需要复杂的报告,但您确实需要了解目标是否按计划推进。
- Scrum 或 Kanban 看板。 “待办”“进行中”“评审”“完成”等列能让人一目了然地看到工作情况,并使瓶颈显现出来。
- 冲刺燃尽图。 将每天的剩余工作量与理想线进行对比绘制。曲线连续数天持平就是一个早期预警。
- 冲刺目标检查。 在每次每日 Scrum 上,询问目标是否仍可实现;这比任何图表都重要。
- 速度或吞吐量(冲刺结束后)。 每个冲刺完成的工作量,用于规划未来的冲刺。参见 敏捷速度图.
- 冲刺目标达成率。 在多个冲刺中,团队达成目标的频率是衡量可预测性的有用指标。
无论跟踪什么,都要用它来帮助团队调整,而不是比较团队或个人。
以冲刺方式工作的好处
- 快速反馈。 相关方每隔几周就能看到可用的成果,而不是等到项目结束。
- 专注。 单一目标和较短的时间跨度可以减少多任务处理和上下文切换。
- 降低风险。 问题在一个冲刺内就会暴露出来,此时修复成本更低。
- 可预测性。 稳定的节奏使预测和规划发布变得更加容易。
- 内置的改进机制。 回顾会为团队提供了定期、受保护的时间来改进工作方式。
- 透明。 目标、待办事项列表和看板使每个人都能看到进展。
常见的冲刺错误及解决方法
| 错误 | 危害 | 解决方法 |
|---|---|---|
| 过度承诺 | 工作溢出,士气下降,预测失去意义 | 根据近期速度和真实产能进行计划;承诺的是目标,而不是每个条目 |
| 没有真正的冲刺目标 | 冲刺沦为一份待办事项清单,缺乏调整的理由 | 在冲刺计划会中写下一句以成果为导向的话 |
| 冲刺内的迷你瀑布 | 分析、构建和测试按顺序进行,因此直到最后一天才有工作完成 | 拆分条目,使每个条目都能在几天内构建和测试完毕 |
| 进行中的条目过多 | 到最后所有工作都只完成了 90% | 限制在制品数量,先完成再开始 |
| 延长冲刺 | 打乱节奏并掩盖真正的问题 | 将未完成的工作退回待办事项列表,并在回顾会上讨论原因 |
| 跳过回顾会 | 同样的问题在一个又一个冲刺中反复出现 | 如有必要可以缩短时间,但一定要召开,并落实一项改进 |
| 频繁更改冲刺时长 | 速度和预测失去意义 | 保持时长稳定,只在深思熟虑后才更改 |
| 把每日 Scrum 当作状态汇报会 | 开发人员向管理者汇报,而不是共同制定计划 | 聚焦于冲刺目标和接下来 24 小时的计划 |
所有敏捷团队都使用冲刺吗?
不是。冲刺属于 Scrum 以及 XP 和 SAFe 等基于迭代的方法。其他方法的运作方式有所不同:
- Kanban 采用带有在制品限制的持续流动,而不是固定的冲刺;计划和发布在需要时进行。比较两者请参阅 Kanban 与 Scrum.
- Scrumban 将两者结合,通常保留计划节奏,同时以流动的方式管理工作。
- 设计冲刺 是另一回事:它是一个结构化的、为期约五天的工作坊(由 Google Ventures 推广),用于探索和测试产品概念。它与冲刺同名,但不遵循 Scrum 规则。
要了解这些方法的比较,请阅读 敏捷方法论的类型.
冲刺模板和工具
您可以用便利贴和白板来运行冲刺,但模板和软件能让工作更容易共享,尤其是对远程团队而言。
- 冲刺计划模板:冲刺目标、产能、选定的条目、估算和任务。
- 冲刺回顾会模板:做得好的方面、需要改进之处和行动项。
- 产品待办事项列表模板:为未来冲刺准备就绪的有序条目列表。
- 用户故事模板:带有验收标准和估算的统一格式故事。
- 敏捷项目计划模板:在一个视图中查看发布、冲刺和里程碑。
如今大多数项目管理工具都支持冲刺。 Jira 围绕面向软件团队的 Scrum 和 Kanban 看板构建,而 Wrike(我们综合评分最高的工具)则适合在运行冲刺的同时还要处理跨部门其他类型工作的团队。
本主题的免费模板
常见问题
简单来说,什么是冲刺?
冲刺是一段短而固定的时间,通常为两周,团队在此期间商定一个目标,开展工作以实现目标,展示成果,然后在下一个冲刺开始前改进工作方式。
敏捷中的冲刺有多长?
在 Scrum 中,冲刺持续一个月或更短。大多数团队使用一到四周,两周是最常见的时长。各个冲刺的时长保持不变。
为什么大多数冲刺都是两周?
两周足以完成有意义的工作,又足够短,可以获得频繁的反馈。它还能使计划和评审的开销保持在合理范围内。这是一种惯例,而不是《Scrum 指南》中的规则。
冲刺和迭代有什么区别?
冲刺是 Scrum 对迭代的称呼:一个重复进行的、有时间盒的开发周期。XP 和 SAFe 等其他方法用“迭代”一词表达同一概念。
Scrum 和冲刺有什么区别?
Scrum 是一个框架,包含角色、事件和工件。冲刺是 Scrum 的事件之一:它是包含所有其他事件和工作的固定时间盒。
冲刺结束时会发生什么?
团队召开冲刺评审会,与相关方一起检视增量并更新产品待办事项列表,然后召开冲刺回顾会以改进工作方式。下一个冲刺随即开始。
冲刺结束时未完成的工作会怎样?
它会退回产品待办事项列表,由产品负责人重新排序。它不算作已完成,也不计入速度,并且不会自动转入下一个冲刺。
冲刺可以延长吗?
不可以。冲刺是有时间盒的。如果工作未完成,就退回产品待办事项列表,下一个冲刺按计划开始。请在回顾会上讨论原因。
谁可以取消冲刺?
只有产品负责人可以,而且只有在冲刺目标已经过时的情况下才可以。取消冲刺很少见,因为冲刺很短,团队通常可以改为调整计划。
冲刺之间有间隔吗?
不需要。根据《Scrum 指南》,新的冲刺在上一个冲刺结束后立即开始。有些团队会安排创新或黑客松时间,但在 Scrum 中这些都在冲刺之内进行。
什么是 Sprint 0(零号冲刺)?
这是一个非正式术语,指第一个冲刺之前的准备期,用于设置工具、环境和初始待办事项列表。《Scrum 指南》并未定义它,许多教练建议尽量缩短,甚至在第一个冲刺中就交付可用的成果。
一个冲刺应包含多少个用户故事?
没有固定数量。几个小故事(每个都能在几天内完成)通常比少数几个大故事效果更好。请以近期的速度或吞吐量为参考。
谁决定冲刺中包含哪些内容?
产品负责人对产品待办事项列表排序并提出目标。开发人员决定能承担多少工作并选择条目。整个 Scrum 团队共同商定冲刺目标。
Kanban 使用冲刺吗?
不是。Kanban 以带有在制品限制的持续流动来管理工作,而不是固定的时间盒,不过有些 Kanban 团队会按节奏定期召开计划或评审会议。