Scrum是一个在软件开发和其他项目中实现敏捷过程的强大框架。这个被高度采用了的框架使用了称为sprint的短迭代工作,以及称为scrums的日常会议,以连续处理项目的离散部分,直到项目完成。Scrum中有三个关键角色:Scrum master、产品负责人和Scrum团队成员。
作为 Scrum 流程的捍卫者和布道者,ScrumMaster在Scrum团队中起到至关重要的作用,他们确保团队使用正确的流程,确保团队正确地召开各种会议,帮助每个人理解Scrum 理论、实践、规则和价值。
Scrum Master 对Scrum 团队而言,他/她是一位服务型领导。Scrum Master 帮助Scrum 团队之外的人了解他/她如何与Scrum 团队交互是有益的,通过改变他/她们与Scrum 团队的互动方式来最大化Scrum 团队所创造的价值。
Scrum Master服务于产品负责人
Scrum Master以各种方式服务于产品负责人,包括:
•尽可能确保Scrum 团队中的每个人都能理解目标、范围和产品域;
•找到有效管理产品待办列表的技巧;
•帮助Scrum 团队理解为何需要清晰且简明的产品待办列表项;
•理解在经验主义的环境中的产品规划;
•确保产品负责人懂得如何来安排产品待办列表使其达到最大化价值;
•理解并实践敏捷性;
•按要求或需要引导Scrum 事件。
Scrum Master服务于开发团队
Scrum Master以各种方式服务于开发团队,包括:
•在自组织和跨职能方面给予开发团队指导;
•帮助开发团队创造高价值的产品;
•移除开发团队工作进展中的障碍;
•按要求或需要引导Scrum 事件;
•在Scrum 还未完全采纳和理解的组织环境中指导开发团队。
Scrum Master服务于组织
Scrum Master以各种方式服务于组织,包括:
•带领并指导组织采纳Scrum;
•在组织范围内规划Scrum 的实施;
•帮助员工和利益攸关者理解并实施Scrum 和经验产品开发;
•引发能够提升Scrum 团队生产率的改变;
•与其他Scrum Master 一起工作,增加组织中Scrum 应用的有效性。
一天的开始
● 更新和检查目前冲刺的燃尽图报表。
● 如果团队落后于时间表,Scrum Master 需要帮助团队想办法追上进度。同时,ScrumMaster需要确保所有完成了的任务都已经被标记成了完成(或者通过PingCode Flow 这样的管理工具自动化实现),这样燃尽图表的数据才准确。
● 检查Sprint待办列表里的条目和相应的任务情况。
检查是否有任何遗漏的信息。
- 遗漏条目的工作量估算信息;
- 遗漏具体任务的估算信息;
- 正在进行和已经完成的任务遗漏任务人信息;
检查是否有任何不一致的信息。
- 是否有已经决定不做了的条目仍旧可以被选中;
- 已经完成了的任务却没有标记成完成;
- 没有完成的任务却被标记成完成;
ScrumMaster需要追踪这些问题,并提醒相应的团队成员做出更正。
工作期间
● 找出所有影响进度的工作。如果需要的话,协助团队解决这些问题。
- 保护团队不被团队外的其他人打扰。
- 教育团队成员:他们应该先尝试自己解决问题,如果解决不了的话他们需要找 Scrum Master 来解决问题。
● 协调 Scrum 每日站会。
- 展示燃尽图;
- 听取团队成员关于每日站会的三个问题的回答;
- 明确下一步行动计划和责任人;
- 和团队分享有用的信息;
● 评审新加入产品列表的用户故事、技术故事和问题,确保新加入的条目可以被正确地指派到相应 Scrum团队。
每日工作结束时
● 和每天开始时一样:评审状态,查看是否有任何遗漏、错误的信息,跟踪记录团队待解决问题的状态。
准备计划会议
● 协调产品列表梳理会议。
● 统计下一个迭代的生产能力。
- 统计团队成员下个Sprint的休假计划,公共假期和其他会影响成员生产力的信息。
- 估算团队下个迭代的生产力。
● 在各种电子和物理工具上更新相应的信息。
计划会议时
● 从头到尾查看产品列表里的条目,并且将条目一个一个地从优先级最高的开始顺序念给团队。
● 协调估算过程。
● 记录团队讨论的内容(例如,估算的工作量,条目的详情)。
● 将相应条目拖曳到下一个Sprint的待办列表。
● 建议团队在工作量范围以外多评估一部分用户故事以备不时之需。
在评审会议上
● ScrumMaster需要组织会议确保相应成员到场。
在回顾会议上
● ScrumMaster组织团队成员一起回顾自上个回顾会议以后团队的工作状态。
● ScrumMaster组织,收集和记录团队成员讨论的信息。
● ScrumMaster协调确认下个迭代团队需要做的改进措施以及负责人。
这两个角色和职责通常会被混淆。正如前面提到的,Scrum master 也可以扮演项目经理的角色,但在角色和职责上存在着以下关键的区别。
| Scrum master | 项目经理 |
角色定位 | 对于使用敏捷方法的项目,Scrum master是一个关键角色。他/她的角色是敏捷开发团队的推动者和教练,需要确保产品按时交付,并达到指定的质量。 | 对于大多数类型的项目,项目经理在所有的项目阶段和活动中都扮演着领导角色,包括计划、领导、管理、监视和结束项目。 |
职责 | ●在整个产品开发过程中支持产品负责人 ●领导Scrum会议,并在sprint计划和执行过程中提供团队支持。 ●向敏捷团队提供指导。 ●确保遵循敏捷原则。协助团队对sprint 列表进行优先排序和管理,以确保及时准确的产品交付。 ●帮助团队处理影响成功交付的任何障碍。 | ●识别并记录业务和项目的要求、计划和进度。 ●确定、记录和管理项目的范围、任务、里程碑、时间表、预算和资源。 ●领导和指导项目团队。 ●确定并分配任务和优先级。 ●分配、监控和管理项目资源。 ●设置、监控和管理项目时间表。 ●管理项目质量参数。 ●制定风险管理和风险跟踪战略。 ●管理所有利益相关者及其期望。 ●向利益相关方传达任务、里程碑、项目进展。 |
参考文献:《天天学敏捷:Scrum 转型记》