上图就是sprint里要做的事。Sprint是scrum框架的核心,是所有的想法、主意转换为价值的地方。所有实现产品目标的必要工作都在sprint里完成,这些工作主要包括Sprint 计划(Sprint planning)、每日站会(Daily Scrum)、Sprint复盘(Sprint Review)、Sprint 回顾(Sprint Retrospective)。
Sprint一般持续一个月或两个星期,也有更短时间,这个时间长度是固定,一般定下来后就不轻易去调整。这个持续时间长度不适设置得太长,太长的话,容易让事情变得复杂,也更容易增加项目风险。也会让sprint持续地频繁地接收反馈这一大优越性丧失。持续地频繁地接收反馈对于Scrum来说是至关重要的,我们可以通过这些反馈,来检查我们是如何做事的、我们正在做什么。通过检查这些我们正在做的事和方法,及时发现问题并做出调整。使Sprint产出增量更有价值。
每一个Sprint应该在上一个Sprint结束后马上开始,保持连贯性。
在Sprint中,正常来说都会遇到各种情况,我们必须做改变和调整,否则会影响实现产品的目标,因此:
在Sprint中,不积极做出改变会损害目标的实现
在Sprint不断实践中一个正常的现象是质量是会不断提高的,这和熟能生巧是一个道里,如果出现了质量下降,Scrum master就要先思考一下原因了,并及时做出调整。
Sprint是转化想法的地方,快速和频繁的反馈是Scrum的精核(精神核心),这就给了我们机会去优化产品待办列表,以便能跟上市场的变化。如果还做着市场不需要的东西,那这个Product Owner就可以走人。
Sprint的生命周期的长度是固定的,所以每个Sprint的范围都必须澄清,不能把所有的工作都放到一个Sprint中来完成,只能按优先级来考虑,每个Sprint实现一部分小目标,通过小步快跑的方式,最终实现产品的目标。
我们来谈谈产品目标(product goal)和Sprint目标(Sprint goal)。
产品目标包含在产品待办列表中,它是一个长期的目标,这个大目标,需要许多个小目标来实现,体现出来就是产品待办列表。Developer需要一个一个地去实现这些目标。Sprint目标就是当前Sprint要完成的目标,Sprint目标就是要去实现产品待办列表中的目标,做完一个再做一个,一步一步地完成,最终实现产品的目标。
对Scrum来说,上一个Sprint的经验对下一个Sprint是很有帮助的。经验主义在Scrum是很有用的。尤其在一个复杂的环境中,用前面获得经验开展工作,边做边检查和调整,提高Scrum团队的能力。
这里同时也要强调一下:
前瞻性的决策只能由Scrum团队根据已经发生的事情做出。虽然已存在各种各样的预测方法,如 burn-downs、burn-ups(燃尽图)、cumulative flows(累积流图)。虽然已被证明是有用的,但这些并不能取代经验主义的重要性。
提醒一下,在我们Scrum中的经验是会不断更新,以适应新环境、新情况,而不是一成不变的。这要与静止的刻板的经验主义区分开。