×

Loading...

关于敏捷开发中scrum master角色的疑问

本文发表在 rolia.net 枫下论坛我最近好些年一直在所谓的agile team中, 大家采用的也都是agile开发的流程。 无非是spint plan, daily scrum, srpint review, sprint retro. 最近读了关于敏捷开发的文档, 对其中scrum master这个角色感到很疑惑。

根据scrum的创始人所写的guide:
The Scrum Master is responsible for promoting and supporting Scrum as defined in the Scrum Guide. Scrum Masters do this by helping everyone understand Scrum theory, practices, rules, and values.
基本上就是scrum teamj建立之初, 帮助培训关于scrum的概念的。 可是等到team 工作上了正轨, 大家也都熟悉scrum的工作方式了, 为什么还要保留这么个scrum master在team中呢?
scrum强调scrum mater不应该是领域内的expert, 应该是专职的scrum master. 问题是非领域内的人, 对每个sprint goal, sprint plan能提出什么有可行性的建议呢?

举个我之前工作中的例子, 我们组几个开发员一直按scrum开发流程工作, 突然有一天公司给派了个scrum master来, 据说是个scrum专家, 好像确实也挺不错的, 带着大家搞活动, 要让大家领略真正的agile精神。 比如大家合作吹气球, assemly一个高科技玩具, 寓教于乐, 还挺吸引人的。 问题是scrum不止是这些活动, 我们有真正的开发工作, 这个专家又不懂技术, 她也不大了解组里几个沉默寡言不大说话的才是资深开发人员, 就按照她自己的喜好把一些难度跨度都很高的任务给了她认为有能力的开发员。 那个开发员其实挺不错的, 但是经验还不足, 结果组里的开发工作搞得乱七八糟。
还有些不那么professional的因素, 那个scrum专家本身是非常political的人, 爱搞些手段什么的, 带着个scrum mater的头衔, 别人也不好反驳她。总之那个team后来很乱, 最后散伙了。

就我从理论中学到的, 还有实际工作中遇到的问题, 我觉得scrum master这个角色是个trainer的角色, team建立初期, 跟着跑几个sprint, 然后就应该撤销掉才是。想听听大家的意见。更多精彩文章及讨论,请光临枫下论坛 rolia.net
Report

