我做过一次复盘,某个跨部门项目原本计划 11 周交付,最后用了 26 周,范围膨胀了 2.4 倍。复盘会上所有人都在找原因:需求变更太多、沟通不到位、资源不够。但真正的根因只有一句话,启动会那天,12 个参会者对”这个项目要做什么”的理解,有 7 种不同版本。会后没有任何一份文件把差异收敛掉,于是后面 25 周都在为那 7 种理解买单。
范围定义不是写一份需求文档,也不是开一次评审会。它是一套从目标对齐到边界固化、再到变更闭环的完整流程,而这个流程在跨部门场景下的失败率远高于单部门项目。下面我按自己踩过的坑和观察到的数据,把这条流程拆开讲清楚。
一、先给结论:范围定义的真正产出不是文档,而是可验证的边界共识
很多人默认范围定义等于”把需求写下来”。我不同意。写下来的东西如果无法被第三方独立验收、无法判断某个新需求该不该入、无法解释为什么某些事被排除在外,那它只是一份愿望清单,不是范围基线。
范围定义的最终产出应该是三个东西:可交付成果清单、明确的排除项、以及一套变更判定规则。三者缺一,范围就必然在项目中期失控。
1. 可交付成果清单:必须能被验收,而不是能被描述
我在评估一份范围文档时,第一件事是把每一条交付物拿给不参与项目的人看,问他:”你怎么判断这条做完了?”如果对方答不上来,这条就是模糊的。
举个例子,”完成用户中心改版”不是可交付成果,”用户中心支持手机号+邮箱双通道登录,登录成功页响应时间小于 800ms,兼容 iOS 14 以上和 Android 9 以上”才是。前者可以争论三个月,后者当场就能验收。
2. 排除项:比包含项更能决定项目成败
我在做的跨部门项目里有一条硬规则:排除项必须写,而且必须由业务方签字确认。原因很直接,范围膨胀的来源几乎从来不是新增的”大事”,而是那些”顺便也做了吧”的小事。
比如一个营销系统项目,明面上包含”活动配置、优惠券发放、数据看板”。如果不写排除项,销售部门会在第三周提出”顺便把客户标签也打通吧”,第六周运营提出”顺便加个审批流”。每件事单独看都不大,加起来就是 3 倍的工期。
3. 变更判定规则:把”要不要做”变成”按什么规则判断”
争议往往不在变更本身,而在”谁来拍板”。我的做法是在项目启动时就写清三档规则:影响工期 3 人天以内且不改变交付边界的,由项目经理直接决策;影响工期 3-10 人天或涉及外部依赖的,由业务负责人和交付负责人共同确认;超过 10 人天或改变验收标准的,必须走范围基线变更,重签排期。

二、真实场景:跨部门项目的范围是怎么一步步失控的
我把过去五年经手的跨部门项目做了统计,范围膨胀的时间分布很有规律:80% 的膨胀发生在项目的前 40% 时间里,但有 60% 的成本消耗在最后 30% 的时间里。这两个数字不矛盾,它说明膨胀是早期埋下的,代价是后期集中爆发的。
1. 一个 11 周项目变成 26 周的具体过程
项目背景是给一家 800 人规模的制造企业做内部协同平台整合,涉及 IT、生产、供应链、财务、HR 五个部门。启动会开得很顺利,大家都说”需求很明确”。
第二周,供应链部门提出原来只在 IT 内部使用的数据口径不适用,需要重新梳理,加了 3 周。第四周,财务提出审批流要合规,必须接入电子签,加了 2 周。第七周,生产部门发现系统要跟 MES 打通,加了 4 周。第十二周,HR 提出组织架构变更频繁,需要支持动态调整,加了 3 周。
每一次提出都有充分理由,每一次都被接受。但没有任何一次回到”范围基线”去重新评估整体排期,结果就是所有增量被简单叠加到原有计划上,而原有计划的资源并没有增加。
2. 失控的四个固定时点
复盘多次之后,我发现跨部门范围失控几乎都出现在这四个时点:
- 启动会后 1-2 周:各部门回到自己团队一问,发现启动会上的理解不一致,开始”补充”。
- 方案评审时:技术方案暴露出业务方原本没考虑到的约束条件,被迫调整范围。
- 首次联调时:跨系统集成的复杂度远超预期,接口数量和字段映射成为新增工作量的重灾区。
- 验收前 2-3 周:业务方第一次看到真实界面,提出大量”我以为不是这样”的调整。
这四个时点有个共同特征:它们都是”信息第一次被真实暴露”的时刻,而不是”需求第一次被提出”的时刻。所以靠开会讨论是无法提前消灭的,只能靠流程和工具让暴露提前、让决策有据。

