scrum okr_Scrum方法

scrum okr_Scrum方法OKR与Scrum如何强强联手

大家好,又见面了,我是你们的朋友全栈君。

我们收到很多问题询问如何把OKR和其他框架结合起来使用,以便管理组织的人员、流程和活动。

软件开发公司最喜欢用的框架之一就是Scrum,Scrum是一个诞生于20世纪90年代的软件开发框架,我们公司内部一直在使用这一框架。

Scrum的优点以及为什么它能优于瀑布流开发

相较于瀑布流开发的其他传统框架,Scrum最大的优点是关注持续快速迭代以及对变化的适应性。

如果使用瀑布流开发,在项目一开始就要确定项目结果,并且要对此达成一致,通常还要有详细的范围和项目规范。

项目计划是从这些规范中产生的,方法是通过以项目在未来的完成情况为出发点,向后推进,以线形的方式规划出时间、预算和依赖性。

靠这种方法做出的成品是一份路线图,概述出到软件推出之日为止,需要完成的软件开发工作。那么不足之处是什么呢?如果在软件开发过程中出现了变动,时间线,依赖性,以及在大多数情况下连预算都需要完全重做,实际上就破坏了计划。

与此不同,Scrum关注的是为了达到一个理想终点的持续快速迭代。取代详细计划的是精益规范或者是需求和回顾会议,这些会衡量每一次迭代成果。这些回顾应该围绕一个问题: “ 我们所做的工作有没有让我们离目标需求更近?

f1c2b727-0bc7-4f6b-8b87-5536bef6613a.png

Scrum 的力量来自于它能够管理工作,实现一个未知的、独特的、或者前所未有的结果。 这一框架系统地、渐进式地问题解决过程。瀑布流开发与此不同,只有在其所涉及的过程和工作都是可预测的,并且此前已经有人尝试过的情况下,瀑布流开发开发才能发挥最大功效。

这其中的差别犹如建一座桥和建一艘火箭搭载船的差别。

火箭技术相对较新,建造一艘火箭搭载船要有很多增量步骤,重复多次才能获得成功。美国太空探索技术公司(SpaceX)为了能让火箭在船上着陆所做的工作就是一个很好的例子。

反之,人们对建桥这一工程难题的理解十分透彻,也已经无数次解决过这一难题。建桥不需要重复很多次,对时间和成本规划的要求高,而这是瀑布流开发经常应用的领域。

OKR和Scrum的异同

OKR和Scrum的相似之处在于 两个框架都需要有一人专门管理框架的实施情况 , 称为“Scrum负责人”或“OKR负责人”。两个职位职责明确,他们的责任是保证团队依照框架行事。

Scrum是一个高度规范的框架,有明确的职责和仪式。Scrum的益处包括透明性、项目可见性以及频繁沟通。团队集体决定他们在为期2周的一个短期“sprint”内能够完成什么样的工作,这也使得Scrum是一个很民主的过程。

OKR也有一套规则,虽然这套规则不如Scrum的规则条理清楚。这些规则决定什么是目标O,什么是关键结果KR,以及如何把二者结合起来衡量目标的实现。

和Scrum一样,OKR有时间表,但是比为期两周的sprint要长得多(季度和年度)。设定OKR首先需要做的是,公司领导决定需要实现何种目标,接着,团队设定自己的OKR,需要确保团队的OKR与公司的目标保持一致。

如何把Scrum和OKR结合起来

只要每个人都清楚两个框架的范围和参数,OKR和Scrum可以成功地结合在一起使用,效果也确实不错。我们在确立公司OKR后,会进一步落实实现OKR的行动方案。Sprints和行动方案能在行动周期内有机结合,促进团队OKRs的达成。

为了能让这两个框架合拍,重要的一点是在每个季度开始的时候,一位OKR负责人和一位Scrum负责人与他们的研发团队坐在一起,决定需要在这个季度完成的最重要的事情(通常为3项)。

由于OKR周期更长,目标更宏观,而Sprint涉及的更具体的执行层面工作, 因此需要首先考虑OKR

92c81261-38ef-4ab0-bc91-37065e5bf309.jpg

要让OKR在这一阶段就能有效开展, 相对于强调对结果实现的追求,更应关注对结果的衡量 。 比如,如果你想要解决的问题是有缺陷的软件,那么,统计消灭了多少个软件缺陷就不是一个有效的关键结果。修复了一个缺陷,缺陷的数量就少了一个,但是如果有更多的软件缺陷被报出来,你就没有让软件变得更完善,你仅仅是在数自己修复了多少个缺陷。

一个更好的关键结果应该是统计出现了多少缺陷,或者统计一个季度内出现了多少客户需求。如果这个评估指标的趋势有所下降,那么你就可以自信地认为你正在解决你最初想要解决的问题。

