写点什么

透过 OKR 进行项目过程管理

  • 2020-03-18
  • 本文字数:2650 字

    阅读完需:约 9 分钟

透过 OKR 进行项目过程管理

项目管理是项目的管理者在有限的资源约束下,运用系统的观点、方法和理论,对项目涉及的全部工作进行有效的管理。即从项目的投资决策开始到项目结束的全过程进行计划、组织、指挥、协调、控制和评价, 以实现项目的目标。[1]


在有赞,进行项目前会经过一系列的规划流程,确认资源后即启动项目进行。本文接下来会讨论的是如何透过 OKR 的方式来管理项目研发过程。

一、简介 OKR

OKR(Objectives and Key Results) 全称为目标和关键成果[2]。是由英特尔公司制定,由 John Doerr 引入谷歌后,广为大众所知道。在 OKR 的系统中,首先要制定一个「目标」,这目标要非常明确可衡量的,且必须要能符合 SMART (Specific、Measurable、Achievable、Relevant、Time-bounded) 原则,这样才能用来衡量是否已经实现目标。例如:不能说「想让网站成长」,而是要说「让网站的营收较去年同期成长 10%」或者说「让网站的 APRU 每月成长 15%」,这就是给定一个明确、可量化的目标给大家完成,OKR 的目标不能是模糊、不明确的。


OKR 流程


  1. 明确事项的目标

  2. 对关键性结果进行可量化的定义,并且明确标定「达成目标」与「未达成目标」的措施

  3. 共同努力,达成目标

  4. 根据项目进展进行评估

二、项目管理与 OKR

简单介绍过 OKR 后,再回到项目管理上来看,大部分的项目会有几个关键内容:


  1. 里程碑、完成时间

  2. 工作/任务量

  3. 资源


下图为我司一般通用的项目研发流程


2.1 结合 OKR 与项目过程进行目标拆解

将 OKR 运用在项目管理的过程里,我们会需要订定长期目标、关键指标,这非常简单,因为项目本身就是一个具有范围定义的,所以:(你也可以结合一些敏捷开发方法论来辅助,像是 Scrum[3]、Kanban[4])


  • 目标 (O) - 项目上线,当然,你的项目也可以定义与业务指标相关,这样会让项目更有价值,例如:让 xxx 位使用者能使用等

  • 关键指标 (KR) - 里程碑,当达到一个里程碑时,其实就是完成了一个项目里的关键指标

  • 行动 (AC) - 投入哪些资源、需要哪些团队共同合作的策略、方式等


当长期的目标已经制定了,但项目过程中的每个环节仍旧有许多未知、不明确的问题等待挖掘,且不同的项目内容,问题也各不相同。以 Scrum 方法论举例,在 Scrum 的过程中,提到了一些会议环节,像是 Planning Meeting、Daily Meeting 等,在大部分的会议中,我们会强调同步「昨天做了什么」、「今天要做什么」、「目前遇到了什么问题」。我们可以简单的将 OKR 结合进这些会议里,让会议的价值再提升一些。这时候我们就能切出一些更细致的目标、关键指标与行动方式,此时产出的就会是中期目标、短期目标。



透过一连串的自上而下的拆分、定义目标,会让项目的各个里程碑更明确、更细致。另外,跨团队的协作上,也能根据目标凝聚出当前应该要有的目标意识,某种程度上来说,可以避免不同团队在过程中虽然是奔着大目标在执行,但是在中间环节彼此目标不同所导致的资源等待与浪费。



随着目标的细分、关键指标的不同,粒度愈细的目标对于项目管理者来说愈容易管理,可以想成是在一个大的项目里,有许多不同时间点的小项目。在笔者手里进行的项目中,一般常用来订目标与检验结果的时间,提供给各位读者参考下:


  • 每月第一天,制订当月目标,对于疑问制定行动策略,月底检验关键指标

  • 每周第一天,制订当周目标,对于疑问制定行动策略,每周最后一天检验关键指标

  • 每日上午 10 点制订当日目标,对于疑问制定行动策略,晚上 6 点检验关键指标


看似有了更多的会议,但这些会议通常会在 20 分钟内结束,且价值极高,因为目标就在眼前:


  • 完成的目标明确且可被检验

  • 对于产生出来的问题,所提出的行动策略能大大的提高响应速度

  • 不同团队间的协作聚焦提升

  • 不同的阶段,目标是自上而下被拆分,能在下层的目标 (日目标、半日目标) 上进行检验,进而调整上层目标 (周目标、月目标等),降低因市场变化等因素,导致最后完成的内容与当初的规划的差异过大

2.2 人员的要求

在 OKR 的理论中,会要求每个人都能找到自己的目标,这时候就会需要有人来检视这个目标是否合理、是否太大或太小、或是是否跨职能/业务上的目标有一致,在一个项目里我们通常会有几类负责人可以对目标进行把控。


  • 业务负责人

  • 产品负责人

  • 技术负责人

  • 测试负责人

  • 运维负责人


在不同的目标制定上我们会需要这些负责人能够识别出来各成员、不同职能团队的目标是否在同一目标上。透过这个方式能间接的提升:


  1. 各负责人对于项目与业务目标的对齐、节奏,可以安排更精细节点做出适当的决策,像是是否能在某些功能完成时先上线给使用者使用。

  2. 要求各负责人对于全局观的把控更为强烈,在项目的过程中,其实也是培养未来的新团队小组长/负责人的一种路径。

  3. 原本可能沟通较少、节奏不一致的情况能够降低,风险也能提前被挖掘出来,并在前期就能先进行调研、修正。

