一切福田,不離方寸,從心而覓,感無不通。

为什么Scrum不行?

导语:此前小编发了一篇《Scrum敏捷价值观与原则》阅读量杠杠的,发现产品汪们对这种开发方式还是很感兴趣的。

so,小编又去挖掘了一篇老文章,《为什么Scrum不行?》

如果还不知道Scrum敏捷开发的朋友们,同理,还是请出门左转,点击 Scrum 了解下。

以下是原文中提到的9个Scrum不行的理由。除此之外,作者陈皓在里面加入了自己的分析(感谢陈皓提供的精彩内容)。

Reason 1: Scrum的基石是相信人。创造一个安全的环境,这样每个人都能相互学习,相互直言。但是,这是不行的,这世上有很多人并不关心这些,而且政治和竞争到处都是,办公室里无小事,你和别人交心,你相信他们,最终受伤的你自己。你真的以为那里有空间让你可以去犯错,去冒险吗?

Reason 2: Scrum认为只要给员工足够多的自由员工就能做得最好。这该死的理论是基于什么玩意?不可能,人的天性是懒惰的,他们才不会把事做好的,他们只会做相应报酬的工作量,还可能基本甚至达不到其相应的报酬,大多数人都在混日子。尤其是和经理比起来,谁不想能尽快地成为经理或Team leader啊,因为那样他们就可以即不干活,又挣得多。另外,你给他们自由,你就会发现,他们会只会做他们感兴趣的事,要么聊QQ,要么打游戏,看闲书,反正不干正事。直到你催了,他们才动一动。

Reason 3: 因为前面的原因,所以,我们仍然要把一个PM放在Scrum团队的上面做管理,这样才会有产出。于是,PM给团队分配任何,管得细枝末节,事无巨细,天天让你做进度汇报,等等。直至把团队拖垮。

Reason 4:Scrum只不过是一个流程。这世上有太多的流程,尤其是那那些执行CMMI的公司。几乎所有玩CMMI流程的公司,你都能看到的是员工都是那一副副难看的脸。所以,Scrum的流程同样会这样。因为这些都不是开发团队自发出来的,而是上面管你喜欢不喜欢按给你的。Scrum根本不可能增进你的软件质量和技术,只能是优秀的人才才可能!使用Scrum的公司都是些吝啬鬼,他们不愿花大钱招优秀的人,他们妄图使用Scrum这种东西让现有的这些廉价劳动力发挥更大的生产效率,Scrum成了push程序员最有用的工具。

Reason 5:Scrum delivers ‘business value’。不是这样的,实际上,Scrum不可能。这有很多原因。真正了解业务的那帮人根本不可能加入项目团队,那些人谁TMD愿意和苦逼的技术人员加班啊。 那些人喜欢和我们的用户吃吃喝喝,花天酒地的,根本不会和你们那些奇怪的东西(如:backlog)或是那堆ugly的内向古怪的技术人员打交道,更别说什么技术了。所以,你的团队就像一个客服团队或救火队一样疲于奔命。

Reason 6: 一个敏捷的团队应该是持续进步的。这就是为什么Scrum总是在问什么干得好,什么需要改进,并定义行动方案。你真的以为员工想进步吗?让他们不得不去想想自己和团队怎么进步,然后他们还不得不去执行行动方案。别天真了,人的天性是不喜欢改变的,人的天性是习惯于一些按部就搬的事,也许那样做令人讨厌,但是人家还是能干点东西出来。如果你逼着人家改变,你就是在压迫人家,人家自然会反抗。

Reason 7:Product Owner专注于 ‘what’ 和 ‘why’ 的问题,开发团队决定 ‘how’。很不错的分工,于是可以造就一个即高速有重质量的团队。然而,这根本不行。你的Product Owner马上就想要这个功能,他才不管你的软件开发的技术难题,人家只要快,要你meet deadline,要你给我们重要的客户做出承诺。另外,你千万不要以为你们可以轰走这个初级的product owner,因为他的后台是直接汇报到高层管理。你作为一个程序员可能只是其个小部门的一个小喽啰,或者只是外包公司,你觉得可能吗?你觉得建立信任可能吗?

Reason 8: 软件质量和生产率成正比。也就是说,质量越高,生产率越高。如果质量不高,你开发效率就会低下,但是谁管呢?我们朝九晚五的上班,质量好了也是做8小时,质量差了也是做8小时,无所为嘛。另外,我们的project manager (或者是Scrum master!) 总是会批评我们没有按计划完成。所以,这根本不可能。

Reason 9: “是的,如果我们只做需要的功能,那么我们就会最低的成本,对吗?”,为什么这世上总是会有这些幼稚的人?这种事怎么可能啊。很多很多的银行或保险公司的项目在你还没有启动项目前就谈好了一个价格(可能还会有回扣),为了打单子,销售什么都干得出来,让你去做项目是因为你是廉价劳动力,而且,他们会不断地加需求,因为软件合同谈好的价格时候,连需求都没有,你去做了才有,还是模糊和不确定或根本就是错的,然后需求是越来越多,越改越多。等你精疲力尽的时候,你才意识到,销售早就把你卖了。

有人看到这篇文章后也分享了团队实践Scrum后的心得,他觉得在他的团队里不适用Scrum有几个原因:

1.大家对技术不熟悉,因为目前主要的工作量在前端。大家以前都是做java后台的,对js不熟悉,把js当作java来面向对象。而且没有一个成熟的控件库使用。

2.没有在项目开始前做足够的技术调研。本来,应该有个architector来做这些事情。我觉得什么TDD,就是胡扯。没有前期调研,什么都是假设我们能做到,然后就去break down,然后就是估时间,只能是瞎估。估完了,真正implement的时候才发现,一堆东西stand in my way。

3.人的本性就是利己。如果一个team的performance,不和salary挂钩,大家凭什么会齐心协力,deliver更快,更好。目前情况下,scrum只是pm push developers的工具。现在,大家都想到偷懒的方法,就是尽量多估一些时间,或者implement的时候粗一些,反正都是一个个task领的,谁知道bug是谁的code导致的。以前如果一个人responsible for one module,就很容易知道谁的代码质量不高。

4.user story 拆分的不好,容易漏掉很多东西。大家现在都关注task,只想着做完就拉倒,根本不会想着各个task之间的边界和交叉影响。而且,大家现在就习惯看看task就做了,根本不会去看case,所以有些重要的flow全都漏掉了。

5.pm就是scrum master,整个team就是在一个不平等的环境下,scrum只不过是pm试验的工具,能在她的简历上添砖加瓦。我们只不过是小白鼠。

另一种观点认为,Scrum适用于一帮资深程序员组成的team,每个人都是牛人,每个人都有激情干活,这样才work。在国内大家只是干活拿工资,没什么激情,很不适合Scrum。

Scrum就是一把双刃剑,如何用、是否合适还是要看具体的情况。那么,您的团队是否采用过Scrum模式,效果如何呢?

 

英文原文出自:《Why Scrum will never work》(很抱歉原英文链接小编已经找不到了,如果有哪位找到了这篇原英文链接,请告诉小编哦!)

from:http://www.woshipm.com/pd/85814.html