title: 规范驱动开发不是过时,而是进化 author: Gamehu date: 2026-02-25 22:10:00 tags:
最近看到一篇关于规范驱动开发的文章,作者指出一个有趣的现象:规范也是文档,而文档总是过时的。
这话说的没错,但我有一点点不同看法。规范驱动开发不是过时了,而是在AI时代进化了。或者说抛开AI至少在所有重要业务实现的前期阶段是必要的。
在软件工程的早期,项目主要依赖口头沟通和个人记忆。这种方式在小型团队里还行,但一旦团队扩大或人员流动,问题就暴露无遗:
为了解决这些问题,文档驱动开发应运而生。它主要经历了几个阶段:
1. 瀑布模型的PRD时代
2. 敏捷时代的轻文档
不管哪个阶段,文档驱动都有其不可替代的价值:
AI的出现,让文档过时的代价成倍增加。
人类工程师的行为模式:
AI Agent的行为模式:
问题就在这里:过时的设计文档只会误导碰巧读到它的人类工程师,而过时的规范会误导不知变通的AI Agent。
AI Agent会自信满满地执行一个早已脱离实际的计划,根本不会发现哪里不对。
但硬币的另一面是:AI恰恰是解决文档维护难题的最佳工具。
为什么这么说?因为文档维护的本质是:让文档与代码/现实保持同步。
而AI擅长的正是:
这正是文档维护需要的核心能力。
传统的规范驱动是这样的:
人类写规范 → 代码实现 → 规范过时 → 人类更新规范(如果记得的话)
AI时代的规范驱动是这样的:
人类描述意图 → AI草拟规范 → 人类审阅批准 → AI执行并更新规范
关键变化:规范不再是静态的"圣旨",而是动态的"活文档"。
传统模式:
AI模式:
当AI Agent在执行过程中发现:
它会自动更新规范,而不是等人类发现问题。
这就像把任务交给优秀的初级工程师:
以前,文档更新完全依赖人工。工程师要:
现在,AI Agent在执行任务的同时,就能:
没有人需要专门记着去更新文档。因为更新文档本身就是AI工作的一部分。
文档维护是隐形工作:
人类会厌烦、会忘记、会偷懒。但AI不知疲倦,每次执行任务都会更新规范。
传统工具(如Swagger生成API文档)只能:
而AI能够:
传统工具是单向的:代码 → 文档。
但AI可以双向:
这种双向沟通,让规范真正"活"起来。
随着项目进展,AI可以学习:
通过机器学习,整个系统会越来越智能。
规范不只是人类写的,也不只是AI写的。双方都要维护。
人类负责:
AI负责:
这是最难的平衡:
反馈太多:
反馈太少:
把握好颗粒度的关键:只反馈那些改变方向的决策。
AI不需要汇报每行代码怎么写,只需要汇报:
让AI更新规范,需要两个前提:
信任 - 相信AI不会乱改规范 机制 - 有审查机制,让人类能看到并批准/驳回AI的更新
缺一不可。
不是每次都从头重写规范,而是:
来看一个我实际工作中的例子。当我让AI完成一个HTTP接口联调功能后,它自动更新了团队的开发规范文档:
{% asset_img ai-auto-update-spec.png AI自动更新规范文件的Git diff示例 %}
上图展示了一个真实的场景:左侧是原有规范,右侧是AI自动补充的新内容。可以看到AI在HTTP 自动化测试规范部分新增了详细的测试要求,包括:
这个例子完美诠释了什么是"进化的规范驱动":AI不仅执行代码,还主动更新配套文档,让规范始终保持与实现同步。
再来看另一个更简单的例子。
你写道:
"在设置页面加个能跟随系统偏好的深色模式开关。"
协调Agent读取代码库,草拟一份规范:
你扫了一眼,发现漏掉了"跨会话保存选择",于是补上一句。
你点击批准。Agent开始干活。
15分钟后,其中一个Agent更新了规范:
"在代码库里找到了现成的Theme Provider。已直接接入,未创建新store。"
你审查代码变更(已按Agent和任务清晰分组)。
现在,这份规范反映了实际做出来的东西,而不是最初计划的东西。
最重要的是,没人需要专门记着去更新它。
不只是代码规范,其他文档也可以这样进化:
文档维护是软件工程的老大难问题,AI时代这个问题变得更严重了。
但AI也带来了前所未有的机遇。
解决思路不是放弃文档驱动,而是让文档驱动进化:
规范不是人类单方面写的"圣旨",而是人类和AI共同维护的"活文档"。
这才是规范驱动开发在AI时代的正确打开方式。
原文: https://x.com/dotey/status/2026146560862474482
相关阅读: