项目进度计划 周 立 新 博士 北京大学软件与微电子学院
讲课提纲 项目时间管理重要性 项目时间管理 活动定义 活动排序 活动资源估算 活动历时估算 进度规划
1.时间在项目中为何如此重要? 在谈论项目时– 时间是所提及的一件重要事情 大多数项目都有一个规定的交付日期,这是因为: 需求 市场环境 进度控制是项目管理工作的一个主要的组成部分 时间易于测量,缺乏弹性 进度问题是项目管理中最普遍的原因 一般只比较实际进度与计划进度,忽略被批准的变更
时间是一种不可再生的 资源 时间就是金钱
2. 项目时间管理 项目时间管理包括使项目按时完成必须实施的各项过程 . 目标: 过程: 确保项目按时完成 活动定义 活动排序 活动资源估算 活动历时估算 进度规划 进度控制 目标: 确保项目按时完成
项目时间管理 6.1 活动定义 6.2 活动排序 6.3 活动资源估算 .1 输入 .1 企业环境因素 .2 组织过程资产 .3 项目范围说明书 .4 工作分解结构(WBS) .5 工作分解结构词典 .6 项目管理计划 .2 工具和技术 .1 分解 .2 模板 .3 滚动式规划 .4 专家判断 .5 规划组成部分 .3 输出 .1 活动清单 .2 活动属性 .3 里程碑清单 .4 请求的变更 .1 输入 .1 项目范围说明书 .2 活动清单 .3 活动属性 .4 里程碑清单 .5 被批准的变更请求 .2 工具和技术 .1 前导图法(PDM) .2 箭线图法(ADM ) .3 进度网络模板 .4 确定依赖关系 .5 应用提前和滞后量 .3 输出 .1 项目进度网络图 .2 活动清单 (更新) .3 活动属性 (更新) .4 请求的变更 .1 输入 .1 企业环境因素 .2 组织过程资产 .3 项目范围说明书 .4 工作分解结构(WBS) .5 工作分解结构词典 .6 项目管理计划 .2 工具和技术 .1 专家判断 .2 多方案分析 .3 出版的估算数据 .4 项目管理软件 .5 自底向上估算 .3输出 .1 活动资源需求 .2 活动属性 (更新) .3 资源分解结构 .4 资源日历 (更新) .5 请求的变更
项目时间管理 6.4 活动历时估算 6.6 进度控制 6.5 制定进度计划 .1 输入 .1 组织过程资产 .2 项目范围说明书 .2 项目范围说明书 .3 活动清单 .4 活动属性 .5 项目进度网络图标 .6 活动资源需求 .7 资源日历 .8 活动持续时间估计 .9 项目管理计划 风险登记册 .2 工具和技术 .1 进度网络分析 .2 关键路径法 .3 进度压缩 .4 假设场景分析 .5 资源平衡 .6 关键链法 .7 项目管理软件 .8 应用日历 .9 调整提前和滞后 .10 进度模型 .3 输出 .1 项目进度表 .2 进度模型数据 .3 进度基线 .4 资源需求 (更新) .5 活动属性 (更新) .6 项目日历 (更新) .7 申请的变更 .8 项目管理计划 (更新) .进度管理计划(更新) .1 输入 .1 进度管理计划 .2 进度基线 .3 进展报告 .4 经批准的变更请求 .2 工具和技术 .1 进度报告 .2 进度变更控制系统 .3 绩效测量 .4 项目管理软件 .5 偏差分析 .6 进度比较 甘特图 .3 输出 .1 进度模型数据 (更新) .2 进度基线 (更新) .3 绩效测量 .4 请求的变更 .5 被推荐的纠正措施 .6 组织的过程资产(更新) .7 活动清单 (更新) .8 活动属性 (更新) .9 项目管理计划 (更新) .1 输入 .1 企业环境因素 .2 组织过程资产 .3 项目范围说明书 .4 活动清单 .5 活动属性 .6 活动资源需求 .7 资源日历 .8 项目管理计划 风险登记册 活动成本估算 .2 工具和技术 .1 专家判断 .2 类比估算 .3 参数估计 .4 三点估计 .5 储备金分析 .3 输出 .1 活动持续时间估计 .2 活动属性 (更新)
2.1 活动定义 对工作分解结构(WBS )中规定的可交付成果或半成品的产生所必须进行的具体活动进行定义,并形成文档。 可交付成果 活 动 需求分析说明书 会晤用户 研究现有系统 明确用户需求 撰写需求分析说明书 需求评审
2.1 活动定义 将项目组成部分细分为更小、更易于管理的单元以便更好地进行管理和控制。 此处的最后成果是指活动(行动步骤),而不是指可交 输入 工具和技术 输出 .1 企业环境因素 .2 组织过程资产 .3 项目范围说明书 .4 工作分解结构 .5 工作分解结构词典 .6 项目管理计划 .1 分解 .2 模板 .3 滚动式规划 .4 专家判断 .5 规划组成部分 .1 活动清单 .2 活动属性 .3 里程碑清单 .4 请求的变更 将项目组成部分细分为更小、更易于管理的单元以便更好地进行管理和控制。 此处的最后成果是指活动(行动步骤),而不是指可交 付成果(有形产品)。
2.2 活动排序 输入 工具和技术 输出 可能会发现必须对某些活动进行再分解或重新定义。 硬逻辑关系 不可能在基础完成之前进行上部结构施工 .1 项目范围说明书 .2 活动清单 .3 活动属性 .4 里程碑清单 .5 核准的变更请求 .1 前导图法(PDM) .2 箭线图法(ADM ) .3 进度网络模板 .4 确定依赖关系 .5 应用提前和滞后量 .1 项目进度网络图 .2 活动清单 (更新) .3 活动属性 (更新) .4 请求的变更 硬逻辑关系 不可能在基础完成之前进行上部结构施工 软逻辑关系 在专门应用领域的“最好实践”。 期望采用专门的顺序。 项目活动与非项目活动之间的依赖关系 软件项目中的测试活动可能依 赖于外部供方交付硬件设施。 可能会发现必须对某些活动进行再分解或重新定义。
活动之间的 逻辑关系 逻辑关系: 完成-开始(FS, Finish - Start) 完成-完成(FF, Finish - Finish) 开始-开始(SS, Start - Start) 开始-完成 (SF, Start - Finish) 提前(Lead)与滞后(Lag)
完成-开始 (FS, Finish - Start) 任务 A 任务 B 在活动任务B开始前,活动任务A必须完成 只有编码完成后才能进行测试
开始-开始 (SS, Start - Start) 任务A和任务B可同时开始, 但在前者 (A) 开始以前后者 (B)不能开始. 任务A 箭头方向表示哪个任务是前者,哪个任务是后者 只有硬件安装开始后才开始软件安装
结束-结束 (FF, Finish - Finish) 任务A 任务A和任务B可同时结束, 但在前者 (A) 完成前后者 (B)不能完成 所有必要文件都备齐后才能结案 任务B
开始-结束 (SF, Start - Finish) 任务A 任务B 在任务 B 完成以前任务 A 必须开始 (很少使用). 下一班的警卫来了,当班的警卫才可以离去
提前(Leading) 在任务 A完成前2天,任务B必须开始 - 2 天 任务A 任务B
滞后(Lag) 任务 A完成后2天,任务B 才能开始 2 天 任务A 任务B
箭线图法(ADM)-双代号网络(AOA) 用箭线表示活动,用节点表示事件 只使用一种活动之间的逻辑关系:FS 作图要求: 每一个事件必须有唯一的事件号; 每一个活动必须用唯一的紧前事件和唯一的紧后事件描述; 紧前事件编号要小于紧后事件编号; 使用虚活动 活动1-2 事件1 事件2
箭线图法(ADM) 虚活动 1)虚活动没有历时,不需要资源 2)箭线图网络表达活动关系的需要 3)用带箭头的虚线表示 B C A 开始 结束 F E 虚活动 1)虚活动没有历时,不需要资源 2)箭线图网络表达活动关系的需要 3)用带箭头的虚线表示
Figure 5-2. 项目X的双代号网络(AOA)
箭线图(ADM)或双代号网络(AOA) 练习 根据给定的条件,绘制箭线图 对每一项活动,确定: 在该活动可以开始之前,那些活动必须完成; 那些活动可以与该活动同时开始; 那些活动只有在该活动完成之后开始; (找出路线最长的路径)
前导图法(PDM)-单代号网络(AON) 1)用节点表示活动,用箭线表示活动之间的关系 2)活动之间存在四种依存关系 结束——开始 ; 结束——结束 开始——开始 ; 开始——结束 3)对活动增加了滞后、提前关系; 4)没有虚活动 5)大多数项目管理软件采用前导图法 活动1 活动2
前导图法(PDM) A B C 开始 结束 D E F
前导图法(PDM) ——单代号网络(AON)练习 将练习所做的箭线图网络转换成前导图网络
2.3 活动资源估算 统一定额法 资料统计法 专家小组法 德尔菲法 包括用于为项目产生不同方法的所有技术:头脑风暴法、横向思维 输入 工具和技术 输出 .1 企业环境因素 .2 组织过程资产 .3 项目范围说明书 .4 工作分解结构 .5 工作分解结构 词典 .6 项目管理计划 .1 专家判断 .2 多方案分析 .3 出版的估算数据 .4 项目管理软件 .5 自底向上估计 .1 活动资源需求 .2 活动属性 (更新) .3 资源分解结构 .4 资源日历 (更新) .5 请求的变更 专家小组法 德尔菲法 包括用于为项目产生不同方法的所有技术:头脑风暴法、横向思维 统一定额法 资料统计法
资源计划编制 种类? 数量? 何时? 资源要满足需求并与实施进度相匹配 人 机器 软件 办公环境 培训 资料 通讯费 会议 咨询 公关 鉴定 广告 娱乐 水电 后勤 房租 保密 资源要满足需求并与实施进度相匹配 保险、福利、差旅、午餐、加班、管理费用、税金、风险、利息
资源和资源平衡 资源的种类 资源平衡技术 劳动力 (Labour ) 设备 (Equipment) 原材料 (Material) 其他 (Other): 指不符合上述分类的资源 , 例如分包合同、租约等。 资源平衡技术 可储备资源与不可储备资源 平衡资源 稀缺的资源
资源平衡的基本过程 建立网络,将资源分配给各项活动。 首先按尽快原则安排活动——含有最迟原则或固定日期的活动除外。 建立资源需求直方图。 决定资源上限(可使用最大量),找出资源冲突,也就是说,指出何时需要量超过可使用量。微软Project软件和其他项目管理出版物将这种情况称作资源过度配置 (Resource Overallocation)。 重新安排有松闲时间 ( 浮动时间 ) 的活动以减少资源冲突的数量。如果有可能 , 可在它们的松闲时间限度内重新安排这些活动 , 以避免更改项目的终止日期。
3.2.4 资源平衡示例 项目网络图中标出了活动A、B、C及其历时,活动A有3天时差,活动C有2天时差,假设活动A需要2个员工,活动B需要4个员工,活动C需要2个员工。 A=2天 B=5天 C=3天 2 1 4 3 8 7 6 5 4 3 2 1 A B C 8 7 6 5 4 3 2 1 A C B 1 2 3 4 5 1 2 3 4 5 如果所有活动同一天开始的资源使用 如果活动C延迟2天开始的资源使用
资源平衡的其他过程 增员或延长加班时间以增加资源。 延长项目工期,这将增强所有活动的浮动时间(Float),以增加重新进行进度安排的选择。 削减活动以减少资源需求。 改变网络的逻辑(例如,活动的顺序)。 限制项目范围。 将大项目细分。
2.4 活动历时估算 输入 工具和技术 输出 .1 企业环境因素 .2 组织过程资产 .3 项目范围说明书 .4 活动清单 .5 活动属性 .4 活动清单 .5 活动属性 .6 活动资源需求 .7 资源日历 .8 项目管理计划 .风险注册 .活动成本估计 .1 专家判断 .2 类比估计 .3 参数估计 .4 三点估计 .5 储备金分析 .1 活动持续时间 估计 .2 活动属性 (更新)
活动工期估计(1) 根据生产能力信息计算: 活动所需要的资源量=活动工作量/单位资源生产能力 活动工期=活动所需要的资源量/(单位时间可得资源量)
咨询专家 注意: 需要最新的知识 源于对项目的理解 考虑新的技术/方法
通过类比 - 举例 与先前的项目类似 – 是其规模的150%,因此也要多花150%的时间 (less learning curve) 通常花3周时间准备一个合同 建设阶段大约花12个月
参数估计 来自于对所需数量的了解和正常的生产能力水平 例如: 记住要设定时间 25 公里长的公路 – 每公里大约要1个月 50,000线路 – 每月大约10,000 条线 5架飞机-每月一架 2天编写一个存储过程 记住要设定时间
历史信息 项目收尾阶段的一个任务即是收集信息 一些行业公布的图表: 生产能力 所需的时间 记住 – 即使你项目上的专职人员也有其他的组织任务
估计的准确性 每个行业在不同阶段 都有不同的精确标准
计划评审法( PERT ) 美国海军在1958年开发了计划评审技术PERT,北极星导弹系统项目 PERT 方法对每个活动的工期有3种估计: 1) 乐观的; 2) 最可能的; 3) 悲观的; 并假定活动工期服从贝塔分布;
PERT –活动工期 高 最可能的 发生的可能性 Beta 分布 乐观的 悲观的 低 可能的工期
PERT –活动工期计算 每个活动的平均工期 = (乐观的+4(最可能的) + 悲观的)/6 每个活动工期的标准差( ) = (乐观的- 悲观的)/6 每个活动工期的方差 (2 ) = ((乐观的- 悲观的)/6)2
课堂练习 活动A工时为3天并开始于星期一早晨,4号。后继活动B与A具有完成一开始依赖关系。完成一开始关系有3天的滞后,而且活动B工时为4天。星期日是非工作日。从这些数据可以得出什么结论? A.两项活动总工时为8天 B.活动A开始到活动B完成之间的日历时间(Calendar time)是11天 C.活动B完成日期是星期三,13号 D.活动A开始与活动B完成之间日历时间为14天
2.5 进度规划 输入 工具和技术 输出 .1 组织过程资产 .2 项目范围说明书 .3 活动清单 .4 活动属性 .5 项目进度网络图 .2 项目范围说明书 .3 活动清单 .4 活动属性 .5 项目进度网络图 .6 活动资源需求 .7 资源日历 .8 活动持续时间估计 .9 项目管理计划 .风险登记册 .1 进度网络分析 .2 关键路径法 .3 进度压缩 .4 假设场景分析 .5 资源平衡 .6 关键链法 .7 项目管理软件 .8 应用日历 .9 应用提前和滞后 .10 进度模型 .1 项目进度表 .2 进度模型数据 .3 进度基线 .4 资源需求 (更新) .5 活动属性 (更新) .6 项目日历 (更新) .7 请求的变更 .8 项目管理计划 (更新) .进度管理计划(更新)
制定进度计划(1) 确定项目的开始和结束时间 在不考虑资源约束的条件下,计算项目的工期,包括: 1)网络的关键路径 2)各个活动的自由浮动时间 计算资源需求计划
关键路径 在ADM(双代号)网络图中,最长的一条路径称作关键路径,关键路径就是项目的工期。 计算练习题目(ADM)的关键路径! 在PDM(单代号)网络图中,活动的自由浮动时间等于零的一条路径就是关键路径,关键路径长度等于项目的工期。 杜邦公司在1957年提出关键路径法CPM
Figure 5-8. 决定项目X的关键路径
自由浮动 (时差) 定义 – 在没有延误任何随后活动的最早开始日期的情况下,一项活动可以被推迟的时间数量。 Free Float,
总体浮动(时差) 定义 – 在没有延误项目最早结束日期的情况下,一项活动从最早开始日期被推迟的时间长度,称之为总体浮动时间。 Total Float 总体浮动时间的计算: 使用正推法计算最早开始日期 (ES),最早结束日期(EF), 使用逆推法计算最迟开始 日期(LS),最迟结束 日期(LF), 总体浮动= LS – ES 或 LF - EF
正推法 正推法 最早开始日期 (ES) 最早结束日期(EF) 从网络图左边开始,为每项任务制定最早开始和最早结束日期,进 行到网络图结束(最右边) 最早开始日期 (ES) 基于网络逻辑和进度约束条件,一项活动开始的可能的最早时间。 最早结束日期(EF) 活动可完成的可能的最早时间
正推法计算 ES=MAX{EFi} +1 EF = ES + DU -1 工期 ES EF 任务 LS 浮动 LF 3 DU = 2 4 刷门框 1 2 DU = 3 9 DU =2 10 DU = 2 3 5 刷屋顶 准备 清扫 DU = 4 3 6 7 DU = 2 8 刷墙 刷墙 (第二遍)
逆推法 逆推法 最迟开始日期 (LS) 最迟结束日期 (LF) 以项目完成日期为开始日期,使用结束时间和逆向工作, 计算最迟开始和最迟结束日期 最迟开始日期 (LS) 在没有延误一项活动随后任务的情况下,可开始该任务的 最迟时间。 最迟结束日期 (LF) 在没有延误一项活动之后任务的情况下,任务可被完成的 最迟时间
逆推法计算 LF=MIN{LSJ} -1 LS = LF - DU + 1 工期 ES EF 任务 LS 浮动 LF 3 DU = 2 4 刷门框 7 4 8 1 2 DU = 3 9 DU =2 10 DU = 2 3 5 刷屋顶 准备 清扫 1 2 6 3 8 9 10 DU = 4 3 6 7 DU = 2 8 刷墙 刷墙 (第二遍) 3 6 7 8
练习 计算练习题目中单代号网络的关键路径以 及各个活动的自由浮动时间。
练习 计算下列各项活动的ES、EF、LS、LF以及时差,找出项目的关键路径,试问该项目能否在30周内完成? 2 5 系统分析 5 3 开发输入 8 设计输入、输出 3 1 8 问题界定 2 测试系统 6 6 开发输出 10 4 序号 7 9 设计数据库 15 开发数据库 2 实施系统 5 活动名称 工期
尽快原则,最迟原则,和固定日期 从关键路径之外的活动中可获得一些自由浮动时间(float, also called slack)。 在这些活动完成过程中存在一个窗口时间(windows of times),这个窗口的极限是: 尽快原则(As Soon As Possible, ASAP ) 最迟原则(As Late As Possible, ALAP) 大量的项目计划以ASAP为前提假设,但当ALAP与项目内容更相关的时候可以使用。 固定日期(Fixed Dates)是另一种选择。
制定进度计划(2) 第一次 : 项目工期很可能难以接受或者资源需求数量得不到满足或者变化很大。 1)查明工期长的原因 先检查逻辑关系 – 再检查关键路径 然后考虑工期压缩技术 2)检查资源需求状况 考虑使用资源平衡技术 反复几次,满足项目工期和资源约束条件!
缩短项目工期方法 在进度计划制订后,可能项目结束日期不满足要求,需要进一步缩短进度计划的项目工期。 可以采用赶工(Crashing, 通过增加资源) 或快速跟进(Fast tracking, 通过并行施工)等方法 。
赶工(Crashing)——增加资源 在资源有限的条件下,尽可能把资源用到关键活动上,以有效压缩项目工期! 线性关系 活动资源 非线性关系 活动工期
“赶工”示例 B C E D F A 要求的时间/周 费用/美元 每周压缩成本/美元 活动 正常 压缩 A B C D E F 4 6 2 7 5 1 3 10 000 30 000 8 000 12 000 40 000 20 000 14 000 42 500 9 500 18 000 52 000 29 000 2 000 12 500 1 500 6 000 3 000
“赶工”示例 110 000 160 000 150 000 140 000 130 000 120 000 10 24 22 20 18 16 14 12 B 赶工 E 赶工 F 赶工 A 赶工 所有活动赶工 全部赶工的最小成本 正常业务
快速跟进(Fast tracking) 并行施工 将一些一般顺序进行的任务改为并行实施,比如,软件项目设计完成之前开始写代码。 并行施工经常导致返工,一般要增加风险。
项目工期优化 项目工期不是越短越好! 工期压缩、并行施工需要支付代价。 资源的数量可能受到限制,不是无限的。 通过增加资源压缩工期有时是无效的。 一般地,考虑在资源约束下,将项目的工期、费用、收益进行综合考虑,选择科学的项目工期!
计算资源需求计划 根据每一个活动对资源的需求,计算各个单位时间内项目对资源的需求数量。 资源需求量 时间
资源平衡(Levelling) 根据资源计划的分析,可能出现: 资源需求超过可得资源限制数量 或者资源需求量变化比较大,资源管理困难。
资源平衡(Levelling) 通过调整任务的工期或者次序,使对资源的需求尽可能在直方图上表现的平缓并不超过资源限量。 一般地,通过调整非关键路径的活动实现。 向关键路径上要进度, 向非关键路径上要资源
资源平衡 可用资源数量 技术工人数量 时间/月
PERT –活动工期的计算 项目的工期:是关键路线上每个活动平均工期的和 项目的方差 :是关键路线上每个活动方差的和; 项目的标准差:是项目方差的平方根;
PERT –活动工期计算举例 2,3,6 3,4,6 事件1 事件2 4,6,8 事件3 事件4 活动A 活动B 活动C 注:箭线下面的符号表示活动名称,上面的三个数字表示三种可能的活动时间
PERT –活动工期计算举例 项 活动 O、M、P 平均工期 标准差 方差 A 2,3,6 3.33 4/6 16/36 B 4,3,8 6.00 C 3,4,6 4.17 3/6 9/36 估计的项目总工期 13.50 1.067 41/36 计算结果:项目的工期是13.50天,标准差是1.067天。
PERT –活动工期计算举例 试问:项目在14.6天完成的概率大约有多大? 解法一:直接从标准差图中观察。 解法二:计算完成网络计划的可能性值 ,然后查表求解。 网络计划的计算工期 网络计划的要求工期