Module 03 · Agile & Scrum敏捷与 Scrum
Sprint PlanningSprint 计划与管理
学习目标
观看本视频后,你将能够:
- 描述Sprint 计划
- 解释Sprint 目标为何重要
- 描述如何主持Sprint 计划会议
- 为用户故事分配估算与标签
- 制定一个Sprint 计划
Sprint 计划会议
在Scrum过程中,我们已经讨论过产品待办事项列表(Product Backlog)和待办事项精炼(Backlog Refinement),接下来我们要进行Sprint 计划会议,目标是生成Sprint 待办事项列表(Sprint Backlog)。
Sprint 计划会议的目标
Sprint 计划会议的目的是决定下一次 Sprint 中要完成的用户故事,并明确我们在接下来的两周内能够完成多少工作。最终的成果是制定出一个Sprint待办事项列表。
谁应该参加Sprint计划会议?
参与此会议的人员包括:
- 产品负责人(Product Owner)
- Scrum Master
- 开发团队(Development Team)
这个会议只包括核心团队,不邀请利益相关者或其他外部人员。
Scrum中的三个角色
- 产品负责人(Product Owner)
- Scrum Master
- 开发团队(Development Team):
- 这包括软件工程师、测试人员、运维人员,甚至是业务分析师等。
- 重要的是,开发团队是一个跨职能的团队,不仅仅包括软件工程师。
每个Sprint都应有目标
每个Sprint都应该有一个清晰的目标,确保团队明白要达成什么。
- 产品负责人需要明确表达Sprint的目标。
- 有时产品负责人可能难以确定Sprint的目标,他们可能会想着完成整个项目,但实际上需要思考在接下来的两周内能完成哪些任务。
- 目标明确后,团队会从产品待办事项列表中选出那些能支持目标的故事,确保每个人都理解这些故事的意义及它们如何帮助实现目标。
目标的重要性:
在Sprint过程中,团队成员时常需要回顾目标,确保自己没有偏离方向。如果任务过于复杂或者过度工程化,团队可以根据目标进行调整,确保交付符合客户需求。
Sprint计划的执行
开发团队将执行以下任务:
- 从产品待办事项列表中选取故事,并将其移动到Sprint待办事项列表中。
- 为每个故事分配故事点(Story Points)。
- 如果待办事项精炼时已经为故事分配了故事点,开发团队需要检查并确认这些估算是否合适。
规划扑克(Planning Poker)
- 规划扑克是一种估算故事点的常见方法。团队成员通过投票的方式(例如展示数字3、5、8等),讨论并最终达成共识,决定每个故事的规模。
- 团队的共识非常重要,确保大家对故事的估算达成一致。
确认每个故事的可执行性
- 确保每个故事都包含足够的信息,以便开发团队可以开始工作。
- 在Sprint过程中,团队不应该频繁地提问,而是应该能直接进入开发状态。
达到团队的速度(Velocity)
- **团队速度(Velocity)**是指团队在一个Sprint中能够完成的故事点数量。
- 速度的重要性:
- 速度会随着团队经验的积累而变化,估算会越来越准确,团队的工作能力也会逐渐提升。
- 速度在不同团队之间不可比较。每个团队的估算标准不同,因此不能直接比较两个团队的速度。
关于团队速度:
团队的速度随着经验变化而变化。一个团队可能会认为3个故事点代表中等难度,而另一个团队可能认为5个故事点代表中等难度。因此,速度与团队的估算方式息息相关,不能拿不同团队的速度直接做对比。
创建Sprint里程碑
在Sprint计划中,一个里程碑(Milestone)可以帮助团队明确目标。在ZenHub中,可以使用里程碑或Sprint来跟踪进度。
- 我通常会创建一个里程碑(Milestone),给它一个简短的标题,标明目标,例如Sprint 1: 部署到云端。
创建里程碑的步骤
- 标题:简短明了的标题,例如“Sprint 1: 单个计数器”。
- 描述:详细描述本次Sprint的目标,例如“实现一个单计数器并部署到云端”。
- 起止日期:设定Sprint的起始日期和结束日期,例如“开始日期:7号,结束日期:18号”。
- 持续时间:建议设置为两周,有些团队可能选择一周,但三到四周的Sprint可能导致频繁的变化。
从产品待办事项列表创建Sprint待办事项列表
通过将产品待办事项列表中的故事移动到Sprint待办事项列表,我们开始构建Sprint计划。
- 每个故事都会分配故事点,并决定其大小(小、中、大)。
- 通过这种方式,我们确保在Sprint计划中不会超出团队的速度。
分配故事点
- 打开每个故事,团队讨论并决定其估算值(例如,小故事1点,中等故事3点,大故事8点)。
- 每个故事分配完成后,将其移入Sprint待办事项列表,并更新当前Sprint的故事点数。
停止添加故事,达到团队速度上限
- 一旦达到了团队的速度上限,就停止添加更多的故事。
- 假设团队速度是18个故事点,我们会停止在达到这个数量时,确保不会过度承诺。
故事点与时间无关:
故事点代表的是工作量,而不是墙上的时钟时间。通过使用故事点,团队可以灵活地处理不同规模的任务,确保每个Sprint的工作量符合团队的历史承诺。
总结
在本视频中,你学习到:
- 产品负责人的责任是明确表达Sprint目标
- 开发团队的责任是创建Sprint计划
- Sprint计划通过将故事从产品待办事项列表转移到Sprint待办事项列表,直到达到团队的速度上限。