把两类任务放进同一条排期表,是多数项目延期的起点。合同内任务按交付里程碑倒排,临时救火任务按影响面分级插队,两者用不同的时间池和确认口径,才能让“谁先做”变成可以核对的项目,而不是每天在群里争论。
合同内任务的时间锚点是验收节点,比如栏目结构确认、模板套用、内容迁移、上线前检查。这些任务的排期依据是依赖关系:前一项不确认,后一项无法开工。临时救火任务的时间锚点是故障或机会的窗口,比如页面打不开、表单收不到提交、活动页必须当天挂出。它们的排期依据是影响面,而不是原计划里的顺序。
两者混排时最容易出现的错觉是:救火任务只花半小时,插进去不影响主线。实际影响往往不在执行时间,而在切换成本——被中断的人要重新进入原任务的上下文,原本当天能确认的合同内节点因此顺延。所以分别排期的第一步不是排时间,而是把两类任务写进不同的清单,各自标注触发条件和确认人。
临时任务不应该一律插队,也不应该一律排队。可以用两个维度快速分级:影响面是单个页面还是全站流程,处理是否可逆。全站不可逆的问题优先于单页可逆的问题,这个判断不需要等排期会议。
分级的价值在于:它把“要不要现在做”变成“它落在哪一级”,减少每次都要重新讨论的消耗。分级标准需要在合作初期就写进沟通约定,而不是等第一次救火时临时商量。
以下为假设情境,用于说明决策过程,不代表任何真实项目。某公司市场部和产品部共用一家建站服务方。合同内任务清单里写着“上线前完成内容迁移与链接检查”。某天市场部发现一个旧活动页链接失效,要求当天修复;产品部认为这属于合同内检查范围,应该按原排期走。
分歧点不是谁对谁错,而是双方对“链接检查”的理解不同:市场部理解的是全站所有历史链接,产品部理解的是新站导航和主要栏目。把分歧转成可核对项目的做法是:先列出失效链接的实际范围——是三个旧活动页,还是整批历史内容;再确认这些页面是否在本次迁移范围内。如果不在,它属于临时救火;如果在,它属于合同内任务,只是原清单描述不够具体。
这个动作的结果会直接影响下一步:范围确认后,若属于合同内,就把它挂回原节点,并补充清单描述;若属于救火,就按影响面分级,同时记录这次分歧,用于下次修订需求说明。排期表本身不需要推翻,需要补充的是任务边界。
如果每次临时任务都直接插进主线,合同内节点必然持续顺延,而且顺延原因很难追溯。更可操作的做法是:在每周排期中划出固定比例的救火时间池,比如按经验预留半天到一天,专门处理当日排队级别的任务。立即处理级别的任务仍然可以打断,但需要满足两个条件:有明确的确认人,且事后补记中断对主线的影响。
这个时间池的作用不是限制救火,而是让救火有位置。当临时任务超出时间池容量时,选择就变成显性的:要么顺延某个合同内节点,要么把部分救火任务并入下一批。无论选哪个,都需要双方确认,而不是由执行方默默加班消化。
排期不是一次排完就固定不变,而是让每一类任务都有可追溯的进入和退出方式。合同内任务守住依赖关系和确认节点,临时救火任务守住分级标准和时间池,两者各自运行,交叉点用确认人而非情绪来裁决。做到这一点,排期表才能在下一次分歧出现时继续作为核对依据,而不是被重新推翻。