最后责任时刻

在必须决定时才决定:把决策推迟到掌握足够信息、且仍能承担后果的时点;用接口与配置隔离变化点,避免过早固化实现。

适用需求与依赖仍在变化的阶段
手段接口先行、配置化、适配层隔离不确定性
边界推迟不等于拖延:超过临界点后成本上升
  • 识别变化点:列出尚未稳定的需求、协议与依赖
  • 隔离手段:用接口、配置与适配层把变化点挡在核心之外
  • 决策触发器:为每个待定项定义触发条件与截止点
  • 成本核对:比较等待的成本与过早固化返工的成本
  • 记录假设:写下推迟期间依赖的假设与复核时间
  • 依赖排序:多项待定互相依赖时按依赖顺序决策

适用判断

情形建议
实现细节未定、接口已稳定推迟实现选择
契约与数据模型未定先做小样验证再定
决策阻塞他人交付设截止点,到期强制决策
依赖版本未稳定隔离适配层并锁定候选范围
触发依据需求稳定度、依赖版本与契约冻结情况作为决策信号
登记载体待定项与触发条件登记进台账,例会同步状态
与可逆性配合使用:可逆决策大胆尝试,难逆决策靠近最后责任时刻再定。

易错点

  • 过早锁定实现细节,变化时全面返工
  • 以等待信息为由拖延关键决策,阻塞交付

数据来源与参考

  • 《软件架构:架构模式、特征及实践指南》(Richards & Ford)
  • 《Domain-Driven Design》(Evans)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