Sprint 计划的主要目标是要承诺在 sprint 结束时“计划交付哪些东西”。一旦做出承诺,整个团队齐心协力完成目标。Scrum master 会克服任何影响团队效率的障碍。理想情况下,团队应该完成承诺的任务,但是,如果团队总是过度承诺或者过度交付,就得引起我们的注意。
过度承诺意味着团队不能交付。它是指团队承诺的任务比能够交付的要多,而实际上无法交付这么多。总是过度承诺意味着或者团队不能意识到他们的生产效率,或者是外部因素促使他们过度承诺。
在 Scrum Development 讨论小组的一次讨论中, Dave Milner 提到,
像这种管理层的介入(比如要求团队“承诺”完成所有的 sprint 任务)会扩大这种情况。极端情况下甚至会从过度承诺发展到承诺太少。
过度承诺导致交付失败,会降低团队士气。 Jeff Heinen 提到,
团队进入 sprint 迭代,知道无论如何也没法完成所有任务,实际上等于没有承诺。他们并没有自组织起来,以求达到目标,而只是一群乌合之众,被强力捏合在一块。
第三个 sprint 迭代后团队仍然过度承诺,隐含着团队不是自我管理的。我敢打赌他们决对没有维护一个正确的 sprint 工作列表,我也敢打赌每日站立会议上你没有听大家讨论怎样才能完成目标。
从另外一个方面来说,过度交付意味着团队不能做出承诺。 虽然听起来挺好,然而如果一个团队总是过度交付,说明他们承诺的太少。 Jim Schiel 建议说,
每个 Sprint 周期中,你的团队承诺完成多少工作依赖于很多方面,首先就是如果你的团队没有完成所有任务,是否仍然感觉舒适?许多 Scrum 团队会故意承诺的少一些,因为他们的工作环境(或者印象中的工作环境)是这样的,如果没有完成所说的目标就会有人对他们表示不满。
Jim 说要想处理过度交付,就要鼓励团队做出能完成的、积极大胆的承诺,不要因为没有完成目标而去惩罚他们。他认为,应该鼓励团队在 Sprint 计划时对承诺积极大胆一些,并能采取措施持续改进团队的表现。
不同论坛的多数敏捷专家相信,应该由团队自己做出承诺,不要受任何外部影响。 Alistair Cockburn 补充说一旦把选择权交给团队,团队就可以按照自己的偏好决定,是什么因素促使他们承诺交付多少工作,他给了一个有趣的例子,
我拜访了两个几乎背靠背的团队,一个团队说,我们很高兴能够完成所有任务。但是如果任务总比我们能够完成的多,当然会感到很沮丧……另外一个团队则说,我们更喜欢任务比能够完成的多一些。这样我们永远不会犹豫下一步做什么──总会有一些事情等着你去做。
所以虽然过度承诺和过度交付听起来像危险信号,然而,归结起来只有一个原因,就是团队更喜欢哪一个。用 Ron Jeffries 的话说,
在我看来,你的问题不是生产效率,而是可预测性。
如果可预测性是团队想掌握的本质特征之一,那么就需要走好过度承诺和过度交付之间那座独木桥。
评论