术语表
关键路径
关键路径法(CPM)、关键路线、Critical Path
关键路径(critical path,也称关键路线)是项目中最长的一条相互依赖的活动链。它的长度决定项目最早可能的完成日期。关键路径上的活动没有 时差:其中任何一项延误一天,整个项目就晚一天完成。
关键路径法(Critical Path Method,CPM)根据每项活动的三项信息计算这条路径:工期、紧前活动和紧后活动。James E. Kelley(Remington Rand)和 Morgan R. Walker(DuPont)在 20 世纪 50 年代末开发了这一方法,几乎与美国海军的 PERT 方法 同时出现。1 两者都基于 网络图;CPM 使用固定工期,PERT 使用三个估算值。
如何计算关键路径?
- 列出活动和工期。 把项目分解为活动,并估算每项活动的工期。
- 确定依赖关系。 确定活动的先后顺序,并画出网络图。
- 正推法。 一项活动的最早开始时间(ES)等于其所有紧前活动最早完成时间(EF)中的最大值。EF = ES + 工期。项目中最大的 EF 就是最早完成日期。
- 逆推法。 从项目完成日期开始倒推。一项活动的最晚完成时间(LF)等于其所有紧后活动最晚开始时间(LS)中的最小值。LS = LF − 工期。
- 计算时差。 总时差 = LS − ES。总时差为零的所有活动构成关键路径。
示例:在网络图中找出关键路径
一个网站改版项目包含五项活动。设计(B)和内容(C)在分析(A)之后开始。开发(D)在设计之后进行,测试(E)需要开发和内容都完成。
网站改版项目的网络图
五项活动,工期以工作日计,箭头表示依赖关系
计算从第 0 天开始。正推法得出项目在 14 天后完成,逆推法得出各项最晚时间:
| 活动 | 工期 | 紧前活动 | ES | EF | LS | LF | 时差 |
|---|---|---|---|---|---|---|---|
| A 分析 | 3 | 无 | 0 | 3 | 0 | 3 | 0 |
| B 设计 | 5 | A | 3 | 8 | 3 | 8 | 0 |
| C 内容 | 2 | A | 3 | 5 | 10 | 12 | 7 |
| D 开发 | 4 | B | 8 | 12 | 8 | 12 | 0 |
| E 测试 | 2 | C, D | 12 | 14 | 12 | 14 | 0 |
测试(E)在第 12 天开始,因为它要等开发完成(EF 12),而不是内容(EF 5)。逆推时,分析(A)取其紧后活动中最小的 LS:min(3, 10) = 3。关键路径为 A、B、D、E,共 3 + 5 + 4 + 2 = 14 天。
关键路径上的活动延误会怎样?
项目完成日期推迟相同的天数。示例中的三种情况:
- 设计(B)多用 2 天: B 位于关键路径上,项目在第 16 天而不是第 14 天完成。
- 内容(C)多用 5 天: C 有 7 天时差,项目仍在第 14 天完成。
- 内容(C)多用 8 天: 延误超出时差一天。项目在第 15 天完成,A、C、E 成为新的关键路径。
最后一种情况说明:关键路径不是一成不变的。每次修改工期或依赖关系后都要重新计算。如果要提前完成项目,只需压缩关键活动,例如采用 赶工 或 快速跟进。加快有时差的活动不会改变完成日期。
关键路径法的常见错误
- 遗漏依赖关系: 漏掉一项紧前活动,会让活动开始得过早,路径只在纸面上变短。
- 工期过于乐观: CPM 每项活动只用一个数值。数值过于乐观,完成日期也会过于乐观。
- 忽略资源: CPM 假设每项活动都有足够人手。如果同一个人负责两项并行活动,计划就不再成立。
- 不更新: 没有实际值,关键路径显示的是计划当天的情况,而不是今天的情况。
Merlin Project 如何显示关键路径?
Merlin Project 在每次修改后自动完成正推和逆推计算。选择 视图 › 显示关键路线,或点按工具栏中的闪电图标。Merlin Project 在甘特图中以红色突出显示关键活动,颜色可在样式检查器中设置。

预计的开始可宽延时间 和 预计的结束可宽延时间 两列显示时差。两者都为零时,该活动位于关键路径上。计划的关键 一列基于最初计划,预计的关键 一列考虑实际值。因此,已 100% 完成的活动不会再是“预计的关键”。
修改工期或完成活动后路径如何变化,请参阅指南 在 Merlin Project 中显示并理解关键路径。