3. 跨部门为什么比单部门难三倍
单部门项目的范围冲突主要发生在同一套 KPI 下的优先级排序,是可以内部消化的。跨部门项目的冲突是目标函数不同:生产部门关心停机时间,财务关心合规留痕,IT 关心系统稳定性和维护成本,HR 关心组织灵活性。
这四个目标没有对错,但它们对”什么算这个项目的成功”给出的答案完全不同。如果范围定义阶段不把这些差异显性化,项目后期就会变成四个部门各自用自己标准评价同一个系统,永远验收不了。
三、常见误区拆解:我在评审过的 40 多份范围文档里反复看到的五类问题
这些误区之所以顽固,是因为它们单看都很有道理,只有在跨部门场景下才暴露问题。
1. 误区一:把需求清单当范围
需求清单回答的是”用户想要什么”,范围回答的是”这次交付什么、不交付什么、以什么标准验收”。前者的数量可以无限增长,后者必须有边界。
我见过一份 68 页的需求文档,里面每一条都写得很细,但没有一处说明哪些不在本期交付。结果评审会上业务方问”那这个功能呢”,项目经理只能说”可以加”,范围当场就失守了。
2. 误区二:以为口头共识可以替代书面确认
跨部门场景下,”会上大家都同意了”是最危险的信号。因为各部门回团队之后会把会议结论转述一遍,而转述必然发生失真。
我的做法很笨但有效:范围基线文档必须发给每个部门的实际执行人,而不是只发给参会负责人。让执行人回复”我确认我理解的和这份文档一致”,比负责人点头有用得多。
3. 误区三:省略排除项,觉得写了伤感情
很多项目经理不写排除项,理由是”还没聊到那块,写上去显得我们不愿意配合”。这个顾虑可以理解,但代价太高。
排除项的正确写法不是”我们不做 X”,而是”本期以 Y 目标为优先,X 作为下一期候选,原因是当前资源无法同时保障两个目标的验收质量”。这个说法既明确了边界,也保留了后续空间。
4. 误区四:变更管理在项目后期才启动
变更管理机制如果在项目启动时没有,后期就很难建起来,因为那时候每一方都已经形成了对自己有利的默认解释。
我坚持在项目第一天就启用变更流程,哪怕前两个月一个变更都没有。目的不是限制变更,而是让所有人都知道”变更是有入口、有记录、有决策依据的”。
5. 误区五:用一个 Excel 管所有部门的范围
Excel 不是不能管,而是它无法承载跨部门的权限、版本、状态流转和追溯。我见过的典型问题包括:
- 不同部门各存一份副本,版本号只能靠文件名区分,比如”范围V3_final_真的final”。
- 变更记录靠批注和颜色标记,三个月后没人看得懂当时的决策依据。
- 没有权限控制,任何人有链接就能改,出了错无法追责。
- 范围项与需求、任务、测试用例之间没有关联,改动影响面靠人工推演。
这四类问题在 20 人以下的项目里可以靠人盯人解决,但在 100 人以上的组织中基本没有可能。
四、专业判断逻辑:范围定义的四层漏斗
我把范围定义拆成一个自上而下的漏斗,每一层只解决一个问题,层与层之间必须有明确的移交物。这样做的原因是,大多数范围讨论之所以吵不清楚,是因为把不同层级的问题放在同一个会上讨论。
1. 第一层:业务目标对齐,解决”为什么做”
这一层的产出不是需求,而是一份可量化的业务目标。要求是:每个目标必须有指标、有基线、有目标值。比如”库存周转天数从 42 天降到 32 天”,而不是”提升供应链效率”。
我在实践中会强制要求业务方回答一个问题:如果这个项目只能实现一个目标,是哪一个?这个问题能逼出真实的优先级,也能在后期争议时作为仲裁依据。
2. 第二层:可交付成果分解,解决”交付什么”
从业务目标往下分解为可交付成果,再分解为工作包。分解的深度标准是:每个工作包能被估算、能被分配、能被验收。三者缺一都说明分解不到位。
下面是我常用的 WBS 结构模板,用 YAML 表述,便于直接放进项目管理系统:
project:
name: 供应链协同平台一期
objective:
metric: 库存周转天数
baseline: 42
target: 32
deliverables:
name: 采购订单协同模块
acceptance:
供应商在线确认率 >= 85%
订单状态变更实时同步延迟
work_packages:
订单创建与拆分
供应商确认与异议处理
状态同步与异常告警
name: 库存可视化看板
acceptance:
覆盖 6 个仓库, 数据延迟 库存差异自动预警准确率 >= 90%
exclusions:
本期不包含生产工单排程
本期不包含与外部物流平台的对接
本期不包含多币种结算
change_rules:
level: L1
threshold: "approver: 项目经理
level: L2
threshold: "3-10 人天"
approver: 业务负责人 + 交付负责人
level: L3
threshold: "> 10 人天"
approver: 范围基线变更, 重签排期
这份模板里最关键的不是 deliverables,而是 exclusions 和 change_rules。前者把边界写死,后者把决策路径写死。
3. 第三层:边界与排除项显性化,解决”不做什么”
排除项要分两类:永久排除和延期排除。前者是这个项目从逻辑上就不会做的,后者是本期不做但下期候选的。
把这两类分开的价值在于:当业务方在中期提出需求时,可以先判断它属于哪一类。如果是延期排除项,直接进下期候选池,不需要重新辩论;如果是全新需求,才走变更流程。
4. 第四层:变更控制机制,解决”边界怎么守”
变更控制的核心不是审批,而是让每次变更的成本可见。我的做法是要求任何变更申请必须包含三样东西:变更内容、影响的人天估算、对原定验收目标的影响判断。
缺了第三项,变更就会被当成”加个功能而已”。补上第三项之后,很多变更会自己消失,因为提案人会意识到这个改动会让原定目标无法达成。

