里程碑的核心作用,是把复杂研发过程压缩成所有人都能判断“目标是否达成”的关键控制点。一个有效的里程碑通常需要同时明确目标日期、完成标准、关键交付物、前置依赖和确认机制,并在项目推进过程中持续观察计划偏差。这样,里程碑才能真正承担进度控制、质量检查和阶段决策的作用。
要点速览:研发项目里程碑应该怎么设置?
PMI 将 Milestone 定义为项目、项目集或项目组合中的“重要时间点或事件”。放到研发项目中,可以按照这样一条逻辑来设置:
项目目标 → 项目阶段 → 关键结果 → 完成标准 → 交付物 → 任务依赖 → 计划日期 → 基线 → 里程碑评审
几个原则可以先记住:
-
围绕关键结果设置。“需求基线评审通过”比“需求阶段结束”更清楚。
-
为每个里程碑定义完成标准。日期只是计划,达到出口条件才算真正完成。
-
把交付物和里程碑关联起来。PRD、设计文档、测试报告、发布包等都可以成为判断结果的依据。
-
让任务依赖参与排期。上游任务延期后,要能看到下游里程碑是否受到影响。
-
正式计划保留基线。后续可以调整当前计划,同时保留原承诺,用于分析偏差。
-
里程碑到期要有明确结论。常见结果包括通过、带条件通过和不通过,并继续跟踪遗留事项。
工具要承载这套方法,通常需要同时具备 WBS、任务依赖、关键路径、里程碑、交付物、计划基线和执行数据。以 ONES 为例,可以从项目目标和范围建立 WBS,将关键节点标记为里程碑,再通过依赖、交付物、计划基线和甘特图持续跟踪执行偏差。
一、先判断什么才值得成为研发项目里程碑
很多项目的里程碑计划看起来很完整,实际只是把生命周期阶段重新列了一遍:
需求分析 → 产品设计 → 开发 → 测试 → 上线
这些词描述的是项目目前处于哪个阶段。真正的里程碑更强调“某个关键结果已经取得”。例如,可以把“需求分析”对应为“V3.0 需求基线评审通过”,把“设计”对应为“核心技术方案评审通过”,把“测试”对应为“系统测试准出”,把“发布”对应为“V3.0 正式上线”。
项目阶段、任务、交付物和里程碑之间也有清楚的分工。阶段说明项目正在经历什么过程,任务说明团队具体要做什么,交付物说明工作完成后要产出什么,里程碑则说明哪个重要结果已经正式达成。比如“编写测试报告”是任务,“测试报告”是交付物,“系统测试准出”才是里程碑。
因此,里程碑命名最好直接体现达成状态,少用“XX阶段”“XX工作”这类过程性表达。
判断一个节点是否值得设成里程碑,可以重点看三件事。第一,节点通过以后,项目是否会进入新的状态,例如需求基线确认后进入详细设计、系统测试准出后进入发布准备。第二,节点是否需要一次关键决策,例如项目立项、需求冻结、技术方案评审、发布 Go / No-Go 或客户验收。第三,节点延期是否会明显影响最终交付。
比如:如果这个节点延期两周,项目负责人、管理层或客户会不会需要知道?
如果答案是肯定的,它通常就值得进入里程碑计划。
二、研发项目里程碑怎么设置?
里程碑规划可以从最终交付目标开始,而不是先打开甘特图填日期。
首先明确三个问题:要交付什么?什么时候必须交付?哪些结果不能妥协?
例如:12 月 15 日前完成 V3.0 正式发布,交付本版本确认范围内的核心功能、部署包、迁移方案和用户文档,并完成发布验收。
有了最终目标,再沿项目生命周期向前寻找关键控制点:
立项 → 需求 → 方案 → 开发 → 验证 → 发布 → 验收
每到一个阶段,都可以问一句:进入下一阶段之前,哪些结果必须被确认?
例如一个软件版本项目,可以这样设置:
|
阶段 |
推荐里程碑 |
代表的结果 |
|
启动 |
项目立项批准 |
项目目标、范围和资源获得授权 |
|
需求 |
V3.0 需求基线通过 |
本版本交付范围得到确认 |
|
设计 |
核心技术方案评审通过 |
技术路线具备实施条件 |
|
开发 |
Feature Complete |
计划范围内功能完成开发 |
|
测试 |
系统测试准出 |
达到既定发布质量要求 |
|
发布 |
V3.0 正式上线 |
生产环境发布完成 |
|
收尾 |
项目验收通过 |
项目交付正式闭环 |
项目规模较小时,可以合并部分控制点。涉及硬件、固件、APP、云端等多团队协作的大型研发项目,则通常还需要增加样机、设计冻结、软硬件联调和系统验证等节点。
1.为里程碑补上完成标准和交付物
“测试完成——11 月 10 日”只能说明计划日期,无法说明当天应该用什么标准判断项目能不能继续往下走。
更完整的写法可以是:
里程碑:系统测试准出
计划日期:11 月 10 日
完成条件:计划测试范围执行完成;阻塞发布的缺陷关闭;遗留问题完成风险评估;测试报告评审通过。
每个重要里程碑至少应明确名称、目标日期、完成标准、关键交付物、负责人、确认人、前置条件和后续动作。
这里最值得花时间的是完成标准。像“测试基本完成”“功能差不多了”“方案原则上没问题”都缺少统一判断依据。更清楚的表达应该类似“P0/P1 需求全部完成评审”“阻塞发布的缺陷全部关闭”“指定交付文档完成评审”。
这样到了里程碑当天,项目团队可以直接判断结果,而不需要临时讨论“什么才算完成”。
2.里程碑日期要从任务网络里推出来
确定关键结果后,再进行 WBS 拆解、工作量估算和任务排期:
WBS 拆解 → 工作量估算 → 任务排期 → 前后置依赖 → 关键路径 → 里程碑日期
例如:
需求基线 → 架构方案设计 → 核心模块开发 → 接口联调 → 系统测试 → 发布准备 → 正式上线
如果接口联调延期 5 天,并且它位于关键路径上,那么“系统测试准出”和“正式上线”都会面临延期风险。项目经理需要在任务发生变化时就看到这种影响传导,而不是到里程碑当天才发现目标已经无法按期完成。
因此,里程碑最好是整个任务网络推导出来的关键节点。这样的日期更有依据,后续发生变化时也更容易重新计算。
三、里程碑设置完成后,还要用基线和评审控制执行
项目计划获批以后,需要保留一份原始计划作为基线。
假设“系统测试准出”最初定在 11 月 10 日,后来先后调整到 11 月 15 日、11 月 18 日和 11 月 22 日。如果每次修改都直接覆盖原日期,项目最终只能看到“11 月 22 日”,却无法回答相对于最初承诺到底延迟了多少。
因此至少应该同时保留三组时间:
-
基线日期:最初批准的计划
-
当前预计日期:根据当前状态重新预测的日期
-
实际完成日期:最终真正达成的日期
三组数据再结合调整原因,就能帮助项目经理判断延期从什么时候开始、偏差主要产生在哪个阶段,以及当前计划是否仍在继续恶化。
Microsoft Project 的基线管理也遵循类似思路:基线保存以后,原计划继续保留,再与当前计划和实际执行情况进行比较。
基线记录原始承诺,当前计划记录最新预测,实际日期记录最终结果。只有三者同时存在,进度偏差才有复盘价值。
到了里程碑日期,还需要做一次结果检查。形式可以很轻量,但要回答三个核心问题:完成标准是否满足、还有哪些未关闭的问题、项目是否具备继续进入下一阶段的条件。
最终建议给出明确结论:
通过 / 带条件通过 / 不通过
如果是带条件通过,应同步记录遗留事项、负责人、截止时间和风险。这样,里程碑同时承担了进度检查、质量门禁和阶段决策的作用。
四、不同研发项目,可以怎么设计里程碑?
不同类型的研发项目可以沿用同样的方法,但关键节点会有所区别。
|
项目类型 |
示例里程碑 |
|
软件版本研发 |
立项批准 → 需求基线通过 → 技术方案通过 → Feature Complete → 系统测试准出 → 正式发布 → 版本复盘 |
|
软硬件研发 |
需求冻结 → 总体方案评审 → 样机完成 → 软硬件联调完成 → 系统验证通过 → 量产/发布准备 → 正式交付 |
|
客户交付项目 |
项目启动 → 需求确认 → 方案确认 → 开发完成 → UAT 准入 → 客户验收 → 项目结项 |
其中,软硬件项目尤其需要关注跨团队依赖。最终的“系统验证通过”可能同时依赖硬件样机完成、固件版本稳定、APP 功能完成、云端接口就绪以及测试环境准备。
这时不能只观察某一个团队是否完成,而要把硬件、固件、软件、测试等多个子项目放在统一的交付节奏中判断。只要关键链路上的一个子项目延期,总项目里程碑就可能受到影响。
五、用 ONES 搭建和管理研发项目里程碑
把前面的管理方法落到系统里,可以形成这样一条完整链路:
项目目标 / 需求范围 → WBS → 阶段与任务 → 关键交付物 → 里程碑 → 任务依赖 → 关键路径 → 计划基线 → 执行跟踪 → 里程碑评审
ONES 的作用,是让这些对象持续存在于同一套研发项目数据中,减少项目计划与研发执行分别维护的问题。
1.从目标和范围形成 WBS,再确定里程碑
项目启动后,可以先明确目标、需求范围和关键交付成果,再在 ONES Project 中建立项目计划。对于比较标准的研发流程,可以预先定义 WBS 拆解规则,从业务目标 → 项目阶段 → 子任务 → 执行项逐层展开。
例如 V3.0 产品项目:
V3.0 正式发布 ├─ 需求与方案阶段 │ ├─ 市场需求整理 │ ├─ 需求分析 │ └─ 核心方案设计 ├─ 开发阶段 │ ├─ 后端开发 │ ├─ 前端开发 │ └─ 联调 ├─ 验证阶段 │ ├─ 系统测试 │ └─ 发布验证 └─ 发布阶段 ├─ 发布准备 └─ 正式上线
整体计划形成后,再从中标记“需求基线通过、架构方案通过、Feature Complete、系统测试准出、正式发布”等关键节点。
对于需要快速搭建计划的新项目,ONES Assistant 还可以读取项目背景、需求范围或阶段目标,辅助生成里程碑计划、发布计划和阶段任务结构,再由项目经理结合资源、依赖和实际约束进行调整。
这样管理者既能从高层查看已经完成哪些关键节点、下一个里程碑是什么,也可以继续下钻,查看某个里程碑由哪些具体阶段和任务支撑。
2.用交付物、依赖和关键路径确定“能不能按期完成”
里程碑进入执行阶段后,还需要两个层面的信息:完成依据和时间影响。
在 ONES 中,可以在 WBS 阶段或任务节点提前定义目标交付物,再跟踪提交和核准情况。例如“需求基线通过”可以关联需求清单、PRD 和评审记录,“核心技术方案通过”对应架构设计和接口方案,“系统测试准出”则可以关联测试报告和缺陷情况。
因此,里程碑的完成依据可以同时包含:任务完成 + 交付成果齐全 + 评审条件满足
时间计划则通过任务依赖和关键路径继续控制。例如:底层接口开发 → 接口联调 → 系统测试 → 系统测试准出 → 正式发布
ONES 支持建立任务前后置关系,任务工期和计划日期可以参与排期,并识别依赖冲突和决定项目总周期的关键任务链。
这样项目经理可以同时看到“某个任务有没有延期”和“这个延期是否会继续影响关键里程碑”。非关键任务可能仍有一定浮动时间,关键路径上的延期则可能直接改变发布日期。
3.用基线和执行数据持续观察偏差
项目计划评审通过以后,可以建立计划基线。后续继续维护最新排期,同时保留批准时的原计划。
例如“系统测试准出”原计划为 11 月 10 日,当前预计变成 11 月 16 日,项目经理可以直接看到 +6 天 的计划偏差,再进一步分析偏差来自哪些任务、范围变化或资源问题。
ONES 还可以持续汇总任务状态、进度百分比、临期和过期情况、交付物提交状态,以及工时和进度偏差,并与项目计划和甘特图联动。
因此,在“系统测试准出”到来之前,项目经理就可以持续判断:前置开发任务是否延期、关键路径上是否存在阻塞、目标交付物是否齐全、当前里程碑日期相比基线是否发生变化,以及哪些风险需要提前处理。
最终形成的是一条持续闭环:目标决定项目结构,WBS 承载执行范围,关键节点形成里程碑,任务依赖决定排期,交付物提供完成证据,基线记录原计划,执行数据持续反映当前状态。

