项目管理是项目的管理者在有限的资源约束下,运用系统的观点、方法和理论,对项目涉及的所有工做进行有效的管理。即从项目的投资决策开始到项目结束的全过程进行计划、组织、指挥、协调、控制和评价, 以实现项目的目标。[1]运维
在有赞,进行项目前会通过一系列的规划流程,确认资源后即启动项目进行。本文接下来会讨论的是如何透过 OKR 的方式来管理项目研发过程。工具
OKR(Objectives and Key Results) 全称为目标和关键成果[2]。是由英特尔公司制定,由 John Doerr 引入谷歌后,广为大众所知道。在 OKR 的系统中,首先要制定一个「目标」,这目标要很是明确可衡量的,且必需要能符合 SMART (Specific、Measurable、Achievable、Relevant、Time-bounded) 原则,这样才能用来衡量是否已经实现目标。例如:不能说「想让网站成长」,而是要说「让网站的营收较去年同期成长 10%」或者说「让网站的 APRU 每个月成长 15%] ,这就是给定一个明确、可量化的目标给你们完成,OKR 的目标不能是模糊、不明确的。测试
OKR 流程网站
简单介绍过 OKR 后,再回到项目管理上来看,大部分的项目会有几个关键内容:spa
下图为我司通常通用的项目研发流程blog
将 OKR 运用在项目管理的过程里,咱们会须要订定长期目标、关键指标,这很是简单,由于项目自己就是一个具备范围定义的,因此:(你也能够结合一些敏捷开发方法论来辅助,像是 Scrum[3]、Kanban[4])图片
当长期的目标已经制定了,但项目过程当中的每一个环节仍旧有许多未知、不明确的问题等待挖掘,且不一样的项目内容,问题也各不相同。以 Scrum 方法论举例,在 Scrum 的过程当中,提到了一些会议环节,像是 Planning Meeting、Daily Meeting 等,在大部分的会议中,咱们会强调同步「昨天作了什么」、「今天要作什么」、「目前遇到了什么问题」。咱们能够简单的将 OKR 结合进这些会议里,让会议的价值再提高一些。这时候咱们就能切出一些更细致的目标、关键指标与行动方式,此时产出的就会是中期目标、短时间目标。ci
透过一连串的自上而下的拆分、定义目标,会让项目的各个里程碑更明确、更细致。另外,跨团队的协做上,也能根据目标凝聚出当前应该要有的目标意识,某种程度上来讲,能够避免不一样团队在过程当中虽然是奔着大目标在执行,可是在中间环节彼此目标不一样所致使的资源等待与浪费。项目管理
随着目标的细分、关键指标的不一样,粒度愈细的目标对于项目管理者来讲愈容易管理,能够想成是在一个大的项目里,有许多不一样时间点的小项目。在笔者手里进行的项目中,通常经常使用来订目标与检验结果的时间,提供给各位读者参考下:资源
看似有了更多的会议,但这些会议一般会在 20 分钟内结束,且价值极高,由于目标就在眼前:
在 OKR 的理论中,会要求每一个人都能找到本身的目标,这时候就会须要有人来检视这个目标是否合理、是否太大或过小、或是是否跨职能/业务上的目标有一致,在一个项目里咱们一般会有几类负责人能够对目标进行把控。
在不一样的目标制定上咱们会须要这些负责人可以识别出来各成员、不一样职能团队的目标是否在同一目标上。透过这个方式能间接的提高
在每一个 O (目标) 订出时,也会有与之相对应的 KR (关键指标) 和相对应完成 KR 的 AC (关键动做),在实际的操做中这些 KR 能提供明确的目标定义,协助项目成员、负责人在进行检视时,有明确的验证标准。像是
这时咱们即可在目标检验时,进行演示、操做,看看相对应的指标是否达成,未达成的部分能够透过订定新的 AC 来加速、增强各相关人的行动方式,也能够转换 AC 为下一个目标的行动点或关键指标。透过这样一连串的目标管理过程,使得项目的目标明确且可控,各个与目标的相关人也能知道当前的目标与进度,能适时的提出改进点或行动点,进而下降项目偏离预期的可能。
本文虽然只是简单的介绍了下 OKR 与项目管理过程的结合方式,可是其中有许多敏捷方法隐含在其中,像是 Scrum、Kanban、XP 等,也有些传统的项目管理隐含在其中,像是 WBS、里程碑等。不一样的项目类型、复杂度,咱们能够选择性的加减某些方法、工具的使用方式与节奏。进而找出计划驱动与价值驱动的平衡点,达到保证一有一个「好过程」与「好结果」的共赢目的。
不一样的企业、团队能够有更多丰富、深刻的玩法。但其最终目的皆是以达成目标、减小资源浪费、可控为出发点。对于目标制定的方式也能够结合「吃掉那只青蛙[5]」的方式来达到更好的效果。
最后附上一些常见的管理方式比较表