没有一个完整的F1吗?(没有f12)
750
2022-05-30
起源和发展
Scrum和橄榄球的关系
Scrum的英文含义为橄榄球比赛中的两队并列争球,1986年,在竹内弘高和野中郁次郎发表的《The New New Product Development Game》(《新新产品开发游戏》)文章中,将Scrum隐喻用于软件开发,阐述了一种新的整体性的方法。
文中认为面对市场的激烈竞争,新产品开发需要的不仅是高质量、低成本和差异化,它还需要速度和灵活性。传统的顺序开发或“接力赛”方法可能与最高速度和灵活性的目标相冲突。相反,一个整体的或“橄榄球”的方法—一个团队尝试作为一个整体走完全程,来回传递球——可能更好地满足当今的竞争要求。
文章从橄榄球比赛的特点和团队取胜的关键中提取了六个特点:内置的不稳定性、自组织的项目团队、重叠的开发阶段、“多重学习”、微妙的控制和学习的组织转移。将六者有机结合在一起,就可以形成了一个快速灵活的新产品开发过程。同时,新方法将创造性的、市场驱动的想法和流程引入到原有组织中,可以起到变革推动的作用。
Scrum的发展时间线
接着,如下图的时间线所示,Jeff Sutherland、Ken Schwaber和Mike Beedle、Mike Cohn等业界大咖先后联合推出了Scrum流程、规范了Scrum框架,初版了Scrum书籍、创办了Scrum联盟,撰写了Scrum指南,帮助组织和团队更好的理解Scrum,指导Scrum在实践中落地。
什么是Scrum
Scrum定义
从Scrum的起源可见,Scrum的产生是为了指导团队在面对复杂问题不确定的情况时,能够通过齐心协力、自管理的方式去应对,提高速度和灵活性,更加适应市场的需求。依据2020年发布的最新Scrum指南,Scrum 是一个轻量的框架,它通过提供针对复杂问题的自适应解决方案来帮助人们、团队和组织创造价值。下面通过3张图我们一起来了解下Scrum框架。
图1:Scrum框架
提到Scrum框架,就会想到“3355”,详细内容如下图所示,“3355”分别代表3个职责、3个工件、5个事件、5种价值观。
图2:简单Scrum的流程
一个简单的Scrum流程如下图所示。
首先,是输入,根据相关利益干系人的需求,Product Owner创建Product Backlog,记录产品的需求,并根据对应的客户价值进行优先级排序。
然后,是开发,由Scrum Team(由框架图中的3个职责的人员组成)进行开发实现需求,生产出对客户有价值的产品增量。
最后,是输出,将产品增量交由客户进行评审,获取反馈,进行调整。同时根据协商确定下个阶段的输入,整个Scrum是一个循环往复的过程,每个循环称作一个Sprint。
在整个过程中,Scrum Master的职责就是营造Scrum环境,按照 Scrum 框架来建立 Scrum,帮助 Scrum Team 和组织内的每个人理解 Scrum 理论和实践,确保Scrum的正确开展。
图3:完整的Scrum流程
一个完整的Scrum流程如下图所示。完整流程就将简单流程中的每个环节进行完善。
最初的产品需求来源于客户等相关的利益干系人,Product Owner(简称PO)获取需求后进行拆分、排序等梳理工作,形成Product Backlog(产品待办列表),这是产品唯一的需求来源,由PO全权负责管理和维护。
开发阶段是由一个个Sprint组成,每个Sprint称作一个迭代,或者一个冲刺。在每个Sprint中都是由4个事件贯穿始终,最终会交付一个有价值的Increment(产品增量),通常是产品的一部分特性,能够为客户带来价值。
Sprint Planning:团队在Sprint计划会议上从Product Backlog选取合适的需求条目进入到Sprint Backlog(迭代待办列表),选取时依据团队的速率(一个迭代中能够完成的任务量)和需求的优先级。
Daily Scrum:团队在整个开发过程中,每天在同一时间和同一时间举行站会,成员共享资源、进度和风险,同时和Sprint Goal进行对齐,确保整个Sprint的工作是沿着正确的方向在进行。
Sprint Review:迭代结束前,检查所有的工作的完成情况,是否符合DoD(Definition of Done),然后召开Sprint 评审会议,将产品增量向客户等相关利益干系人演示,获取反馈,用于指导改进和调整下一个阶段的工作方向。
Sprint Retrospective:最后,团队成员一起召开Sprint 回顾会议,对当前迭代的情况进行回顾,包括但不限于进度、质量、风险、障碍、成功、心情等方面的内容,回顾会议开展的是否成功对于一个团队的改进是非常重要的。敏捷和精益中的一个核心理念就是持续改进,回顾会议是重要的一个环节。所以团队要多花心思在回顾会议上,关于开好回顾会的更多内容可以参考《如何让敏捷回顾会议更有效果,这样做就对了》。
如此往复循环,若干个Sprint后,最终交付一个完整的产品。
在Scum框架中,价值观和理论部分的指导是完整的,但是没有限定每个阶段采用的过程技术和方法,这是一个轻量级的框架,更多的技术实践需要团队根据自己的业务和组织情况去进行填充。所以业界有个说法,“Scrum是个筐(框这个字应该更好,但筐的发音好,哈哈),什么都能往里装”。
Scrum在行业应用现状
根据VersionOne的第14届年度敏捷行业状态报告中,以Scrum为主的敏捷方法论(包括Scrum、Scrum/XP混合等)占70%+,一直居于主流地位。同时在报告调查中,Scrum的5个事件:每日站会、回顾会议、计划会议、评审会议和短迭代,高居于敏捷技术实践的Top5。
在应用Scrum的时候,需要注意的一点是,完整的 Scrum 框架是各个部分的有机组合,如果仅仅实施部分的 Scrum ,结果就不是 Scrum ,不能发挥Scrum的优点。这里面说到的“完整”是重神不重形,举例来说就是你可以不开展每日站会,但是这种团队内部的及时沟通交流机制需要有。还是建议组织和团队在最初引入Scrum的时候要完全按照框架,无论学习什么方法技术都是一个“守、破、离”的过程,还是先要把“守”做好,真正理解它的内涵,然后才能因地制宜,升华到“破”和“离”的阶段。
敏捷开发
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。