用途
该技能用于一种特定的调试困境:两个或更多修复共享同一个前提,并且都在同一个验收关口失败。此时它建议怀疑前提本身,而不是继续修改修复方案。
主要能力
技能提供一个可操作的模式:
- 写下前提:用一句话概括每一个失败修复都曾假设的内容。
- 检验前提:在编写下一个修复之前,找出一个若前提为假就会呈现不同结果的观察,并实际执行该观察。关注失败的分布方式,而不仅是失败规模。该检查应可重复运行。
- 跟随证据:如果证据与前提矛盾,说明原因在别处,应寻找失败之间共同但前提未预测到的因素;如果证据支持前提,则继续追问下一个“为什么”,因为先前的修复可能只处理了后果而非原因。
- 移除条件而非补偿:如果证据表明某个部分总是落在失败一侧,应改变导致它处于该位置的因素,而不是增加清理机制,因为清理机制会保留原因并在每次运行时增加工作。
使用方式
该技能以原则和模式的形式提供,没有安装命令、代码或配置示例。使用时需要在遇到上述困境时遵循其步骤:先写下前提,检验后再开始下一个修复。技能明确要求:在前提被写下并检验之前,不要开始下一个修复。
适用场景
适用于同一验收关口反复失败、且失败修复共享同一假设的调试或工程问题排查场景。
限制
资料未提供具体工具集成、代码示例、安装方式或平台支持信息。该技能与“Redesign from First Principles”不同:后者围绕新需求重建设计,而该技能质疑当前设计所假设的一个事实。