Scrum Master与Project Manager的区别

一个传统的Project Manager与Scrum Master到底有什么区别?很多企业在实践敏捷开发时,经常会把Project Manager,Scrum Master和Team Leader混淆起来,甚至在一些公司会让同一个人同时承担以上两种不同的角色。这些公司认为没有必要明确的划分Project Manager和Scrum Master,他们的职责都是为项目成功交付负责。我所经历过得一个组织中,就出现过两种不同的问题:

  1. 组织的开发方法论转型之后,曾经优秀的Project Manager很难适应Scrum Master的角色;尽管进行了Scrum培训和实践,但是这位所谓的Scrum Master实际上常常仍然以Project Manager的角色和工作方法开展工作,结果导致Scrum团队众多的人员离职。离职的原因很简单:不适应团队的管理方式;时常搞不清楚自己处于一个什么样的团队中,甚至有时候都不知道该如何工作了。

  2. Product Owner与Scrum Master无法一起工作。实际上Scrum Master同时还承担Dev. Leader的角色,领导一个6人的开发团队在工作。开发过程中,这位Scrum Master有超过10年的软件开发和项目管理经验,曾经也是一位优秀的软件开发工程师,编码能力和处理项目难题的能力极强;但是在领导开发团队工作时,表现出的控制欲极强,几乎是“家长式”的作风,团队成员都必须听他的指挥。最终的结果是,Scrum开发团队工作效率不高,团队成员之间合作出现问题,相互推诿工作任务,团队气氛紧张而压抑。

其实以上问题是很多从传统开发团队向敏捷开发团队转型过程中都会遇到的问题,如果处理不好,最终结果之一就是人员流失。

那么问题究竟出现在哪里?

1. 角色冲突
尽管Scrum方法论仅仅提供了一个框架,但是Scrum方法论明确的划分了一个Scrum团队中的三个不同的角色:Product Owner,Scrum Master和Scrum开发团队。
在这里其实没有所谓的Project Manager。及时在组织中存在Project Manager的角色,但它也绝不应该出现在Scrum团队中。

一名习惯于传统方法的Project Manager一定是一名能够胜任的Scrum Master吗?答案是“不一定”。现实中,那些“身经百战”的Project Manager习惯了传统的项目管理方式,本质上是项目的“微管理”,动辄就会搬出“百宝箱”中的各种武器:过程管理,过程控制,PMP的理论等等。但是Scrum依赖于团队的自组织和自我管理。团队成员从上到下都深知Scrum过程框架的精髓,团队成员之间有充分的信任和自我管理能力。

角色背后是什么?是职责。

那么在一个职责明确的Scrum团队中,Scrum Master到底负责什么?第一责任就是维护Scrum过程框架中的规则和过程得以实施。但是并不是仅仅停留在表面上。例如:Scrum Daily Meeting并不是在每天早晨开始工作之前,团队成员站立在那里,讨论15-20分钟的工作而已;而是在一个相对固定的时间,所有团队成员在一起分享昨天的工作进度,今天的工作计划,以及Scrum团队遇到的问题。这个“相对固定的时间”也是由团队来决定在什么时间进行Scrum Daily Meeting,而不是由一个人来决定的时间。当然,很多Scrum团队习惯于在早晨上班之后20分钟之内进行,理由是这是一天工作的开始,这个时间更容易被接受。但是如果你所在的公司是一个实行弹性工作制的公司呢?大家可以在早晨8:00至10:00之间到达公司上班。作为Scrum Master你应该如何处理这个问题呢?或许这对你来说是一项挑战。(答案其实很容易,及解决这个问题其实很容易。)

传统意义上来说,项目经理扮演的是领导者、决策者、计划者的角色,他要管理项目和团队,是负责达成项目商业目标的人。Scrum Master更侧重于教练和引导者,是设立在项目和客户之间的角色。Scrum Master不管理实际工作的团队;反而,他会协助产品负责人,辅导团队,确保项目遵循Scrum流程。Scrum Master只负责Scrum流程能够正确、持续的实施,发挥出它的最大效用。

2. 管理的“控制欲”,即权力。
很多做惯了Project Manager的项目经理们认为自己在公司属于中层管理者。无论从年龄还是资历来说,他们都自认为自己所承担的是“管理者”的角色。因为他们时常在谈论“项目管理”,“人员管理”,“时间管理”,“成本管理”,“资源管理”等等。他们本质上表现出来了很强的“控制欲”,他们希望拥有更多的权力。这一点其实与组织文化相关。

但是在Scrum团队中,Scrum Master真的有那么大的“权力”吗?一个很简单的问题,Scrum Master能够为Scrum团队的开发者指派具体的开发任务吗?例如:张三,你必须在明天上午10点之前完成订单管理功能;李四,你需要在明天下班前完成在线支付功能中信用卡支付功能的开发和单元测试。

如果你遇到这样的Scrum Master,你就可以直接和这个Scrum团队道别了。

有时候真的不明白,为什么很多公司在选拔和招聘Scrum Master时,列出了那么一大堆岗位职责和技能要求,希望Scrum Master是一名“十项全能”型人才。

你可能感兴趣的:(Scrum,敏捷开发)