🎉 Giảm 20% cho đơn hàng đầu tiên!✦🚚 Miễn phí vận chuyển cho đơn trên 500.000₫✦⚡ Flash Sale — Số lượng có hạn!✦🎁 Quà tặng kèm cho đơn từ 1.000.000₫✦🎉 Giảm 20% cho đơn hàng đầu tiên!✦🚚 Miễn phí vận chuyển cho đơn trên 500.000₫✦⚡ Flash Sale — Số lượng có hạn!✦🎁 Quà tặng kèm cho đơn từ 1.000.000₫✦
AI 写的代码符合你说的,却不是你需要的:spec 需求文档的教训
Quay lại Blog

AI 写的代码符合你说的,却不是你需要的:spec 需求文档的教训

25 tháng 10, 20261 phút đọcVũ Khôi
Tiếng Trung
#Tiếng Trung
Vũ Khôi

Vũ Khôi

Tác giả tại Wotech Electronics Blog

AI 写的是你说的,错的却是你需要的

AI 写的代码符合你说的,却不是你需要的

你让 AI 写一个功能。它恰到好处地问了两句,便一头扎进代码里。两天后,你收到一套跑得丝般顺滑的软件——字字符合你说的话,却完全不是你真正需要的东西。这不是模型的错。错在没有人动手之前把问题问够。这篇文章解释:为什么需求文档(spec)正在成为"给 AI 派活"时代最重要的技能。

每个用 AI 的技术团队都撞过的事

这个场景在越南企业里越来越常见:程序员打开 AI 工具,敲下一句类似"给客户加一个报表导出功能"的话。AI 干脆利落地回了两个澄清问题,收到几行答复后便开始写代码。

两天后的结果:功能跑得通。代码干净、语法规范,甚至带测试。可交给业务部门试用时,所有人都愣住了:缺了关键字段、处理流程与实际业务对不上、员工日常遇到的那些边界情况压根没人想到。

AI 做出了符合你所说的东西——但那不是你所需要的东西。"说"与"需要"之间的落差,正是一切软件项目的死亡地带,而如今 AI 让这个落差以前所未有的速度暴露出来。

AI 没有做错——它只是精确地执行了一个错误的需求

首先要承认:这不是模型的错。AI 的工作原则是接收指令并执行。如果指令只有一句话加两句澄清答复,它就会用它眼中最合理的假设去填补需求的空白——而不是用你企业的业务实际。

一位经验丰富的工程师接到模糊需求时,会条件反射地抛出一连串问题:数据从哪里来?谁有权查看?需要留存历史记录吗?客户尚无交易时怎么处理?AI 不会主动这么做——它被设计成按指令服务,而不是像真正的顾问那样"越位"追问。

换句话说:交活越快,功课越要做足。 AI 的编码能力远超它"读心"的能力。

Spec 是什么,为什么它重新成了"主角"

Spec(specification 的缩写,需求规格说明文档)是把一个功能"必须做什么、为谁做、在什么条件下做、做到什么程度算完成"白纸黑字写清楚的文档。在 AI 时代之前,大型开发团队一直在写 spec——但许多小团队把它当成多余的文书流程,觉得当面"口述"更快。

AI 从根本上改变了这笔账。人靠积累的业务经验来听需求;AI 靠被写下来的文字来听需求。当你与 AI 之间唯一的事实来源就是文本时,文本的质量决定产品的质量。一份好 spec 不会让 AI 写代码更快——它让 AI 第一次就写对,这才是真正省时间的地方:返工一个根基做错的功能,代价远高于从头重写。

把活交给 AI 之前必须备齐的三样东西

1. 清晰的需求清单

敲提示词之前,先回答完这些基本问题:

  • 这个功能解决什么问题,给谁用?(最终用户是内部员工、客户,还是其他系统)
  • 主流程怎么走? 按顺序逐步描述,从输入数据到输出结果
  • 异常和边界情况有哪些? 空数据、负数、无权限用户、网络缓慢——正是这些分支,让一个"符合你所说的一切"的功能变得毫无用处
  • 范围:这一版做什么、不做什么

2. 定义"完成"(Definition of Done)

这是专业软件开发流程里的熟悉概念:把"一个功能算做完"的标准具体化。面对 AI,请写成可核验的清单——例如:"用户点击导出报表时,下载的文件恰好包含 X、Y、Z 列;处理时长不让用户久等;无数据时显示友好的提示"。有了 Definition of Done,你和 AI 看着同一个终点,验收结果也从凭感觉变成讲依据。

3. 技术与非技术约束(constraints)

你不说,AI 就不知道你的企业有哪些特殊限制:

  • 技术栈: 语言、框架、版本必须贴住现有系统
  • 信息安全: 不记录密码日志、不泄露客户数据、遵守内部规章
  • 集成: 必须兼容现有的 API、数据库和命名约定
  • 性能与资源: 跑在哪台服务器上、承受多大的量

用流程取代"敲个提示词然后听天由命"

一个值得关注的信号是,技术社区正以系统化的方式解决这个问题。Matt Pocock——著名课程 Total TypeScript 的作者——刚在 GitHub 上推送了一个专门针对"AI 因需求不清而写错代码"问题的仓库,致力于把给 AI 派活变成一套认真准备文档的流程,而不是一场碰运气的游戏。

这个趋势非常值得越南企业留意:AI 时代的竞争优势不在于哪个团队工具更强(工具人人可用),而在于哪个团队输入准备得更好、输出质量控制得更严。

给越南企业的启示

  • 培训团队的 spec 写作能力。 这是一项一次投资、终身受益的技能:既适用于给 AI 派活,也适用于给新员工、外包方或软件合作伙伴派活。
  • 践行"内部项目当外部项目做"的原则。 如果你没法只用一句话把活外包给另一家公司,那就也别只用一句话把活交给 AI。
  • 对重大变更收紧把关。 AI 产码极快,因此人工审批的边界要更清晰,而不是更宽松。
  • 投资运维层,而不只是提示词层。 数据库账号权限、环境隔离、操作审批网关、审计日志——这些才是企业真正的围栏。

结论

AI 是软件工程史上最出色的执行者——但它的出品上限,就是它收到的需求的质量。"AI 问了两句就写代码,结果写的不是你要的"这个故事,会继续在每一家把"给 AI 派活"当作跳过准备步骤的捷径的企业里重演。把顺序倒过来:先写清 spec,再交给 AI。这是让 AI 成为真正优势、而不是一台不断返工的造码机器的最小投资。

资料来源:整理自 Facebook 技术分享,由 Wotech Electronics 编辑。

您的企业正准备把 AI 引入软件开发流程?联系 Wotech,获取流程搭建、需求文档规范与配套技术基础设施的方案咨询。

Bài viết liên quan