84人参与 • 2024-08-06 • 驱动开发
前面写了一系列极限编程的分享,目前这系列先告一段落,后面等我们禅道20系列版本重构完再和大家分享tdd方面的经验体会。极限编程聊完了,接下来和大家聊聊scrum。scrum市面上相关的书籍、视频和分享比极限编程要多很多,我不做赘述。更多地是想和大家聊聊:如何更好地导入scrum?
如果企业有预算,最好的方式当然是请资深的敏捷教练来做scrum的导入。敏捷教练有比较扎实的理论知识、丰富的经验和灵活的方法,再加上个人的影响力,可以按照标准的scrum框架来进行导入。但现实中更多的情况是,团队中一位小伙伴通过自我的学习,了解掌握了scrum,想在团队中进行导入,这时候应该怎么办呢?如果你对团队有足够的影响力,团队也比较开放,也可以尝试按照标准scrum的框架来导入。但如果上述的假设不存在,可以考虑渐进式的方式来导入。
很多团队在导入scrum的时候会遇到很多阻力,执行效果比较差。如果分析原因的话大家可能会归结到团队成员的能力或者素质上面。但如果换位思考的话,这个问题也许更容易解决。人对陌生的事物是天生警惕、排斥的。如果一上来就完全按照scrum的标准概念来执行,“好家伙全是新概念”,会容易遭受大家的阻力。比如scrum master这个角色,如果站在项目经理角度来思考:那还需要我做什么呢,是不是要革我的命呢?所以我们在导入scrum的时候不妨使用中性化的概念来导入。
比如原来叫产品经理还是叫产品经理,不用一定叫product owner;原来的项目经理还是项目经理,不用一定叫scrum master;需求还可以用需求的概念,可以先不用用户故事来整理需求;计划会议可以拆分成需求讲解会议和任务拆分会议,站立会议可以叫做每日晨会,功能评审演示可以叫做验收会议,回顾会议可以叫做总结会议。总之用大家之前习惯的词汇,这样可以让大家更容易接受,减少阻力。
故事点在业内有很多的讨论,也有很多的争议。我们融平台最新的一期直播还专门邀请了三位嘉宾来讨论故事点,大家也提了很多很有趣的话题。我的观点是可以不用故事点,而是使用工时或者人天的方式对需求进行估算,简单直接,也容易理解。因为用什么单位不重要,估算的准确与否也不重要,重要的是这个估算的过程。估算过程是团队对需求进行澄清对齐的过程,这才是最重要的。
敏捷开发都会强调团队的自我管理。但如果从保证结果角度来看,团队分工其实是有最佳组合的。任务自由领取方式得出的组合未必是最佳组合,甚至有很大风险。比如一位新手领取了非常重要的设计任务,就不见得合适。当然从长远来看,我们是需要逐渐培养大家的自我管理意识,但这需要过程,需要通过一个个迭代结果的达成来逐渐建立团队成员的信心。所以从这个角度上讲,项目经理保留对人员分工调整的权力还是很有必要的。可以让大家先来挑选,然后再做统一的调整。
所以我的观点是采用中性化的概念、渐进式地导入scrum。当团队跑了若干个迭代之后,大家也都熟悉了新的流程,这时候可以再和大家做scrum的培训,正式地导入标准的scrum。
scrum是最小管理框架,它里面的每一个流程都有它的价值。我们可以不用标准的scrum概念,可以不用故事点,可以做任务的指派,但scrum核心的五个事件是必须要做的。如果砍掉其中的任何一个部分,都会有问题。比如假设不做需求分析会议,直接做任务拆分,带来的后果就是研发团队对需求的理解就难以达成共识、规模估算也不够精确。比如每日站会不开,就缺少信息的同步和风险的识别。比如演示会议不开,就缺少了对迭代交付物的验收,也失去了建立团队信心的好时机。
所以我的观点是scrum是最小管理框架,只能对其进行补充完善,不要尝试对其进行裁剪。只要裁剪,就会有问题。很多公司实行scrum,到最后就只剩下冲刺这样一个时间盒的概念,成为让大家加班的正当理由。
以上是我们在导入scrum过程中的一些经验体会,与大家分享。
您想发表意见!!点此发布评论
版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。
发表评论