PERT图(计划评审技术图)是一种用网络结构表达任务依赖关系,并用"乐观/最可能/悲观"三个值估算每个任务工期,最终算出项目期望工期与关键路径的项目管理图。它适合任务依赖复杂、不确定性高、需要向他人解释"为什么不能更快"的项目;不适合单人短期任务或纯日程展示(那种场景用甘特图更合适)。本文给出完整公式、一个可直接抄用的真实算例、五步在线绘制教程、常见踩坑与自检清单。

一、先给结论:PERT图到底解决什么问题
项目排期里最容易被攻击的一句话,是"我觉得大概要两周"。
这句话的问题不在数字准不准,而在于它不可拆解、不可追问、不可验证。对方只要问一句"为什么不是十天",你答不上来,它就自动降级成"你留了余量",接下来只能挨砍。
PERT图解决的正是这件事。它做两件事:
第一,把"一个数"变成"三个数加一条公式"。 每个任务不许估单点,必须给出乐观工期(t₀)、最可能工期(tₘ)、悲观工期(tₚ),再用加权公式算出期望工期。数字背后有算式,就不容易被当成情绪。
第二,把"任务清单"变成"依赖网络"。 谁必须等谁、哪条链断一天全盘就晚一天,图上一条箭头就能看清。这条最长的链叫关键路径,它才是项目真实的工期来源。
一句话概括:PERT图不是用来排日程的,是用来回答"为什么快不了"的。
二、什么时候用,什么时候别用
适合用 PERT 图的场景:
- 任务之间有明确先后依赖(等审批、等接口、等联调)
- 不确定性高,同一个活顺利三天、倒霉十二天的情况常见
- 需要向上汇报、对外承诺、跨部门对齐排期
- 想找出"到底是哪一段拖住了整个项目"
- 开工季集中排期、版本迭代排期、客户交付承诺、大修/版本解耦项目
不建议用的场景:
- 单人两三天能干完的零散活——画图的成本比估算还高
- 只关心"什么时候开始、什么时候结束"的日程展示——用甘特图
- 迭代内每日进度跟踪——用看板图或燃尽图
判断标准很简单:只要有人会追问你"为什么不能更快",就该上 PERT。、