2.3 目标检验的方式

在每个 O (目标) 订出时,也会有与之相对应的 KR (关键指标) 和相对应完成 KR 的 AC (关键动作),在实际的操作中这些 KR 能提供明确的目标定义,协助项目成员、负责人在进行检视时,有明确的验证标准。像是:


  • 日目标:完成客户管理模块,KR1:客户管理模块能完全跑通,KR2:单测覆盖率 70%

  • 周目标:完成 CRM 系统,KR1:完成各模块整合且无严重系统流程阻塞,KR2:集成测试覆盖率 70%


这时我们便可在目标检验时,进行演示、操作,看看相对应的指标是否达成,未达成的部分可以透过订定新的 AC 来加速、加强各相关人的行动方式,也可以转换 AC 为下一个目标的行动点或关键指标。透过这样一连串的目标管理过程,使得项目的目标明确且可控,各个与目标的相关人也能知道当前的目标与进度,能适时的提出改进点或行动点,进而降低项目偏离预期的可能。

三、后记

本文虽然只是简单的介绍了下 OKR 与项目管理过程的结合方式,但是其中有许多敏捷方法隐含在其中,像是 Scrum、Kanban、XP 等,也有些传统的项目管理隐含在其中,像是 WBS、里程碑等。不同的项目类型、复杂度,我们可以选择性的加减某些方法、工具的使用方式与节奏。进而找出计划驱动与价值驱动的平衡点,达到保证一有一个「好过程」与「好结果」的双赢目的。


不同的企业、团队可以有更多丰富、深入的玩法。但其最终目的皆是以达成目标、减少资源浪费、可控为出发点。对于目标制定的方式也可以结合「吃掉那只青蛙[5]」的方式来达到更好的效果。


最后附上一些常见的管理方式比较表:



[1]项目管理 - https://wiki.mbalib.com/wiki/项目管理


[2]OKR - https://wiki.mbalib.com/zh-cn/OKR


[3]Scrum - https://wiki.mbalib.com/wiki/Scrum


[4]Kanban - https://wiki.mbalib.com/wiki/Kanban


[5]吃掉那只青蛙 - https://book.douban.com/subject/3371165/


2020-03-18 19:541222

评论

发布
暂无评论
发现更多内容

当面试官问到:《MySQL数据库的锁机制》该如何拿分?

java小李

spring Boot Starter

模块三

泰戈

外包学生管理系统架构文档

十二万伏特皮卡丘

架构实战营

中国信通院发布2021年首批“可信AI成果” 百度摘取5项大奖

百度大脑

人工智能

区块链技术在产品溯源领域的应用

CECBC

云计算深度挖掘“创新潜力”,北鲲云深耕生命科学领域

北鲲云

下一个颠覆的领域:区块链如何影响审计行业?(上)

CECBC

学生管理系统架构设计文档示例-模块3

小牧ah

架构实战营

ipfs矿机最新消息?星际联盟矿机怎么样?

区块链 fil ipfs矿机 星际联盟

左晖:凭一己之力改变了一个行业

石云升

思维模型 诚信 7月日更

万万没想到,阿里巴巴被挂后,还能获得内推名额,五面口碑一举拿下offer

Java 编程 程序员 架构 面试

架构实战营 - 模块 3 - 外包学生管理系统架构文档

蔸蔸

插件编排在 Apache APISIX 中的应用与实践

API7.ai 技术团队

lua 开源 网关 APISIX

21道最新Java面试题剖析(数据库+JVM+微服务+高并发)

java小李

dubbo Spirng

降低“美丽成本”,区块链助力化妆品行业数字化转型

旺链科技

区块链 数字化转型 化妆品行业

弯道超车!阿里甩出Spring Security宝典我粉了

java小李

java 14 Sprin

百度AI师资培训兰州站启动 社会科学家的第一节人工智能课来了!

百度大脑

人工智能 启蒙 教室

编辑器看看

strive

编辑器

使用Docker在无网络环境下搭建深度学习环境

白日梦想家

从一线城市回到三四线城市的第四个月

布衣骇客

回忆 个人总结 生活随想

阿里面试必备:100个高频Spring面试题,助你一臂之力

java小李

Spring Boot Sprin

MySQL 基础知识+索引相关

java小李

MySQL

非常全面!Java的方法详解和总结,建议收藏

java小李

java基础

☕️【Java技术之旅】【AbstractQueuedSynchronizer】教你自定义实现自己的同步器

码界西柚

Java 并发编程 AQS 同步器

全栈工程师必备技能栈,聊聊月薪两万以内都该会点啥?

java小李

jquery less

“普通本科Java程序员,如何五年存够80万买房?就靠这选择!”

java小李

java 14

降低“美丽成本”,区块链助力化妆品行业数字化转型

CECBC

「从零开始学SpringBoot」—如何开始使用?

java小李

maven Sprint Boot

Git提交信息规范化

admin

git flow git cherry-pick Git Commit git 规范

百度人脸离线识别SDK安卓版升级指南

百度大脑

人工智能 升级迭代

Spring Boot中常用数据库的配置

偏执

Java spring 后端

透过 OKR 进行项目过程管理_文化 & 方法_Steven_InfoQ精选文章