什么是 Sprint Zero?为什么要引入 Sprint Zero?

  • Mark Levison
  • 沙晓兰

2008 年 10 月 4 日

话题:敏捷方法论Scrum架构文化 & 方法

一些团队采用 Sprint 0 来准备他们的产品 backlog、基础设施(开发环境、CI 服务器)……等。这个 Sprint 0 属于 Scrum 的范畴吗?有用吗?

Dan Rawsthorne——Danube 的高级教练,把 Sprint 0 作为团队项目的起始点:

这个念头其实很简单:组织一个拥有下列三个目标的初始 sprint(可以成为 Sprint 0, 或迭代 0,也可以是 Inception Sprint,等等):

  1. 从产品 Backlog 中摘取几个质量条目
  2. 提供一个最起码的可以编写质量过关的代码的开发环境
  3. 无论程序大小,着手编写一段正式的代码
当然,这个 Sprint 0 越短越好。根据我的经验,这个 sprint 可以短到一个星期,当然我建议把它设定为一周。

Mark Woyna 把 Iteration 0 作为 spike 来使用:

负责做计划的团队在计划迭代的最后要有三个可以交付的结果:
  1. 列出所有特性 / 故事的优先级别、初始预算
  2. 发布为每个特性 / 故事安排的迭代 /sprint 计划
  3. 高层次的应用构架,也就是说特性最后将如何实现

Peter Stevens——来自瑞士的敏捷教练在他的一个团队中以 Sprint 0 来估算项目中最重要的特性,通过关于“完成”的定义,重建顾客的信任。和其他人一样,他也把这个迭代的周期设定得比一般周期短。

这究竟是不是属于 Scrum?这个迭代的周期比规范的要短,而且最后的结果也不是所谓的生产可以运行、通过测试的软件?它究竟有没有用呢?

Alistair Cockburn——《Agile Software Development (The Cooperative Game)》一书的作者说:

我私下里有这样一种感觉,有些人发现自己使用 Scrum 在项目启动阶段没有获得任何明显的业务价值,于是就随口说“哦,这是 Sprint 0 周期”,期望就此赶跑门口那些不明真相的人。

Ken Schawber——Scrum 的合作创始人表示赞成:“Sprint 0 被错误地当成是第一个 Sprint 之前的计划周期。”

Michael James——同样来自于 Danube,在回答这个问题的时候反问道:为什么这个不是 Sprint 1, 然后 Sprint 2?……为什么不能每个 sprint 周期都完成一个几近提交的产品来刷新 backlog 呢?

查看英文原文:What is Sprint Zero? Why was it Introduced?

敏捷方法论Scrum架构文化 & 方法