三、四个必须先搞懂的概念
1. 活动(Activity)
项目里一个不能再拆的动作。判断标准是:它有明确的开始和结束,且产出能被验证。
"做订单模块"不是活动,"订单表结构改造并通过评审"才是活动。
2. 三点估算
对每个活动给出三个工期:
| 名称 | 符号 | 含义 | 常见错填方式 |
|---|---|---|---|
| 乐观工期 | t₀ | 一切顺利、无人打扰、无返工的天数 | 填成"理想值",脱离现实 |
| 最可能工期 | tₘ | 正常水准下单次能完成的天数 | 填成"平均值",失去意义 |
| 悲观工期 | tₚ | 被插需求、被打回、被拉去救火情况下的天数 | 不敢写实,往小了填 |
悲观值必须真实。 它来自账本,不来自想象——去年同类型送审卡了十一个工作日,那这次的悲观值就是12天,而不是你希望的6天。
3. 期望工期与标准差
PERT 采用加权平均(贝塔分布近似):
- 期望工期 te =(t₀ + 4×tₘ + tₚ)÷ 6
- 标准差 σ =(tₚ - t₀)÷ 6
权重给到"最可能"4倍,是因为它是出现频次最高的情形;σ 衡量的是这个活动有多不靠谱——tₚ 与 t₀ 拉得越开,说明你心里越没底。
4. 关键路径与浮动时间
把所有活动按依赖串起来,会得到若干条从起点到终点的路径。总工期最长的那条,就是关键路径。
关键路径上的活动,浮动时间为0:它晚一天,项目就晚一天。
非关键路径上的活动,有一定浮动时间:它晚一点,可能不影响总工期。
这条区分极其重要,它直接决定了:你加班加在哪儿才有用。
四、完整算例:一个真实的节后改造项目
项目背景:某业务系统需要在版本中加入新的资质校验链路,涉及后端改造、前端适配与第三方资质审批。
Step 1:拆出六个活动并明确依赖
| 活动 | 前置依赖 | 说明 |
|---|---|---|
| A 接口设计 | 无 | 定义新的入参与返回结构 |
| B 后端改造 | A | 主链路改造,含兼容旧版本 |
| C 前端适配 | A | 新字段展示与异常态处理 |
| D 第三方资质审批 | B | 外部机构审核,本方只能等 |
| E 前后端联调 | B、C、D | 全流程打通 |
| F 回归测试 | E | 主流程回归 + 旧版本兼容验证 |
注意 C(前端适配)只依赖 A,不与 B 串行,这就是后面它能脱离关键路径的原因。
Step 2:填三点估算并逐项计算
套公式 te =(t₀ + 4tₘ + tₚ)÷ 6:
- A 接口设计(1 / 1.5 / 3):te =(1 + 6 + 3)÷ 6 = 1.7天;σ =(3-1)÷6 = 0.33
- B 后端改造(2 / 3 / 7):te =(2 + 12 + 7)÷ 6 = 3.5天;σ =(7-2)÷6 = 0.83
- C 前端适配(1 / 2 / 4):te =(1 + 8 + 4)÷ 6 = 2.2天;σ =(4-1)÷6 = 0.50
- D 第三方资质审批(2 / 5 / 12):te =(2 + 20 + 12)÷ 6 = 5.7天;σ =(12-2)÷6 = 1.67
- E 前后端联调(1.5 / 2 / 4):te =(1.5 + 8 + 4)÷ 6 = 2.2天;σ =(4-1.5)÷6 = 0.42
- F 回归测试(2 / 2.5 / 6):te =(2 + 10 + 6)÷ 6 = 2.8天;σ =(6-2)÷6 = 0.67
Step 3:枚举路径,找出关键路径
网络中实际存在两条主路径:
- 路径一:A → B → D → E → F = 1.7 + 3.5 + 5.7 + 2.2 + 2.8 = 15.9天
- 路径二:A → C → E → F = 1.7 + 2.2 + 2.2 + 2.8 = 8.9天
最长的是路径一,关键路径 = A→B→D→E→F,项目期望工期 15.9 天。
C(前端适配)所在的路径二短了 7 天,意味着 C 有约 7 天的浮动时间:它晚一周开工,项目上线日都不动。
Step 4:算出波动,给出可承诺的工期
关键路径上五个活动的标准差平方和:
0.33² + 0.83² + 1.67² + 0.42² + 0.67² = 0.11 + 0.69 + 2.79 + 0.18 + 0.45 = 4.22
开根号得总标准差 σ ≈ 2.05天。
按正态分布近似,项目在期望工期内完成的概率约50%。若要提升到约95%的把握,需按 te + 2σ 承诺:
15.9 + 2 × 2.05 ≈ 20天
Step 5:定位真正的瓶颈
关键路径 15.9 天里,D(第三方资质审批)独占 5.7 天,占比约36%。
而且这段时间的特殊性在于:它由外部机构决定,本方既无法通过加人缩短,也无法通过加班压缩,周末和节假日直接停滞。
于是这个项目的结论变得非常清晰:
- 想压缩到 12 天?关键路径要砍掉近 4 天,其中最容易动的是 D,但 D 恰恰是本方控制力最弱的一段
- 真正有效的动作不是催开发,而是把 D 的送审材料提前备齐、提前递交
- 在 D 上多投入一个人,期望收益为零;在 B 上多投入一个人,收益受限于沟通成本(布鲁克斯定律)
把这张图摆到排期会上,讨论焦点会自然从"你们再想想办法"转向"这个审批怎么提前"——这就是 PERT 图最有价值的输出。

