Author
Version
Last Updated
软件项目管理
Planning
Version
计划的意义
管理活动的一个最基本的原则就是任何工作开展之前必须
作计划。项目计划是一个综合概念,凡是为实现项目目标
而从事的活动均应在被计划之列
计划的作用:
计划是促使管理者展望未来,预见未来可能发生的问题
计划可以有效地配置资源,减少重叠性和浪费性的活动,提高项目
的实施效率。
计划,设定了项目活动的目标和标准以便于进行控制。
计划
所谓计划,就是确定实现目标的途径
目标,是计划的源头;
计划,必须围绕目标来制定;
项目目标
范围目标,做什么;范围计划,怎么做
质量目标,达到什么要求;质量计划,怎么达到要求
进度目标,花费多长时间;进度计划,怎样分配时间资源
成本目标,花费多少代价;成本计划,怎样分配资源
ScopeQuality
Cost
Time
以范围为核心
如果仔细判别你会发现,质量、成本和时间资源都是围绕
着范围展开的
质量,是针对特定的产品(范围)来要求的
范围直接决定了项目所需要花费的资源(时间和成本)
既然项目是以范围为基础展开的,但项目范围又由什么决
定呢?
ScopeQuality
Cost
Time
项目范围由客户需求决定
虽然项目范围回答了“项目应该完成什么(what we
need to accomplish?)”,但是这个问题有一个更深刻
的来源:“为什么要完成它(why we need to
accomplish it)”。这个来源就是“客户需求
(customer requirements)”
客户需求是回答:
客户为什么需要这个产品?
这个产品给客户带来什么价值?
客户需求是项目目标商业需求的延伸
范围则是回答:
什么样的产品可以满足客户需求?
什么样的产品可以实现客户价值?
需求
项目范围由客户需求决定
我们也可以这样认为项目计划:
项目目标是以满足客户某种需要为起点,为什么要做这个项目?
确认什么样的产品满足客户的需要?项目范围
产品达到什么样的要求才能满足客户需要?项目质量
实现项目效果需要什么样的代价?时间和成本
ScopeQuality
Cost
Time
Customer
Needs
需求和范围的关系
传统的项目管理活动以范围目标为起点
例如建筑行业的项目,其需求都是明确的
但在IT及软件行业,项目启动时其需求往往就是模糊的。由于需求决
定了项目范围,那就必须在确定项目范围之前先明确需求
软件行业中哪些活动是在明确需求,哪些是在确定范围?
需求
项目
范围决定
需求收集和需求分析
对于需求不明确的项目我们所要做的活动是先确定正确的
需求,再由需求产生项目范围
问题:可不可以直接由客户需求转变成项目范围?
需求
项目
范围分析
客户
需求捕获
活动的目标
需求收集活动?
用户拿产品做什么?解决用户什么问题?
从客户的角度看待项目目标
需求分析活动?
什么样的产品能够满足客户的需求?
从实现者的角度看待项目目标
思考你所在组织是如何进行需求活动的?带来了哪些问题
?
项目边界
由于需求大多是以隐性形式存在,范围则以显性方式存在。
所以很多项目是以范围为起点,作为客户和项目组目标之
间的边界。但这并不能影响需求是项目范围的来源
客户 项目组
需求
范围
项目边界项目边界
需求满足了什么?
What customers said is not what they needs
用户想要的并不是他们说的
What they want is more than what they said
客户想要的多于他们说的
在这个竞争的世界里,最能把握住客户真正需要的才能赢
得客户
Delight customers, not just satisfy customers
取悦客户,而不仅仅是满足客户
How to delight?
什么是好的产品
你的第一眼,你的第一眼,What you think What you think
when you have first look at …when you have first look at …
第一反应,本能的
人对产品的第一反应往往是由其本能的判断给出的,这种
本能来自于感官的愉悦感受
产品的外观及颜色
产品的外部表现
产品的包装
好东西至少需要看起来是好的,但总是为来用的。紧接着,
你将体验怎样使用这个产品
You steer or steered by
第二步,如何使用它,行为的
好的东西,总是为用的。当人们使用一件产品是一种体验,
而这种体验是一个欢愉的过程,才会让人有一种好的感觉
对于软件,是一种交互性需求..\Video\apple-iphone-
一个好的产品会留下一段好的体验,而这份体验会伴随着
时间的流逝而愈发弥足珍贵。从而一件经典的产品不仅仅
是有着令人心怡的外表,愉悦的操作体验,更是珍贵记忆
的承载…
../Video/
../Video/
最后,除了看和用还留下些什么,反思
拥有莱卡是一种情节。它
记录的不仅仅是影像,而
是历史…
..\Video\YouTube_-
传统莱卡光学相机 莱卡数码相机
../Video/
../Video/
好的东西
好的东西不仅仅是满足客户最初所表述的需求,还有更多:
第一眼的惊讶,本能(Visceral level);
愉悦的操作体验,行为(Behavioral level);
难忘的回忆,反思(Reflective level);
需求确定活动,不是被动,而是主动性
项目的计划过程
我们将直觉上的计划过程规范化
工作范围产品范围
制定工作分解结构
项目起点:范围说明书
完成什么?
活动定义
以活动为基础
制定进度和成本计划
分解成工作
怎么完成?
项目范围是其他要素的核心
项目范围由两部分组成:
完成什么,产品范围
怎么完成,工作范围
项目效率由实现工作范围所需要的资源(时间和成本)决定
项目质量则针对产品范围,确定产品应该达到的要求(质量目标)
时间
成本
质量
实现质量目标的活动
项目计划过程
步骤:
确定产品范围目标
产生工作范围
根据工作范围确定实现
目标的效率要素
请思考:
这一过程对应到项目实
践活动当中
范围定义
制定工作分解结构
活动定义
活动排序
进度计划编制
资源估算
历时估算
成本预算
成本估算
初步
范围
说明书
成本
基准
计划
进度
基准
计划
范围
说明书
工作
分解
结构
产品范围
工作范围实现效果的效率
干系人评审
范围定义
范围定义过程主要是
为了创建描述项目范
围的书面文档,被称
为范围说明书。
其目的是约定项目工
作内容的边界。在其
范围内容内的属于项
目的目标;反之,则
不属于项目范畴
范围说明书必须得到
干系人的一致认可
范围定义
制定工作分解结构
活动定义
活动排序
进度计划编制
资源估算
历时估算
成本预算
成本估算
初步
范围
说明书
成本
基准
计划
进度
基准
计划
范围
说明书
工作
分解
结构
产品范围
工作范围实现效果的效率
干系人评审
制定项目范围说明书
范围说明书主要是定义和描述干系人对要完成的项目范围
进行界定,它明确了在项目正式开始之前干系人对目标的
理解
范围说明书的内容
项目的商业目标,为什么要进行这个项目
项目制约因素及假设,项目的不确定性
项目的可交付成果,范围目标
产品的要求与特性,质量目标
验收标准,对范围及质量进行界定的标准
进度里程碑,进度目标
成本估计,成本目标
制定工作分解结构
将项目范围说明中产
品范围划分为小的更
易管理的组成部分,
也构成了后续活动的
基础
范围定义
制定工作分解结构
活动定义
活动排序
进度计划编制
资源估算
历时估算
成本预算
成本估算
初步
范围
说明书
成本
基准
计划
进度
基准
计划
范围
说明书
工作
分解
结构
产品范围
工作范围
干系人评审
创建WBS的方法
类比法,利用一个类似项目的WBS作为构建本项目WBS
的起点。很多专业领域的项目都有约定俗成的WBS模板
供参考。一个组织也可以从自己过去积累的项目中提炼和
归纳出一个项目的通用WBS来作为今后项目的标准。
自上而下法,最常规的创建WBS的方法。它从项目最大
的单位开始,逐步将它们分解成下一级的多个子项。这个
过程就是不断增加级数,细化工作任务。对于经验丰富的
项目经理和项目组来说,由于他们具备广泛的技术知识和
整体的视角,这种方法是最好的。
自下而上法,则要让项目组人员一开始就尽可能地确定项
目有关的各项具体任务,然后再将各项具体任务进行整合,
并归总到一个整体活动或WBS的上一级内容当中。
练习:WBS分解
使用自上而下的方法,选择以下两个项目之一进行分解:
家庭装修
组装一台PC计算机
你是按照什么角度分解项目?
交付的产品 还是
完成的活动?
产生工作分解结构:步骤1
起点:从项目的交付物开始
项目
交付产品 交付产品 交付产品
产生工作分解结构:步骤2
对可交付物作进一步细化分解
项目
交付产品 交付产品 交付产品
子部件 子部件 子部件
产生工作分解结构:步骤3
分解完成子部件所需要的活动
项目
交付产品 交付产品 交付产品
子部件 子部件 子部件
分解构造活动 分解构造活动
产生工作分解结构:步骤4
用子部件组装成父产品所需要的横向构造活动
项目
交付产品 交付产品 交付产品
子部件 子部件 子部件
分解构造活动 分解构造活动
横向构造活动
产生工作分解结构的典型模式
项目
交付产品 交付产品 交付产品
子部件 子部件 子部件
分解构造活动 分解构造活动
横向构造活动
WBS的判别标准
WBS上层,面向客户的全部可交付物,既包括产品也包
括服务;
WBS下层,完成项目所需要的全部活动
项目产出物,除了项目交付物以外,项目中其他中间产品
和产出物也必须出现在WBS当中
组织项目的WBS模板
直接继承了过去项目的经验。完整的WBS中会详细的列
出完成一个项目所必需的活动和产出物。这些必要的活动
和要求很可能是过去经验和教训的代价;
帮助新参加项目的人员快速了解完成某一类型项目所需要
的工作和要求;
作为今后不断优化和改进的基础;
创建WBS是一种创造性工作:
虽然前面给出了一个创建WBS的简单步骤,但是WBS的
创建是一个经验提炼和升华的过程。你既可以按照前面说
的方法从上自下的不断分解,也可以所有的人一开始头脑
风暴式地列出所有可能的活动和产出物,然后自下而上的
总结和归纳。
由于是创造性类型的工作,所以我们无法定义一个通用的
过程,但却可以约定一个通用的结果来做判断。
WBSWBS:项目管理活动和工程活动的桥梁:项目管理活动和工程活动的桥梁
如何生成一个高质量的WBS没有一个明确的方法。因为
WBS往往是对项目产品所处的工程技术领域活动进行分
解,所以分解的方法和思路和其具体的应用领域高度相关。
从另外一个角度来说,WBS是项目管理活动和工程活动
的接口点。两个部分的活动在WBS中得到了有效的关联。
后续的质量,时间和成本管理都是围绕者工作分解结构进
行的。
制定进度计划
进度计划实质是从工
作分解结构中识别出
实施项目的活动,从
而产生项目的进度计
划信息
范围定义
制定工作分解结构
活动定义
活动排序
进度计划编制
资源估算
历时估算
成本预算
成本估算
初步
范围
说明书
成本
基准
计划
进度
基准
计划
范围
说明书
工作
分解
结构
产品范围
工作范围
干系人评审
活动排序
确定活动之间的相互关系,生成项目网络。评价活动之间
依赖关系的原因,即各种依赖关系
强制依赖关系:技术上的制约。活动性质中固有的依赖关系,常常
是某些客观限制条件
自由依赖关系:自行定义的依赖关系,有时候是因为资源上的制约。
没有任何一个项目拥有无限的资源
活动之间四种关系
活动之间的先后关系:前导和后续
每个活动有两个时间点
参照点不同出现4种活动先后关系
前导活动 A
后续活动 B
S
S
F
F
项目网络图
项目网络图是活动排序的输出,项目活动之间的逻辑关系
或排序的图形显示:其作用有:
能展示项目活动并表明活动之间的逻辑关系
表明项目任务将以何种顺序继续
在进行历时估计时,表明项目将需要多长时间
在改变某种活动历时,表明项目历时将如何变化
项目网络图反映了完成项目所必须进行的活动,但它并非
是第一个节点到最后一个节点的路线,而是遍历所有活动
并非所有工作分解结构中的事项都需要出现在图中,根据
目的选择适当的层次表示
常见的类型:箭线图法ADM,前导图法PDM
活动资源估算和活动历时估算
项目活动作为项目的工作范围被确定后,需要对其进行完
成时间和成本的估算
这两个估算活动往往需要合并在一起考虑
活动所需的总工作量 = 所需要的资源 X 所需要的时间
但事实上这一计算方式并不适用于所有类型的活动,不同种类的活
动,工作量与资源和时间的关系并不相同
活动(工作量)
所需要的资源 所需要的时间
关联关系
活动类型与资源和历时估算
某些活动在一定范围
内,资源和历时形成
线性反比关系
5个人作两个月的工作,
相等于10个人一个月
完成
调整资源和历时不影响
生产效率
请识别出哪些活动属
于这种类型?
所需资源
所需时间
所需工作量
最小资源
最短时间
活动类型与资源和历时估算
另外一类活动,当资
源增加到某一范围之
上时,资源和历时不
成线性反比关系。增
加资源会导致生产效
率下降
5个人作两个月的工作,
可能需要增加到相等
于15个人才能在一个
月内完成
哪些活动属于这种类
型?为什么会出现这
种现象?
所需资源
所需时间
所需工作量
最小资源
最短时间
标准工作量
生产效率
如何理解下面的矛盾:
劳动分工(增加资源)可以提
高生产效率
增加劳动资源到某种程度上之
后会降低生产效率
生产效率
投入资源
最佳资源配置
估算的方法
对未来活动进行估算是计划最直接的结果,估算的准确度
也直接影响着计划的有效性。
估算的误差和所处的产业有关
估算的方法大都来源于对过去经验的某种利用:
收集整个行业的经验,采取科学的结构化方法,识别出影响项目工
作量的参数,建立某种模型,例如 FPA, COCOMO
利用专家的经验作估计,例如宽带Delphi 方法
现实中应用最简单也最广泛的是Delphi法
制定进度计划
利用“活动定义”,“活动排序”,“资源估算”和“历
时估算”的结果,来确定项目内每个活动的开始和结束日
期,以及整个项目的进度安排,这就是进度计划
目标:建立一个现实的项目进度计划,为监控项目的时间
进展情况提供一个基础
工具:
干特图是显示项目进度信息最常用的工具
关键路径分析是制定和控制项目整体进度的重要工具
PERT是评价项目进度风险的一种方法
干特图
关键路径法CPM
CPM是一种用来预测总体项目历时的项目网络分析技术,也是战胜项
目拖延的重要工具
准确地说关键路径法就是假设项目在没有出现资源瓶颈问题的前提
下,依据每个活动的历时估算,确定实施项目的最佳路线。另一
方面关键路径法也告诉你在相同的时间内你能做什么不能做什么,
这就是活动的先后关系(有时候也称作活动的依赖关系)
项目路径
关键路径
什么是关键路径
关键路径(Critical Path)是决定项目历时的一系列活动;
一系列决定项目最早完成时间的活动
CP是项目中最?的路径
是项目整个过程中最长的路径;
关键路径上的任何活动延迟,都会导致整个项目完成时间的延迟
代表可以完成项目的最短时间量
计划评审技术(PERT)
PERT: Program Evaluation and Review Technique,
当具体活动历时估算存在很大的不确定性时,用来估计项
目历时的网络分析技术
PERT是将关键路径上的活动应用于加权平均历时估算
PERT
采用概率时间估计,乐观的(optimistic time) / 最可能的(most
likely time) / 悲观的(pessimistic time)活动历时估计,并假定
3个估计服从β概率分布(Beta probability distribution)。
按照这个假定,来估算每一个项目活动的期望进度和方差:
期望进度
方差
项目的期望工期和方差
项目的工期:关键路径上每个活动期望工期的和
项目的标准差:关键路径上每个活动方差和的平方根
练习:PERT计算
总期望工期:?天
标准差: σ =
1σ 1σ
2σ 2σ
3σ 3σ
在±σ内,包含了总面积的68%
在±2σ内,包含了总面积的95%
在±3σ内,包含了总面积的99%
解释
可以看出
项目在47天到57天内完成的可能性为68%;
项目在42天到62天内完成的可能性为95%;
项目在37天到67天内完成的可能性为99%;
思考题:如果要求最晚的项目结束时间是57天的话,可能性是多少?
答案: %
NORMDIST(x,mean,standard_dev,cumulative)
X 为需要计算其分布的数值。
Mean 分布的算术平均值。
Standard_dev 分布的标准偏差。
Cumulative TRUE
制定成本计划
成本计划实质是为项
目活动分配资源,从
而产生项目的成本计
划信息
范围定义
制定工作分解结构
活动定义
活动排序
进度计划编制
资源估算
历时估算
成本预算
成本估算
初步
范围
说明书
成本
基准
计划
进度
基准
计划
范围
说明书
工作
分解
结构
产品范围
工作范围
干系人评审
成本估算
成本估算的目的是为了估计项目总体的资源投入,其作用:
用于项目决策,了解项目所需的总体资源
为项目实施分配所需的总体资源
成本估算是基于项目资源和历时估算的结果来制定
成本预算
将项目计划对资源的使用情况统一转换为成本(Cost),
从而制定出项目的预算计划
项目成本预算有三大作用:
第一,项目成本预算是按照计划对项目资源进行分配
第二,项目成本预算也是一种控制机制
第三,项目成本预算为项目管理者监控项目施工进度提供了一把标尺。
预算制定
项目预算制定是基于被批准的项目总投入,分配到以
WBS为基础的单个工作项上去的过程。这一分配过程主
要是指直接成本,间接成本及其它则主要是对整个项目进
行规划:
项目的直接成本,直接消耗的资源成本。例如:直接人力成本,设
备消耗,外购服务的支出
需要被摊消的间接成本。例如:管理成本,其他难以追踪的成本
为了应付意外和风险所需要准备风险准备金和风险储备金
例子:项目需要购买了一个设备,如何处理?
成本预算基准计划
预算分配到了工作单元上,也包含了时间信息,则可以作
出一条项目累计成本曲线,成为成本预算基准计划
任务(时间)任务(时间)
累计成本累计成本
项目预算计划项目预算计划
期望情况期望情况
不期望情况不期望情况
TC1TC1
TC2TC2
TC3TC3
总结:项目开发计划
当我们确定了做什么(范围说明),怎么做(工作分解结
构),也同时安排了完成工作的时间(进度计划)和资源
(成本计划),事实上我们就完成了开发计划的主要部分,
但仍然有一个目标没有实现:质量
我们所安排和计划的活动中,并没有刻意针对质量目标实
现的活动,所以我们还需要计划确保质量目标完成的活动
复习
复习教材:
第2章- 项目整体管理:
第3章- 项目范围管理:,,
第4章- 项目时间管理:,,,
第5章- 项目成本管理:,
预习
教材 第6章 质量