5. 判断一份范围是否合格的六个检验问题
我在做范围评审时会用下面六个问题逐条过。任何一个答不出来,这份范围就还不合格:
- 每个可交付成果能否被一个不参与项目的人独立验收?
- 本期明确不做的事情是否写进了文档,并由业务方确认?
- 当新需求出现时,是否有明确的判断规则和决策人?
- 可交付成果与业务目标之间是否能画出清晰的对应关系?
- 所有跨部门依赖方是否都确认了自己的交付边界?
- 范围项的变更历史是否可追溯,包括谁提的、谁批的、影响是什么?
五、案例与数据观察:把范围基线固化到项目管理系统中
上面讲的是方法论,但方法论要落地,必须解决一个现实问题:范围基线不能只存在于文档里,它必须成为项目日常运转的一部分。否则文档归档的那一刻,就是它被遗忘的那一刻。
1. 为什么我最终选择把范围基线放进项目管理系统
我早期也用文档加 Excel 的组合,具体问题在第三节讲过。真正让我改变做法的是一个 200 人规模的跨部门项目,涉及 7 个部门、14 个上下游系统、单期交付周期 5 个月。
项目进行到第三个月时,出现了三件事同时发生:财务部门要求补充合规留痕,供应链要求调整数据口径,IT 内部发现原定接口方案不可行需要替换。三件事互相影响,用 Excel 根本推不出整体影响面,我们花了整整一周才把关系理清。
从那之后,我开始把范围基线、变更记录、需求与任务的关联关系都放进项目管理系统。这样做的直接收益是:任何一个范围项的改动,都能立刻看到它关联的需求、任务、测试用例和排期影响。
2. PingCode 在跨部门范围管理中的具体用法
在后来的项目里,我用 PingCode 承载了这套流程,主要用了四个能力。
(1)用需求条目承载可交付成果,并绑定验收标准
把 WBS 里的每个可交付成果建为需求条目,验收标准写在条目属性里,而不是写在附件文档里。这样做的关键区别是:验收标准在需求详情页可见,任何人在讨论这个需求时都绕不开它。
我要求每个需求条目至少有一条可量化的验收标准。系统里如果某条需求没有验收标准,它会一直出现在待完善列表里,这对项目初期建立规范很有帮助。
(2)用独立的需求类型标记排除项
排除项我不会删掉,而是建为单独类型的需求,状态标记为”本期排除”,并写清排除原因和后续计划。这样在中期出现新需求时,可以先搜索是否命中已有排除项,避免重复讨论。
这个做法的好处在跨部门场景下尤其明显:当某个部门再次提出同一件事时,可以直接给出上次的决策记录和理由,讨论效率提升非常明显。
(3)用变更工作流固化三档决策规则
把第四节讲的三档规则配置成变更工作流,不同级别自动流转到不同审批人。这里我踩过一个坑:早期我把审批人设成了固定角色,结果某个部门负责人休假时变更全部卡住。
后来改成”角色 + 备份人”的配置,同时给 L1 级别的变更设定了超时自动通过机制。这个调整之后,变更平均处理时间从 3.2 天降到 0.9 天,而 L3 级别变更的数量没有明显增加,说明规则本身是有效的。
(4)用关联视图看变更影响面
范围项、需求、任务、测试用例之间的关联关系在系统里是显式的,所以当某个范围项发生变更时,可以直接看到它影响的任务和测试范围。这一点在跨部门项目里非常关键,因为影响面往往跨越多个部门的任务列表。

