为何我从不强调Sprint Goal

发布时间:2022-10-22

本栏目为 EXIN Agile Club 的子栏目。栏目目的是翻译 Mike Cohn 的高质量博客,让大师的智慧可以影响更多的人。翻译已经得到 Mike Cohn 的授权。

如果您有相关意见、建议,可以在评论区给我们留言,我们将会认真对待每一条留言消息。

我承认自己对 Sprint Goal 是又爱又恨。我辅导团队如何去创建 Sprint Goal,但是我也告诉他们,并非每个团队都可以从中受益。

你说我胡说八道?也许吧。

Sprint Goal 被定义成当前 Sprint 的单一目标(single objective)。

我很喜欢这一点。无论是做年度计划、季度计划还是 Spirnt 计划,我都会花大把时间建议组织要去聚焦他们想要实现的目标的范围。无论是组织还是团队,都不乏将目标选择做成“自助餐”的案例。他们会在制定计划时,这里夹一筷子,那里蒯一勺儿……

然而有时,Sprint 无法仅仅聚焦于单一目标。有些团队就是有几件事情需要完成。我们以数字营销为例,一个团队可能需要一个客户构建一个网站,为另一个客户做一些中等规模的功能增强,同时还要为其他 5 个客户做一些诸如 Bug 修复、文档编纂的工作。

此时我们该怎么写 Sprint Goal?我们应该聚焦于新的网站?因为它消耗了我们绝大多数的工作精力。又或者应该聚焦于文档编纂?毕竟那 5 个客户是公司最重要的客户。

有些团队选择放飞自我,将 Sprint Goal 写成“完成我们承诺的 7 个用户故事。”

然而这种行为对团队没有任何帮助。它无法提供一个好的目标所应该且能够提供的清晰度。同时它也过于宽泛,无法帮助团队专注于一个单一目标。写出“完成我们承诺的用户故事”并将其视为 Sprint Goal 的团队,实际上已经放弃了 Sprint Goal 这一概念。

1-Sprint Goal 的初衷

Sprint Goal 的初衷,是帮助团队将注意力集中到最需要被完成的工作内容中。我依然记得在 Scrum 的早期,也就是上个世纪九十年代的时候,这个概念是多么的至关重要。犹记当年所有的团队都将 Sprint 长度设置为 4 周,也没有人做今天被我们称为待办项梳理(backlog refinement)的事件,而极限编程(Extreme Programming)还没有将用户故事(User Story)这一概念带给全世界。

回想当时,团队总是无法记住他们正在做的事情。我能清楚的记得,在某个Sprint 中期讨论时,某个开发者说过这么一句话“请记得提醒我,哪些工作是我们当前 Sprint 尝试去完成的。”

在一个无法充分对产品待办事项列表的进度进行充分体现的漫长 Sprint 中,这位开发者几乎已经彻底忘记了团队正在竭力完成的 Sprint 大目标是什么。

Sprint Goal 的目的正是帮助团队重新聚焦于那个目标。我依然记得我是如何回答他的,同时我的回答也正是所谓的 Sprint Goal,即“多花一些精力用在搜索结果的显示上。”

在 Scrum 的早期,Sprint Goal 通常被用来评估 Sprint,如果完成 Sprint Goal,那么当前 Sprint 就是成功的。反之,则当前 Sprint 就是失败的。

这种看待 Sprint 的方式是有残缺的。一些需要完成的重要事项,经常会被排除在一两句话的 Sprint Goal 之外。

将整个 Sprint 浓缩到一个目标所带来的问题,就和我使用过的那些告诉我将每天最重要的三件事情列出来的 todo list 和个人效率系统软件一样。偿还贷款一般很难成为某一天最重要的事情,但是它必须要在当天被完成。难道真的要等到因为没有及时还贷导致房屋被拍卖我被驱逐出门时,才意识到还贷成为最重要的事情,我才需要去处理它么?

Sprint 是一个团队需要完成的工作所组成的复杂集合体,那些工作并不总是可以被简要概述成单一目标。

2-将目光转向产品待办事项列表

想象一下,某个高夫球手正在标准高尔夫球场打比赛——他的目标就是在四杆之内将球打进洞。他首先在发球台上发球,第二球为短杆,也就是尝试将球进入果岭。接下来再使用推杆,希望可以将球打进洞。球员也可能需要二次推杆,而这就导致了四次击球。

在上述的过程中,高尔夫球手聚焦于一个目标,也就是以尽可能少的击球次数将球打进洞中。这些任务将会通过一系列的任务来实现——长打、短杆,以及一到两次的成功推杆。

我认为类似的方法也适用于 Scrum 团队。高尔夫球手致力于成功地挥好每一杆,因为每一次挥杆都会为当前球洞得分添砖加瓦。Scrum也可以如此,即聚焦于工作、冲刺待办事项列表条目,因为这些这些内容都将引领我们走向成功的冲刺。

这种方法也适用于那些无法塞进某个单一迭代内的工作事项,比如我们之前的内容中谈到的数字代理的案例就是如此。

就像高尔夫球手的每一次击球都可以被视为该洞整体得分的前置指标(leading indicator)一样,团队可以将完成单个冲刺待办事项列表条目视为成功实现某些非正式目标的前置指标。

3-我的建议

如果Sprint Goal 适用于你的团队,无论如何你都应该继续使用它。如果你听到团队询问“当前迭代我们想要完成哪些工作呢?”,那么Sprint Goal将会多有裨益。如果你是Scrum 新手,那么你绝对应该尝试在起初的几个冲刺中尝试编写一下Sprint Goal。

如果你已经尝试过Sprint Goal 但是它对团队不起作用,建议你将这段经历视为有用的实验过程,并立即停止使用它。


你的想法

我的观点说完了,请让我听听你们的想法。我知道很多人完全不认同我的说法,合理的理由也会让我去改变我的想法。

如果你认为我错了,不是简单的一句“因为Scrum Guide是这么说的”,请务必告诉我为什么我错了,我相信这对你我双方都是一个不错的学习机会。

如果你同意我的观点,也请让我知道“吾道不孤”。并且如果你曾经尝试过编写Sprint Goal但是却毫无成效,我很乐意聆听你的故事。

Copyright © 2020 All Rights Reseverd Designed by 5thspace.net      备案号:沪ICP备15017019号-1