设定了OKR的目标和关键结果后,就可以开始规划Sprint。在这一个阶段,重要的是要决定Sprint的周期。如果一个Sprint为期一个月,一个单一的Sprint目标很可能会直接对应开发团队3个OKR目标的其中一个。至于更常见的为期2周的较短Sprint,Sprint目标则变成OKR目标的行动方案。

65fa2af2-1578-448d-beb4-a156e8b51492.png

我们更推荐第二种方法,因为这种方法在连接两个框架的同时还保持了二者最初的目标,即 Sprint管理生产和代码传输, 而OKR设定目标,衡量评估工作结果

但是,这也意味着每一个OKR都需要有自己的Sprint时间线。如果你有一个大型的开发团队在一个产品的不同领域开展工作,比如前期工作、后期工作和系统管理,这一方法就能发挥很好的效果。使用这种方法的话,每一个领域引导1个OKR和1条Sprint时间线,而整个小组内部有3个OKRs。

对于规模较小,没有能力运转3条Sprint时间线的开发团队,我们也推荐这种方法,但是只需要专注一个单一的OKR即可。

原文作者|Rob Davies
翻译|周雁洁

文章来源:Worktile技术博客

欢迎访问交流更多关于技术及协作的问题。

文章转载请注明出处。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/106987.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 游戏服务器架构演化史pdf_分布式游戏服务器

    游戏服务器架构演化史pdf_分布式游戏服务器类型1:卡牌、跑酷等弱交互服务端卡牌跑酷类因为交互弱,玩家和玩家之间不需要实时面对面PK,打一下对方的离线数据,计算下排行榜,买卖下道具即可,所以实现往往使用简单的HTTP服务器:登录时可以使用非对称加密(RSA,DH),服务器根据客户端uid,当前时间戳还有服务端私钥,计算哈希得到的加密key并发送给客户端。之后双方都用HTTP通信,并用那个key进行RC4加密。客户端收到key和时间

    2022年10月21日
    3
  • SAE J1939 – 简短介绍[通俗易懂]

    SAE J1939 – 简短介绍[通俗易懂]SAEJ1939–简短介绍在商用车辆领域,标准化的,串行的协议用于单个电子控制单元(ECU)和传动系统组件之间的通讯已有一段时间。通过使用标准化的串行协议,可具有以下优势:组件制造商只需要采用一个协议;这主要是商用车辆才会涉及的问题,因为生产量低。商用车辆制造商可依靠不同供应商的组件。可确保组件之间的互操作性,来自不同制造商的组件不用调整就可一同工作。由国际汽车工程师协会…

    2022年5月1日
    55
  • 高通平台8953 Linux DTS(Device Tree Source)设备树详解之三(高通MSM8953 android7.1实例分析篇)[通俗易懂]

    高通平台8953 Linux DTS(Device Tree Source)设备树详解之三(高通MSM8953 android7.1实例分析篇)[通俗易懂]高通平台8953 LinuxDTS(DeviceTreeSource)设备树详解之三(高通MSM8953android7.1实例分析篇)本系列导航:高通平台8953 LinuxDTS(DeviceTreeSource)设备树详解之一(背景基础知识篇)高通平台8953 LinuxDTS(DeviceTreeSource)设备树详解之二(DTS设备树匹配过程)高通平台8953 L…

    2022年10月18日
    3
  • Android触屏事件流[通俗易懂]

    Android触屏事件流[通俗易懂]一次触屏事件分为三个动作ACTION_DOWN,ACTION_MOVE和ACTION_UP。其中ACTION_DOWN和ACTION_UP在一次触屏事件中只会触发一次,ACTION_MOVE可能触发任意次(包括0次)。主要响应触屏的组件有两种,一种是可以包含子元素的(ViewGroup比如LinearLayout),另一种是不能包含子元素的View(最底层的View比

    2025年10月18日
    2
  • 春运里的“车轮战”:每天60多道工序保养轮对

    春运里的“车轮战”:每天60多道工序保养轮对

    2021年6月29日
    111
  • 2021前端面试题及答案_前端开发面试题2021

    2021前端面试题及答案_前端开发面试题2021废话不多说直接上干货1.js运行机制JavaScript单线程,任务需要排队执行 同步任务进入主线程排队,异步任务进入事件队列排队等待被推入主线程执行 定时器的延迟时间为0并不是立刻执行,只是代表相比于其他定时器更早的被执行 以宏任务和微任务进一步理解js执行机制 整段代码作为宏任务开始执行,执行过程中宏任务和微任务进入相应的队列中 整段代码执行结束,看微任务队列中是否有任务等待执行,如果有则执行所有的微任务,直到微任务队列中的任务执行完毕,如果没有则继续执行新的宏任务 执行新的宏…

    2022年8月27日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号