PM过程能力成熟度4级

话说3级的PM已经非常厉害了,但仍然处于定性阶段。如何才能不动声色的跟BOSS过招?PM 4级就是让数字变成你的嘴巴,开启项目管理的量化大门。因此,4级PM的工作重心(详见上一篇文章中的表格),也会逐渐转变。对应的四类工作,总结起来变化如下:

开发类:

保持3级,适当深化

项目管理类:

在量化的项目质量与绩效目标的要求下,识别关键过程,借助统计学的基线与模型,策划与监控关键项目过程

支撑与协作类:

  • 基于企业的目标体系,制定支撑业务目标实现的项目质量与绩效目标

  • 掌握统计学技术,对项目进行量化管理:

-  使用基线对项目进行监控,及时发现异常并分析解决

-  使用模型,预测项目的质量与绩效目标的达成情况,在项目早期就可以识别风险并加以管控

-  当发现有影响目标实现的问题存在时,进行根源分析,策划解决方案,并使用统计学技术,进行预测与差异性分析,以评估新的解决方案的可实施性

  • 数据驱动的向上管理:

-  就项目的质量、绩效目标,对业务目标的支撑性作用,与管理层达成一致

-  定期与管理层沟通项目的量化管理状态,并就下一步工作的开展达成一致

改进类:

当改进计划被评估分析并批准后,认真落实,并对改进结果进行评审验证

接下来,我们展开来说说软件项目的量化管理。在详细展开软件量化管理的实践之前,有必要先澄清三个问题

一、没有准确的度量定义,收集的数据跟垃圾没有两样。

在软件开发过程中,具有潜在价值的度量指标繁多。怎么办?

很多PM问过我,“要想提高开发的效率,应该度量那些数据”?这问题不难啊,比如用代码行和工作量一除就有了。

可很多PM这么做了,却得不到想要的结果。为什么?

因为缺乏度量标准

就拿代码行来说,有人度量新增的,有人度量更改的,有人包含提示行,有人不包含……工作量的度量呢,也是面临同样的问题,算不算测试啊,算不算写文档啊……结果N种代码行的度量,结合了N种工作量的度量。这样的量化结果,你说怎么拿来用?

所以,当PM要“用数据说话”的时候,最先要做的是定义。前面的基础打好了,后面的应用才不会浪费。

PM过程能力成熟度4级

图片来自网络,版权归作者所有

二、数据确实可以一定程度上反应团队的绩效,但这是个雷区,非高手不要碰。

很多公司都有KPI考核,尤其那些文化中比较强调竞争性的公司,喜欢横向比较,甚至搞末位淘汰。我只能说,作为咨询师我愿意尊重公司的不同文化,但用量化的项目数据做个人绩效的评定,我并不赞同。IBM的研究,也证明了在两个不同的软件项目之间,很难找到可比的度量:

  • 不同类型的产品导致的任务复杂程度差别可能达到五倍

  • 小修改中每行代码的成本,常常高出新编程序的2-3倍

  • 需求更改的程度可以说千变万化

  • 相应项目设计变更的程度有过之而无不及

Flaherty,M.J. “Programming process measurement system for System/370,” IBM System Journal

PM过程能力成熟度4级

图片来自网络,版权归作者所有

比绩效考核更为重要的是,使用项目数据真正的目的,是帮助企业看清项目的进展情况,为过程改进提供有价值的依据

首先,数据采集的过程,无论是否使用自动化工具,都不可避免要人为参与。其次,产生不良数据的原因很多,直接使用往往会产生错误的评价。例如一个平均工龄大于5年的项目组,和一个平均工龄不到1年项目组,比较效率就没有意义。如果非得进行绩效评价,我们需要更多的维度和更多的数据。

三、量化管理 ≠ 数据管理

量化管理是建立在大量数据的基础之上,使用统计学技术,进行预测与监控,以数据驱动决策

PM过程能力成熟度4级

某公司开发阶段的人员成本偏高,主要原因在于人员的工作效率低下,因此希望通过控制开发阶段编码效率来减低人员成本。经过与项目团队的深入沟通,我们锁定了团队规模、开发语言难度和团队人员的能力三个可能的影响因素,并进行定义与赋值:

PM过程能力成熟度4级

然后将以上三个可能的影响因素,统一为一个影响因素“团队能力权值”。

团队能力权值=团队成员能力*团队规模*开发语言难度

接下来,我们收集了50个产品类项目的代码行、工作量等信息。考虑到数据完整性等因素,最后选定30个有效产品类项目。使用统计学工具Minitab进行回归,建立了效率模型:

【编码效率模型】:Y=aX^b

Y - 编码效率,单位“KLOC/人月”

X - 团队能力权值,单位“个”

a、b - 系数(考虑数据保密性,以字母代替)

PM过程能力成熟度4级

有了上述模型,PM可以在项目建立的初期,进行效率的预测估算,例如:

【场景】某个软件开发产品中,团队规模为小规模团队,采用C#作为开发语言,平均人员能力是三年以下工作经验,熟练掌握一种或两种开发语言,没有管理经验;

【分析】按照“团队能力权值的计算公式得出:X=0.32

【结果】Y=a0.32^b (KLOC/人月)

在项目开展的过程中,PM还可以根据基线(下图),对项目的进展状态进行监控,效率控制在3.12304~4.422919内,出现异常点时及时分析和处理:

PM过程能力成熟度4级

PM过程能力成熟度4级

下周我们会分享5级PM的过程管理能力。然后,详细阐述胜任四大类工作的具体做法。更多实践、更多干货分享,持续关注我们哦~

上一篇:SAP中日期时间函数总结


下一篇:MVC5框架解析之MvcHandler