五、五步在线绘制一张 PERT 图
- 建画布与模板。 打开在线绘图工具,新建文件,选择"PERT图/网络计划图"或"流程图"模板。多数工具的高级图形库中已内置 PERT 节点样式。
- 铺活动节点。 每个活动一个圆形或圆角矩形,节点内写清三行内容:活动名、(t₀/tₘ/tₚ)、期望工期 te。建议统一格式,例如「B 后端改造 (2/3/7) te=3.5」。
- 连依赖箭头。 严格按照前置关系连线,箭头方向代表执行顺序。虚拟依赖(如"必须等待某外部事件")用虚线箭头区分实线的工作依赖。
- 标关键路径。 枚举所有路径求总工期,把最长的那条路径的线加粗并标红(推荐红色 #E02020 或橙色加粗),其余保持浅灰。这一眼的视觉差就是图的核心信息。
- 加图例与浮动说明。 在图右下角补一个小图例框:实线=工作依赖,虚线=外部等待,红色=关键路径。同时在非关键活动旁标注浮动天数,方便读图人理解"这个晚几天没关系"。
提示:如果团队更习惯看时间安排而非拓扑结构,可以把同一份活动数据在工具里切换到甘特图视图,两张图互为补充——PERT 讲逻辑,甘特讲日程。
六、六个最常见的坑
坑一:把悲观值填成"稍微悲观一点"。 结果整条曲线的波动被人为压小,最后所有人都觉得"应该差不多",然后一起翻车。悲观值必须来自历史记录。
坑二:六个数相加当总工期。 忽略了并行与非关键路径,工期被严重高估,反而在汇报时失去可信度。务必先找关键路径。
坑三:只画工作依赖,不画外部等待。 审批、第三方接口、跨部门排期这些"你说了不算"的时间段,恰恰是最该单独标红的节点。
坑四:用 PERT 图跟踪每日进度。 PERT 图是计划期的工具,一旦开工,每日跟踪应切换到看板图或燃尽图,否则图会频繁重画,维护成本爆炸。
坑五:把关键路径当成固定不变。 项目进行中,某段提前结束或改为并行后,关键路径会转移到别的链上。建议每个里程碑重算一次。
坑六:承诺只写期望工期。 te 意味着约50%的延期概率。对外交付日期应写 te + 2σ,并在备注说明依据。
七、PERT图和其它几张图的区别
| 对比图 | 核心用途 | 回答什么问题 | 什么时候用 PERT 更合适 |
|---|---|---|---|
| 甘特图 | 日程排布与进度展示 | 什么事在哪天做,做到哪了 | 需要向人解释"为什么不能更早"时 |
| 燃尽图 | 迭代内剩余工作量趋势 | 这个 Sprint 能不能按时完成 | 需要估算未知任务的总工期时 |
| 看板图 | 流程状态与在制品控制 | 哪个任务卡住了,谁在假忙 | 项目尚未开始、需要先算工期时 |
| WBS | 工作范围逐层分解 | 这个活包含哪些部分 | 分解完成后需要排依赖关系时 |
| 思维导图 | 发散与信息整理 | 有哪些相关要素 | 需要严格表达先后顺序时 |
简单的协作顺序是:WBS 拆范围 → PERT 算工期找关键路径 → 甘特图排日程 → 看板图做过程管控 → 燃尽图盯迭代健康度。
八、发布前自检清单
- 每个活动是否都填了完整的三个工期值,且悲观值有事实依据?
- 依赖箭头是否画全,外部等待是否用虚线单独区分?
- 是否枚举了所有路径,并确认标红的是最长的一条?
- 总标准差是否计算,对外承诺是否按 te + 2σ 给出?
- 关键路径上"不受本方控制"的时间占比是否量化,并制定了对应的提前动作?
- 图例、浮动天数、计算依据是否都写在图上,让不看说明的人也能读懂?
九、关键词与关联阅读
用户搜索这类内容时常用的词:PERT图怎么画、PERT三点估算、期望工期计算公式、关键路径怎么找、项目工期估算方法、te+2σ是什么意思、PERT图和甘特图区别、工期一直被压缩怎么办、项目延期原因分析。
把这些词自然分布进标题、首段与小标题即可,不要堆砌。
延伸阅读建议与本栏目其他图形文章串读:WBS 工作分解结构(拆范围)、甘特图(排日程)、燃尽图(盯迭代)、看板图(控在制品)、鱼骨图(延期后的根因分析)。
打开在线绘图工具,选 PERT 图模板,把本文第二节的六个活动原样填一遍,十五分钟就能得到一张能在明天的排期会上直接使用的图。
会写代码让你接到活,会算工期让你不被冤枉。
