挣值管理不是搞数字游戏(4)——让挣值管理实用!

2024-05-23 02:58

本文主要是介绍挣值管理不是搞数字游戏(4)——让挣值管理实用!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

摘要:
要考PMP(Project Management Professional ),挣值管理是必考的知识。软件项目有很大的特殊性,不少人认为挣值管理不太适用于软件项目。挣值管理相关资料也比较超多,但一般都难以读懂,本文将会以轻松、易懂、实用的角度为你讲解。

大纲:
1.挣值管理无用论
2.从搬石头的故事说起
3.三大基本要素:PV,AC,EV
4.成本偏差(CV),进度偏差(SV)
5.成本指标(CPI),进度指标(SPI)
6.成本预测(EAC)

7.挣值管理不是搞数字游戏,要让挣值管理实用!
我将会通过4篇文章为你分享!



挣值管理不是搞数字游戏,要让挣值管理实用!

挣值管理将项目管理工作数字化、可视化,很多第一次学习挣值管理的项目经理会兴奋不已,想马上在实际项目管理中用上,但往往实际效果不甚理想。下面我列举一下常见的情况:

项目计划与项目计划跟踪工作没有做好,就没有做挣值管理的基础,这可能是最常见的情况了。很多软件项目,没有文档化的计划,没有详细的进度计划,很多工作通过开会、口头布置等方式落实。这样无法得到PV、AC、EV这三个基础数值,挣值管理自然就无从落实。

如果计划与计划跟踪的工作能落实,这已经是前进了一大步,但如果没有有效的、简单的实际数据收集方式,挣值管理也难以完全落实。一般我们会使用Project来做进度计划,如果我们能将任务细化做好,就能得到PV,如果我们能将任务的完成情况及时更新,这样就能得到EV,但实际工时(AC)就不容易统计了。有些公司每周或者每月收集一次实际工时,有些公司还专门安排项目助理来负责数据收集的工作。但这些做法一开始会让项目组各成员很不适应,能坚持下来的项目就很少了。

就算以上两个问题你们都能解决,但你无法解决软件项目“两不确定两大限死”的特点。这个特点让你无法在项目初期计划好项目的全部工作,而且计划还经常与实际不符,你需要经常调整。也就是说你无法定下全部的PV,而且PV会经常调整。PV无法全部确定而且会经常调整,这意味着项目计划的基准经常在变化,你会发现不止是PV,AC、EV的数值变化会非常频繁,CV、SV、CPI、SPI这些指标变化幅度会很大。你会觉得花了这么多的心思和工作来做挣值管理,收益却不是很大。

项目计划包括开发计划、测试计划、采购计划、培训计划、配置管理计划等等的各种计划,一般会由不同的人员负责这些计划,这些计划一般是各自编写的,不在同一份文档里面,而且它们的表现形式也不太一样。要系统地跟踪这些计划的PV、AC、EV,就需要解决这些计划的统一性问题,而且不能因为要度量PV、AC、EV,而让这些计划的负责人承担很多额外的工作。

回到最根本的问题,我们为什么要用挣值管理?难道就是为了追求量化吗?

如果某项目的CPI、SPI数值很理想,一直在100%附近,你会觉得这个项目情况很理想吗?
数字不能说明全部问题,数字往往还会欺骗我们呢!CPI、SPI 数值为100%,项目仍然有可能有严重问题。如果项目计划本身有问题,漏掉了关键工作没有安排,这样PV其实是有问题,执行这样的计划,得到的AC和EV,计算出来CPI、SPI,其实没有什么意义。挣值管理说到底其实还是计划与计划执行情况的比较,需保证计划没有问题,这样的比较才有意义。

某项目CPI、SPI都偏低,说明项目超支、进度落后,你会想到怎样改进措施呢?在建筑工程中出现这样的情况,一般就是通过加班来搞定进度落后的问题,而项目超支一般就只能尽量节省一点,没有更好的解决办法。在软件项目中,你会想到怎样的办法呢?
一般我们想到的办法往往是想办法让AC更少,让EV更多,而很少去想办法降低PV!软件项目是人类的高级智力活动,一个很有智慧的想法就能解决很多问题。软件项目需求不确定、设计也不特定,需要我们用更多的智慧去主动迎接这两个挑战,想办法降低工作量!

我们公司采用挣值管理来管理项目,已经有6年以上时间,最开始需要解决的就是落实计划及计划跟踪工作,无论贵公司是否想采用挣值管理,这个工作都应该先做好,否则别的东西都是空谈。在此基础上,我们逐步落实各种度量措施,能让我们方便地得到PV、AC、EV。到后期我们更加是更进一步,将按项目性质和工作类型,细分CPI、SPI,将需求分析软件设计编码、测试四个子过程细化,加强控制力度并提高,使之达到CMMI4级及5级水平。

看上去我们公司似乎挣值管理做到了比较高的层次,其实我自己本人是不太想去计算这些CPI、SPI指标的。2009年我做了几个公司之前没有做过全新的项目,需求与技术不明确的特点充分展示出来,而且我带领的团队成员全部都是新人,大部分还是应届生。项目每天都在打仗,而工作重点是想办法去降低工作量!这几个项目,全部都是预算限死、工期限死的!