六、研发项目里程碑设置检查清单
项目计划制定完成以后,可以用下面这份清单快速检查:
-
项目最终目标和交付结果已经明确;
-
每个里程碑都代表一个关键项目结果;
-
里程碑名称可以直接体现达成状态;
-
每个里程碑都有目标日期和明确完成标准;
-
关键交付物、负责人和确认人已经明确;
-
前置任务和依赖关系已经建立;
-
关键路径已经识别;
-
批准后的计划已经保存基线;
-
当前预计日期能够与基线比较;
-
里程碑评审有明确结果;
-
遗留问题有责任人和截止日期。
如果其中多项无法回答,目前的里程碑计划很可能还停留在“重要日期表”的层面。
研发项目里程碑可以沿着一条清晰路径建立:明确目标 → 拆解 WBS → 找到关键结果 → 定义完成标准和交付物 → 建立任务依赖 → 推导计划日期 → 保存基线 → 持续跟踪偏差 → 完成里程碑评审。
里程碑数量不需要很多。只要每个节点都能说明“到这里应该完成什么、凭什么判断完成、延期会影响什么”,它就能成为研发项目进度管理中真正有效的控制工具。
研发项目管理里程碑相关FAQ
1. 研发项目一般设置几个里程碑?
没有固定数量。小项目保留 3~5 个关键节点即可,大型项目可以在需求、设计、开发、验证和发布之间增加控制点。重点看节点延期是否会明显影响项目目标或关键决策。
2. 里程碑一定是 0 天吗?
项目调度中通常用 0 工期表示一个时间点。持续数天的评审、测试或发布准备可以作为任务,把最终的“评审通过”“测试准出”设为里程碑。
3. 里程碑和交付物有什么区别?
交付物是具体成果,例如测试报告、设计文档;里程碑代表关键结果已经达成,例如“系统测试准出”。一个里程碑通常需要多个任务和交付物共同支撑。
4. 里程碑延期后可以直接修改日期吗?
可以更新当前预计日期,但应保留原计划基线,同时记录实际日期和调整原因,方便后续分析计划偏差。
5. 敏捷研发需要设置里程碑吗?
需要,但通常更少。可以围绕重大版本发布、客户交付、关键集成、合规评审或跨团队依赖设置,Sprint 继续负责日常执行。

351

被折叠的 条评论
为什么被折叠?