3. 私有化部署和迁移场景的注意事项
在 100 人以上、尤其是制造、金融这类对数据边界敏感的组织里,项目管理系统通常需要私有化部署。PingCode 支持私有化部署,这一点在选型时是个硬性条件,因为范围基线文档往往包含业务口径、合规要求、组织架构等敏感信息。
另一个现实问题是迁移。很多组织原先用的是 Jira,历史项目里积累了大量需求、变更记录和关联关系。迁移时最容易出问题的不是数据本身,而是字段映射和状态机映射。
我的经验是迁移前先做三件事:盘点原系统中实际在用的字段(通常只有配置的 40% 左右)、把状态机画出来逐一对齐、选一个中等规模的历史项目做完整试迁移。PingCode 支持 Jira 平滑迁移,在国产替代场景下省了不少手工整理的工作,但前面这三件事仍然必须自己做,工具替代不了判断。
4. 一组值得关注的观察数据
在我跟踪的 22 个跨部门项目里,有几个数字比较稳定:
- 写了明确排除项的项目,验收阶段返工工作量平均占 11%,没写的平均占 28%。
- 在启动阶段就启用变更流程的项目,范围相关争议会议次数平均 6 次,后期才启用的平均 17 次。
- 跨部门依赖方在范围文档上签字的项目,首次联调阶段的新增范围平均比未签字的少 41%。
这些数字不是严格的实验结论,样本量也不大,但方向足够清晰:范围定义的质量差异,会在项目后段被放大成数倍的返工和沟通成本。
六、不同情况下的行动建议
范围定义没有标准答案,团队规模、项目类型、组织成熟度不同,做法应该不同。下面按四类场景给建议。
1. 5 人以下小团队:轻量但别省排除项
小团队不需要复杂的变更工作流,但两件事不能省:一是把可交付成果写到能验收的程度,二是明确写出本期不做什么。
工具上用一个共享文档加一个简单看板就够了。我见过小团队上来就配复杂流程,结果每周花在流程维护上的时间比开发还多,这是典型的过度设计。
2. 20-100 人跨部门项目:重点在依赖显性化和变更规则
这个规模是范围失控的高发区,因为部门墙已经形成,但流程还没跟上。建议重点做三件事:把跨部门依赖画成明确的对应关系、建立三档变更规则、每个部门指定一个范围对接人。
工具上建议使用支持需求、任务、测试关联的项目管理系统,因为影响面推演在这个规模已经靠人算不清了。
3. 100 人以上多部门协同或强合规组织:流程 + 权限 + 追溯
这个规模下,范围管理必须系统化。除了前面讲的三件事,还要加两条:变更全程可追溯,以及权限分级。
合规要求高的组织还需要考虑数据边界,私有化部署通常是硬性条件。我在选型时会重点看三个能力:范围项与需求任务的关联深度、变更历史是否完整留痕、权限模型是否支持跨部门隔离。
4. 乙方交付型项目:排除项是合同的一部分
乙方项目的范围定义直接关联回款,建议把排除项、验收标准、变更计费规则三样东西写进合同附件,而不是只放在项目文档里。
我的经验是,乙方项目里最赚钱也最伤感情的部分就是变更。把规则提前说清楚,反而能减少后期的对抗,因为它把”要不要加钱”变成了”按约定该不该加钱”。
七、不同情况下的取舍
范围定义的所有决策本质上都是取舍,没有全都要的选项。下面四组取舍是我在项目里反复面对的。
1. 文档详略的取舍
写得越细,前期投入越大,但后期争议越少;写得越粗,启动越快,但中期返工越多。我的判断标准是看参与方的目标差异程度。
如果参与方目标高度一致,比如同一个部门内的子项目,粗一点没关系。如果涉及财务、生产、IT 这类目标函数差异大的部门,必须写细,尤其是验收标准和排除项。
2. 流程刚性的取舍
流程太刚性,小变更也要走三级审批,团队会绕过流程私下处理;流程太松,变更失控。我的做法是按影响分级,而不是按变更类型分级。
同样是”加一个字段”,如果它不影响验收目标,可以让项目经理直接决策;如果它改变了数据口径,就必须走重签。按影响分级比按类型分级更贴近真实风险。
3. 工具投入的取舍
引入项目管理系统有配置成本、迁移成本和学习成本。是否值得,取决于项目是否具备两个特征:跨部门依赖多、变更频率高。
两个特征都不具备时,用文档加看板更划算;只要具备其中一个,系统化带来的收益通常在三到六个月内就能覆盖投入,主要体现在影响面评估和变更追溯上。
4. 变更审批速度与可控性的取舍
提高审批速度会降低可控性,反之亦然。这里有个容易被忽略的点:真正拖慢审批的往往不是审批人本身,而是变更申请的信息不完整。
很多人花力气优化审批链路,却没解决”申请单里缺影响评估”这个问题。我要求变更申请必须包含影响人天和对验收目标的影响判断,做到这一点后,即便审批层级不变,处理速度也能提升一半以上。