对于挣值管理PV、AC、EV,我的看法是:
PV:你要想尽一切办法降低PV,这是让项目成功的最有效办法,是你最需要做的事情!
AC:要让项目组水平不断提高,让大家学会高效的工作办法,让大家用正确的办法做正确的事情,这样才能降低AC。
EV:每个任务的完成标准必须明确,任务要足够细分,不要安排长周期的任务。任务只有两个状态:完成与未完成,任务完成90%之类的说法是不靠谱的,只要未完成,状态就是未完成,该任务EV为零。

我觉得挣值管理最大的精要应该在于你对PV、AC、EV的认识!PV、AC、EV其实不必量化,项目成功的关键在于项目组的整体能力水平和知识水平,在于工作的条理性和严谨性。你觉得项目管理有问题,其实问题可能不是因为没有应用挣值管理,而是项目组的水平不够,工作没有条理。

挣值管理不是玩数字游戏,所有数字的背后必须有大量的客观事实支撑,否则要数字不如无数字。本文介绍了挣值管理基础知识以及在实际应用中的经验体会,希望同学们能在实际工作中体会并灵活应用。





请看下一篇……



作者:张传波

创新工场创业课堂讲师

软件研发管理资深顾问

《火球——UML大战需求分析》作者

www.umlonline.org 创办人

这篇关于挣值管理不是搞数字游戏(4)——让挣值管理实用!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/996114

相关文章

Python开发文字版随机事件游戏的项目实例

《Python开发文字版随机事件游戏的项目实例》随机事件游戏是一种通过生成不可预测的事件来增强游戏体验的类型,在这篇博文中,我们将使用Python开发一款文字版随机事件游戏,通过这个项目,读者不仅能够... 目录项目概述2.1 游戏概念2.2 游戏特色2.3 目标玩家群体技术选择与环境准备3.1 开发环境3

gradle第三方Jar包依赖统一管理方式

《gradle第三方Jar包依赖统一管理方式》:本文主要介绍gradle第三方Jar包依赖统一管理方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录背景实现1.顶层模块build.gradle添加依赖管理插件2.顶层模块build.gradle添加所有管理依赖包

基于Python打造一个智能单词管理神器

《基于Python打造一个智能单词管理神器》这篇文章主要为大家详细介绍了如何使用Python打造一个智能单词管理神器,从查询到导出的一站式解决,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 项目概述:为什么需要这个工具2. 环境搭建与快速入门2.1 环境要求2.2 首次运行配置3. 核心功能使用指

HTML5中的Microdata与历史记录管理详解

《HTML5中的Microdata与历史记录管理详解》Microdata作为HTML5新增的一个特性,它允许开发者在HTML文档中添加更多的语义信息,以便于搜索引擎和浏览器更好地理解页面内容,本文将探... 目录html5中的Mijscrodata与历史记录管理背景简介html5中的Microdata使用M

Python实现特殊字符判断并去掉非字母和数字的特殊字符

《Python实现特殊字符判断并去掉非字母和数字的特殊字符》在Python中,可以通过多种方法来判断字符串中是否包含非字母、数字的特殊字符,并将这些特殊字符去掉,本文为大家整理了一些常用的,希望对大家... 目录1. 使用正则表达式判断字符串中是否包含特殊字符去掉字符串中的特殊字符2. 使用 str.isa

Spring 基于XML配置 bean管理 Bean-IOC的方法

《Spring基于XML配置bean管理Bean-IOC的方法》:本文主要介绍Spring基于XML配置bean管理Bean-IOC的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一... 目录一. spring学习的核心内容二. 基于 XML 配置 bean1. 通过类型来获取 bean2. 通过

python uv包管理小结

《pythonuv包管理小结》uv是一个高性能的Python包管理工具,它不仅能够高效地处理包管理和依赖解析,还提供了对Python版本管理的支持,本文主要介绍了pythonuv包管理小结,具有一... 目录安装 uv使用 uv 管理 python 版本安装指定版本的 Python查看已安装的 Python

基于Python和MoviePy实现照片管理和视频合成工具

《基于Python和MoviePy实现照片管理和视频合成工具》在这篇博客中,我们将详细剖析一个基于Python的图形界面应用程序,该程序使用wxPython构建用户界面,并结合MoviePy、Pill... 目录引言项目概述代码结构分析1. 导入和依赖2. 主类:PhotoManager初始化方法:__in

macOS无效Launchpad图标轻松删除的4 种实用方法

《macOS无效Launchpad图标轻松删除的4种实用方法》mac中不在appstore上下载的应用经常在删除后它的图标还残留在launchpad中,并且长按图标也不会出现删除符号,下面解决这个问... 在 MACOS 上,Launchpad(也就是「启动台」)是一个便捷的 App 启动工具。但有时候,应

使用PyTorch实现手写数字识别功能

《使用PyTorch实现手写数字识别功能》在人工智能的世界里,计算机视觉是最具魅力的领域之一,通过PyTorch这一强大的深度学习框架,我们将在经典的MNIST数据集上,见证一个神经网络从零开始学会识... 目录当计算机学会“看”数字搭建开发环境MNIST数据集解析1. 认识手写数字数据库2. 数据预处理的