敏捷开发之SCRUM 的三个角色

在SCRUM 方法中将项目的利益相关者分成两大类:Pigs角色与chickens角色,pigs即为项目组的实际参与人员,chickens为项目组的外部人员,包 括经理、最终用户等等。Pigs在scrum中细分为三个角色:Scrum master、Product owner、Team,这三个对等地位的角色构成一个平衡的铁三角推动整个项目的进展。

Scrum master不是项目经理,他没有分配任务的权力,没有考核的权力,没有下命令的权力,他在项目组承担了如下的细分角色:

(1)会议主持人

他负责主持四个主要的会议:策划会议、每日站立会议、迭代评审会议、迭代回顾会议。

(2)牧羊犬

他负责屏蔽项目组外部的干扰。

(3)雷锋

他给product owner、team提供帮助,帮助product owner确定需求、排定优先级,帮助team做估算、分解任务、完成任务。

(4)外交官

当项目组外部有人不理解项目组的工作时,他负责去解释说明,负责对外发布项目组的信息。

(5)教练

他指导项目组的成员按照SCRUM的原则、方法做事情,当出现偏差时,他去纠正,可以说他是精神教父、他也是警察(QA)。如果有项目组的成员不熟悉SCRUM的方法,他要去提供相关的培训。

(6)清道夫

他负责排除在项目进展中遇到的各种障碍,如果他没有能力或资源他可以协调项目组的其他成员一起来排除障碍。

SCRUM master.并非固定的由一个人承担,可以在一个团队中,有能力的、熟悉SCRUM的成员都可以担当SCRUM master。

Product owner是产品的负责人,或者讲是需求的负责人, 他在项目组承担了如下细分角色:

(1)领域专家

他是需求方面的专家,熟悉需求。他知道客户、最终用户、以及其他利益相关者对项目的真正需求是是什么。他负责编写用户需求、维护用户需求。

(2)需求决策人

哪个需求重要,哪个需求不重要,需求的优先级如何排列,在某次发布中要发布哪些需求是他来拍板的。他负责来平衡需求、进度与资源的关系。

(3)需求讲师

他负责在项目进展过程中给项目组的其他成员讲解需求的含义,对需求进行答疑。

(4)测试员

他负责编写每个需求的验收标准,功能测试用例。

(5)验收人

当项目组成员完成某个需求后,是product owner进行功能测试,进行验收,他认可后才能认为某个需求完成了。

Product owner可以来自于用户、客户、销售部、产品策划部门或者是开发部门的需求分析人员,无论是来自哪,需要满足如下的要求:

(1)Collaborative:易于协作、易于沟通;

(2)Representative:有代表性的,能代表用户、客户、市场的利益;

(3)Authorized:有授权,得到了用户、客户、市场等的授权,有对需求的决策权;

(4)Committed:尽责,能够认真的、尽职尽责的工作;

(5)Knowledgeable:在行,明白,熟悉需求;

以上的5项要求可以简写为CRACK,这是我们的理想,在现实中找这样的product owner有一定的难度。

Product owner是一个角色,并非指是一个人,可以是多个人,但是如果是多个人,这多个人要协调一致,对需求的理解与解释是一致的。

Team是技术的责任人,他们负责实现这个系统,他们是自我管理的,不需要外部的管理者来管理他们。在一个SCRUM团队中,一般整个团队(包含 product owner,scrum master)不超过10人,team应该是一专多能的全才型选手,而不是那种专业化分工的团队,这样才能保证团队的效率比较高,也易于沟通。团队的成员 一般都应该是专职的人员,不能兼职同时做多个项目。team承担了如下的细分角色:

(1)设计人员

对系统进行简单设计。

(2)实现人员

负责实现整个系统,并对系统执行单元测试,构建整个系统。

(3)管理人员

大家一起来估算、一起来选择任务、一起来跟踪进展情况。

Product owner定义了这个项目做什么,Scrum master从过程上保证了如何实现这个项目,Team从技术上保证了如何实现这个项目。