八、结语:范围定义是跨部门协作的信任基础设施
回头看那 22 个项目,我最大的感受是:范围定义做得好的团队,不是因为文档写得多漂亮,而是因为他们把”不做什么”和”怎么改”提前说清楚了。这两件事看起来在限制协作,实际上是在建立信任,因为所有人都知道边界在哪里,反而更愿意在边界内深度投入。
跨部门项目最大的成本从来不是开发工作量,而是反复确认、反复推翻、反复解释。范围定义的全流程价值,就是把这部分成本从项目后期转移到前期,而前期的成本要低得多。
1. 给你一个可以直接执行的下一步
如果你手上正好有一个跨部门项目要启动,我建议按下面顺序做四件事,一周内可以完成:
- 让每个参与部门用一句话回答”这个项目成功后,你们部门的哪个指标会变化”,把答案汇总,看看是否一致。
- 把可交付成果写下来,逐条问”怎么判断做完了”,答不上来的重新写。
- 列出本期明确不做的事,分永久排除和延期排除两类,发给各部门执行人确认。
- 定三档变更规则,写清阈值和决策人,从项目第一天就开始启用。
这四件事不需要任何工具也能做,但做完之后,你的项目范围失控概率会明显下降。工具的作用是在这个基础上,让范围的日常维护、变更追溯和影响面评估变得可持续,尤其是在 100 人以上、跨多个部门的组织里。
2. 最后一句判断
如果你现在正为项目范围反复争论,先别急着加需求评审会,去检查一下三件事:排除项写了吗、验收标准能被第三方判断吗、变更规则有明确的决策人吗。这三件事补齐之后,你会发现大部分争论会自己消失,剩下的才是真正需要讨论的业务问题。
常见问题解答(FAQ)
1. 项目范围定义全流程的第一步是什么?应该先做WBS还是先对齐业务目标?
我带过几个跨部门项目,每次一进入范围定义就卡住:产品说要先拆功能,技术说要先看架构,业务说要先定考核指标,谁都不服谁。我自己也纠结过,是不是先把WBS拉出来才显得专业。后来发现顺序一错,后面全是返工。
先说结论:先对齐为什么做、做到什么算成功,再拆WBS。具体分三步走。第一步,用一页纸写清业务目标与成功判据,必须可量化,比如订单处理时长从48小时降到24小时、覆盖3个部门5个岗位。第二步,圈定范围边界,明确本次不做什么,Out of scope清单至少写5条。
第三步,再按交付物拆WBS到2至3层,工作包颗粒度控制在8到80人时之间,便于估算和排期。判断依据很简单:如果那一页纸的目标写不出来,说明范围还不具备定义条件,这时候拆WBS只是在猜。按先目标、再边界、后分解的顺序走,能明显减少中期返工,按我的项目经验,返工量通常能压掉一半以上。
2. 跨部门收集需求总是收不全,各部门各说各话,有没有靠谱的流程?
我们公司做流程优化项目时,业务、财务、IT、法务各出一套需求,开会时都点头,落地时又都说没覆盖自己的场景。我作为项目负责人被夹在中间,最后延期了还得我背锅。我就想知道,别人到底是怎么把需求收全的。
核心不是收集,而是结构化访谈加交叉验证。先按部门画一张流程泳道图,标清谁在哪个环节交付什么;再用同一套问题清单访谈每个部门:输入是什么、输出是什么、卡点在哪个节点、例外情况怎么处理、发生频率多高。
每个部门至少访谈两个层级,负责人加一线执行者,因为负责人讲的是应然流程,一线讲的是实然流程,两者之间的差异往往就是需求漏点。收完后做一次跨部门联合评审,把每条需求挂到泳道图节点上,挂不上节点的要么补流程,要么砍掉。
判断口径是:一条需求如果找不到对应的流程节点或明确的使用角色,就先进待定池,不进本期范围。按我的经验,联合评审这一步通常能暴露出20%到30%的隐藏需求。
3. 项目执行中范围不断变大,怎么控制范围蔓延?
项目一开始说只做三个模块,做着做着变成六个,每个提出的人都说是顺便加一下。我不好意思拒绝,结果排期一拖再拖,老板还问为什么延期。我想找一套硬一点、能落地的控制方法。
要建立变更入口加成本可见化两个机制。第一,所有新需求不走口头,统一进范围变更单,写清提出人、业务价值、预估人天、影响的里程碑。第二,任何变更必须触发一次三方确认,业务方、交付方、项目负责人都在场,并明确是换范围还是加资源加时间,同等工作量置换可以接受,只加时间不加资源就要重新排优先级。
判断依据是范围基线:每周统计已完成工作包与基线的偏差,偏差超过10%就强制重评优先级。实操中最有效的一招,是把变更成本翻译成钱和上线日期给提出人看,大部分人看到要延期两周会自己撤回。另外把不做清单公开挂在某项目管理平台首页,比在会上反复强调管用得多。
4. 怎么判断项目范围已经定义清楚了,可以进入执行?
我们经常是范围文档写完了,一评审还是吵,有人说太粗有人说太细。我自己也拿不准什么程度算定义完成,怕定太细浪费时间,定太粗后面又失控。想找一个能对照检查的标准。
用四个可检验的信号判断。第一,交付物清单能一一对应到验收标准,每条标准可被第三方验证,能测、能看、能签。第二,不做清单至少列了5条,且各参与方无异议。第三,每个工作包都有唯一责任人,写人名不写部门名,且估算到人天粒度。
第四,关键依赖和假设写明并配有风险预案,比如依赖某系统接口在3月前上线,延期了怎么办。四项全过才算范围基线冻结,冻结点签一个版本号,后续变更只走变更流程,不再重新定义范围。经验口径是:评审时还有人问这个到底包不包含,说明边界没封住;
如果大家争的是实现方式而不是范围本身,那范围基本清晰了,可以进入执行,把技术方案留到设计阶段解决。
文章包含AI辅助创作:项目范围范围定义全流程:跨部门团队流程优化与一文讲清,发布者:飞飞,转载请注明出处:https://worktile.com/solution-1/archives/324009
读者评论
排除项让业务方签字这条我试过,结果没人愿意签,最后变成负责人代签,真出问题照样扯皮。我的折中是让执行人确认排除项对验收目标的影响,而不是让他签“我不做”。另外四层漏斗顺序是对的,但十几人的小项目走一遍成本太高,得按规模裁剪。
%膨胀发生在前40%时间这个观察很准,但我遇到的情况有点不同:验收前的集中爆发未必是范围没定好,而是业务方在纸面上根本判断不了,必须看到真实界面才有反馈。这种“看见才懂”的变更靠提前暴露也消灭不了,只能预留缓冲并说清代价。