设计文档如果只有“要做什么”,每一种边角都会在评审里变成新需求。先写三件不做的事:哪一步可以慢,数据可以旧到什么时候,哪些地方允许暂时不一致。

三行就够

  • 可以慢:例如导出可以等一分钟,查询列表不能等一分钟。
  • 可以旧:例如周报数字可以是昨夜的,付款状态不能是昨夜的。
  • 可以不一致:例如内部草稿和对外正文可以不同步,同一笔金额的两个入口不行。

这三行是在给后面的人省事。没写“导出可以慢”,助手会去给导出做缓存、队列和进度条。那些东西不是不能做,是这一版不该做。

用本文例子当场试

把本周事项写成周报草稿

无需登录,结果可复制。今日还可试 3 次

加回来要改纸,不要改代码了事

真的有人因为“可以旧”出错,就改这三行,写上谁遇到了、代价是什么。不要在某个分支里悄悄做成实时。悄悄做成了,下一版没人知道哪些旧数据是故意的。

这周在下一份设计的开头写这三行。写不出可以慢的那一步,说明你还没决定这一版到底交付什么。三行没写完,先不要让助手开工。

效率龙虾 会带着下面这段开聊

按文章《设计先写三件你不做的事》把卡点收成可执行步骤:先做什么、别踩哪条、怎么验证。

用效率龙虾试这篇

本文侧重全链路风控方法论。落地时请用自身业务单据做回放验证,不要把示例阈值直接当生产策略。 相关:风控体检 · 方案资源

常见问题 FAQ

为什么要写不做?

没写的例外,评审时都会被问成“那这种情况呢”。先写放弃,才知道哪些慢、旧、不一致是被允许的。

可以写哪三类放弃?

可以慢在哪一步,可以旧到什么时候,哪些界面或数据允许暂时不一致。

写了不做还会被加回来吗?

会。加回来时要改这三行,并写明谁在用、代价是什么。不要在实现里悄悄做。

和试点的停用日期一样吗?

不一样。停用日期说的是整件事没人用就停。这里说的是这件事里面哪一段故意不做。

助手会把不做的也做上吗?

会。任务里要写明这三行,并在审查时看它有没有实现被放弃的部分。

三行写得很短算不算敷衍?

短才有用。写成长篇原则,执行时没人记得哪一句是放弃。

这篇看完可以接着做:工作灵感、发出前验收、试一版稿。