一个标准的Scrum流程主要包括以下几个关键元素:角色、事件(会议)、工件(Artifacts)和迭代周期(冲刺)。这些元素相互配合,使团队能够在短期内高效地交付有价值的产品增量。以下是Scrum流程的详细说明:
1. Scrum的关键角色
Scrum团队通常由以下三个主要角色组成,每个角色在流程中扮演着独特的角色和职责:
- 产品负责人(Product Owner):负责定义产品需求和优先级,管理和优化产品待办事项列表(Product Backlog)。产品负责人代表客户或用户,确保团队交付的工作与客户需求和业务目标一致。
- Scrum Master:负责确保团队遵循Scrum规则和流程,移除团队遇到的障碍,促进团队合作,并帮助团队持续改进。Scrum Master充当团队的教练和服务型领导者。
- 开发团队(Development Team):负责在每个冲刺内完成产品增量的开发、测试、文档编制等工作。开发团队通常由3到9名成员组成,自组织且跨职能。
2. Scrum的关键事件(会议)
Scrum包含以下五个关键事件,这些事件帮助团队计划、执行和评估每个冲刺的工作:
-
冲刺计划会议(Sprint Planning)
- 目的:确定在即将开始的冲刺中要完成的工作(冲刺目标)和如何完成这些工作。
- 时间安排:通常为每个冲刺的第一天举行,时间一般为8小时以内(2周冲刺通常不超过4小时)。
- 参与者:产品负责人、Scrum Master和开发团队。
-
内容:
- 选择待办事项:团队与产品负责人讨论并选择优先级最高的产品待办事项(Product Backlog Items, PBIs),将其放入本次冲刺待办事项(Sprint Backlog)。
- 制定计划:团队讨论并制定如何完成这些待办事项的具体任务,并分配到每个团队成员。
-
每日站会(Daily Scrum)
- 目的:团队成员同步进展,分享计划,并识别和解决障碍,确保团队在冲刺过程中保持步调一致。
- 时间安排:每天举行,时间通常为15分钟。
- 参与者:开发团队,Scrum Master可参与但不干预,产品负责人可旁听。
-
内容:每个团队成员回答三个问题:
- 昨天我做了什么?
- 今天我计划做什么?
- 我遇到了什么障碍?
-
冲刺评审会议(Sprint Review)
- 目的:向产品负责人和其他利益相关者展示已完成的产品增量,获得反馈并讨论未来的改进。
- 时间安排:在冲刺结束时举行,通常不超过4小时(2周冲刺不超过2小时)。
- 参与者:开发团队、产品负责人、Scrum Master、其他利益相关者。
-
内容:
- 演示已完成的工作或产品增量。
- 讨论冲刺成果是否符合预期目标和客户需求。
- 获取产品负责人和利益相关者的反馈,并根据反馈调整产品待办事项列表。
-
冲刺回顾会议(Sprint Retrospective)
- 目的:反思冲刺过程,总结成功经验和改进点,制定改进计划,优化团队的工作方式和效率。
- 时间安排:在冲刺评审后举行,通常不超过3小时(2周冲刺不超过1.5小时)。
- 参与者:开发团队、Scrum Master,产品负责人可选择参加。
-
内容:
- 团队讨论在冲刺期间哪些做得好、哪些做得不好,以及哪些方面可以改进。
- 确定具体的改进措施,并在下一次冲刺中应用。
-
冲刺(Sprint)
- 目的:是Scrum的核心迭代周期,在这个时间框架内,团队集中精力完成一组高优先级的产品待办事项。
- 时间安排:通常为1到4周,固定不变。
- 参与者:开发团队、产品负责人、Scrum Master。
-
内容:
- 团队在冲刺期间专注于完成冲刺计划中确定的工作。
- 所有的工作都围绕实现冲刺目标展开。
- 结束时产生一个可交付的产品增量。
3. Scrum的关键工件(Artifacts)
Scrum使用以下三种工件来透明化团队的工作和进度:
-
产品待办事项列表(Product Backlog)
- 定义:一个动态更新的待办事项列表,包含所有需要完成的产品功能、修复的缺陷、技术性工作等。列表中的条目(PBIs)按优先级排序,最重要的条目排在最前面。
- 维护者:产品负责人负责创建和维护该列表,确保它始终反映最新的客户需求和优先级。
-
冲刺待办事项列表(Sprint Backlog)
- 定义:团队在冲刺计划会议中挑选出来的、需要在当前冲刺内完成的工作任务列表。这个列表是从产品待办事项列表中选取的条目,并细化成具体的任务。
- 维护者:开发团队负责管理和更新冲刺待办事项列表,确保其反映出当前的工作状态。
-
增量(Increment)
- 定义:每个冲刺结束时,团队完成的、可用的产品功能增量。增量必须是“完成”的(符合定义完成标准),并具有可交付的质量。
- 特点:每个增量都应在技术上成熟,并可以随时发布给客户或用户。
4. Scrum的标准流程图解
- 准备阶段:产品负责人准备好产品待办事项列表(Product Backlog),并按优先级排序。
- 冲刺计划会议:团队与产品负责人进行冲刺计划会议,选取即将开始的冲刺中要完成的任务,制定冲刺待办事项列表(Sprint Backlog)。
- 冲刺执行阶段:团队在冲刺周期内(通常1-4周)进行开发、测试和集成,确保任务按计划完成。每天举行每日站会(Daily Scrum)同步进展。
- 冲刺评审会议:冲刺结束后,团队向产品负责人和其他利益相关者展示已完成的产品增量,获取反馈。
- 冲刺回顾会议:团队内部反思和讨论冲刺期间的表现,总结改进点并制定行动计划。
- 重复下一冲刺:团队根据反馈和改进计划进入下一冲刺周期。
总结
Scrum流程的设计旨在通过短周期的迭代和频繁的反馈,快速响应变化和需求,提高产品质量和交付速度。通过明确的角色分工、定期的事件和透明的工件,Scrum能够有效地促进团队合作和持续改进。
作为一个Scrum master,最重要的是理解需求,有效提问,帮助团队深度对齐需求、拆解需求,并且解决团队内的冲突,帮助项目快速迭代,帮助团队成员成长。