Replies, comments and Discussions:

  • 工作学习 / 学科技术 / 关于敏捷开发中scrum master角色的疑问
    本文发表在 rolia.net 枫下论坛我最近好些年一直在所谓的agile team中, 大家采用的也都是agile开发的流程。 无非是spint plan, daily scrum, srpint review, sprint retro. 最近读了关于敏捷开发的文档, 对其中scrum master这个角色感到很疑惑。

    根据scrum的创始人所写的guide:
    The Scrum Master is responsible for promoting and supporting Scrum as defined in the Scrum Guide. Scrum Masters do this by helping everyone understand Scrum theory, practices, rules, and values.
    基本上就是scrum teamj建立之初, 帮助培训关于scrum的概念的。 可是等到team 工作上了正轨, 大家也都熟悉scrum的工作方式了, 为什么还要保留这么个scrum master在team中呢?
    scrum强调scrum mater不应该是领域内的expert, 应该是专职的scrum master. 问题是非领域内的人, 对每个sprint goal, sprint plan能提出什么有可行性的建议呢?

    举个我之前工作中的例子, 我们组几个开发员一直按scrum开发流程工作, 突然有一天公司给派了个scrum master来, 据说是个scrum专家, 好像确实也挺不错的, 带着大家搞活动, 要让大家领略真正的agile精神。 比如大家合作吹气球, assemly一个高科技玩具, 寓教于乐, 还挺吸引人的。 问题是scrum不止是这些活动, 我们有真正的开发工作, 这个专家又不懂技术, 她也不大了解组里几个沉默寡言不大说话的才是资深开发人员, 就按照她自己的喜好把一些难度跨度都很高的任务给了她认为有能力的开发员。 那个开发员其实挺不错的, 但是经验还不足, 结果组里的开发工作搞得乱七八糟。
    还有些不那么professional的因素, 那个scrum专家本身是非常political的人, 爱搞些手段什么的, 带着个scrum mater的头衔, 别人也不好反驳她。总之那个team后来很乱, 最后散伙了。

    就我从理论中学到的, 还有实际工作中遇到的问题, 我觉得scrum master这个角色是个trainer的角色, team建立初期, 跟着跑几个sprint, 然后就应该撤销掉才是。想听听大家的意见。更多精彩文章及讨论,请光临枫下论坛 rolia.net
    • Agree. Agile is only a way of project management, and scrum is one of the tools. +2
    • 撤了她吃什么?
      • 我是指当前整个开发领域似乎大家都默认了Scrum master这个角色, 并没有很多的质疑, 为什么?
        • 俗话说人云亦云。我来问个问题,既然都agile了,那还要不要按时暗量交货呢?
        • 你看样子对西方政治不熟悉,这个不就是三权分立嘛,如果只有两权,是不稳定的,必定东风压倒西风或反过来,
        • scrum master不是team的领导,team是自治的,但刚开始玩这个,大家不熟悉,所以给了她机会过官瘾,实际上她的作用是跟po扯皮
          • 扯皮的意思是开发组认为任务太重,po认为任务太轻,扯呀扯,最后扯平了,开工
            • 有了SM,产品经理就不用跟程序员直接打架了。:))
              • 可是我觉得SM没有权利决定任务需求和开发两边的活动, 只是督促整个agile team按时开会什么的。任务轻重应该由PO和开发组之间协商。
    • 即使整个团队已然是比较有敏捷经验之后,在敏捷开发过程中还是需要有人来做协调工作,比如组织会议,促进事件,屏蔽干扰等等...
      也许不是一定,但还是经常需要一个专人。我个人觉得最好是公司内部的 people person 来承担 --- 而不是空降兵 ---- 空降兵在完成 knowledge transfer 之后基本上就派不上太大用场了...
      • 这些工作PO不能做吗? 为什么要专人做呢?从PO的职能讲, 做这些事情也不违和啊?
        • 所有工作都可以组员兼职做,但 PO 主要是设计产品的 ---- 就好比在瀑布式开发里 BA / PM 也是两个角色一样...
        • Lynda.com里有两个关于Scrum的课程,Scrum Basic 和 Scrum Advance,看完就明白SM和PO的职责不同所在了。
    • 我就有SM证书,这东西有屁用。Scrum是一个商业公司,关键还是看什么人。工具只是辅助。有了聪明的人什么工具都好用。否则就是玩形式及玩政治。 +2
      • 发明这套东西的是聪明人,能把公司都忽悠的以为它有有用,整出一整套产业链。事实上真的agile比waterfall开发的项目成功率高了吗?still a myth.
        • waterfall 失败几率还是大,特别是工期太长
        • 他们适合不同style,scope的project。需要可以迅速release的,agile还是更适合。
      • agile 最适合的是 startup 小团队 ---- 人人都有主人翁意识,想做好事情,6 个月时间产品面世公司要么上市要么倒闭,无需顾虑5年 roadmap, 5 个半月或 7 个月做出来都问题不大,但所有人目标明确,上班不刷 rolia... lol...
        • Agile团队应该高度自治,对team member 要求很高。
          • 你们见过符合这些内外部条件的Agile team吗?
            • 如果这样的team很难获得,那么就和找不到屠龙刀来完成屠龙的任务一样。世上如果没有屠龙刀,光有屠龙技就和没有一样。
            • 如我所说,一个公司刚刚起步时的核心开发团队很有机会 agile,公司做大了,项目周期长了,招的人多了,基本上就很难了... 基本是可遇不可求了...
            • 找一组牛人不容易,但找一个还是容易的,一组牛人互相打架,反而不行。自治的意思是team内部达成共识,难的交给牛人,容易的交给猪人。
    • 是不是整个公司只设立一个SM就可以了, 类似于coach的角色, 监督所有scrum team的活动, 不用每个组都设立一个吧
      • 没错,很多公司都这样干
        • 甚至拿coop当SM
        • 那么development team中是不是应该有一个类似tech leader的角色, 不然遇到技术争议或是安排任务方面的争议, 谁来仲裁呢?
          • 这就是自治的意思,牛人是内部竞争胜出的,不是上面指派的
            • 这个会不会太模糊了? 万一一个组里俩大牛呢? 万一一个很牛, 一个不那么牛但特别绞牙呢? 万一一个组都是非牛呢?没有一个明确的从制度上保证的机制, 实际作起项目来, 这个。。。。。。
        • 这么作不太规范,因为SM在一个Scrum team里其实是有很多事物的,而且要主持每天的standup, 很难share
          • 主持standup吗? 3-9个人的会, 不需要主持人啊, 大家伙围一圈, 如果讨论需求, po主导讨论, 如果讨论技术, 开发组主导讨论, 两边SM都插不上话啊? 用不着SM主持啊
            • plan meeting和review meeting由PO主持,retro由开发组主导,也都没SM什么事。
    • 说到底SM是为了帮助team理解并遵循scrum的各种activities, 那么到team理解并遵循了, SM就完成使命了。 SM并不是在项目开发过程中的一个角色。
      • 能搞定工期和需求完成的话其实没什么不可的。只是敏捷有宗教化的倾向,经常有人解释某些敏捷项目不成功是因为他们没正确按照敏捷方法所致。这方面很多人是比较死板和教条的。
      • 我是说你的理解和敏捷教科书说的有出入,但从实用角度看,没什么不可的。目的不就是按期完成产品需求嘛!
        • 啊宰尔的目的不就是到期不完成需求么?
          • 啊哈,高人。
    • 感觉Scrum Master 就是PO和dev team之间的一个裁判。TA 不应该concern schedule,# of features,以及用什么技术。TA不是项目经理。TA的任务就是保证Scrum的best practices被很好地执行。 +1