
大家都在谈 AI 将如何改变软件开发,但更值得讨论的,是那些不会改变的部分。
某种意义上,AI 正在迫使工程回归第一性原理,也在放大 SDLC 中“基本功”的重要性:
如果代码可以被生成,那么规格必须精确——含糊的指令,只会规模化地产生垃圾。
如果输出具有概率性,评审就应关注“意图”,而非仅仅停留在语法层面。
如果没有人逐行写下代码,测试就成为唯一的真实依据。
与其说 AI 会取代工程严谨性,不如说它是一台高效放大器——专门惩罚严谨性的缺失。抽象层在上升,但其下的复杂性表面积正在爆炸式扩张:更多服务被拼接在一起,更多隐性依赖被引入,更多非确定性行为开始出现。最终,仍然需要有人去理解架构、推演失效路径,并在权衡中作出判断。
需要强调,这并非对技术热潮的焦虑式批评。技术本身极其出色,并且在快速进化。但要用好它,依然离不开系统性思维与技术判断力。
生成代码,并不等同于构建软件,正如生成文字,并不等同于提出一套法律论证。工程的起点,恰恰是在代码生成之后:验证它、集成它、部署它,并确保它不会在凌晨两点拖垮下游三个服务。
当下,构建“东西”变得容易了,但构建“可持续运转的系统”依然稀缺。而这一区别,很快会变得昂贵。
由非技术背景主导的工程组织,往往更容易以一种代价高昂的方式理解这一点。可以预见,一轮过早的成本削减之后,往往紧随其后的是更昂贵的再招聘周期——当 Sev 1 故障开始层层堆积时。如果你在管理工程团队,却无法分辨“代码变多”与“系统更可靠”之间的本质差异,那么 AI 终将在生产环境中替你补上这堂课。
这一动态,还会被大型工程组织中一个熟悉的变量进一步放大:内部博弈。通过过度承诺来争夺范围,通过提前时间线来争取资源,而复杂性则被系统性地延后。AI 在其中起到的是“助燃剂”的作用:更容易展示早期的快速进展,更容易为更大的系统边界寻找正当性,也更容易在短期内掩盖基础的不稳。只是,账单从不会消失。
在一线工程实践中,这种模式已经逐渐显现。AI 在已有代码体系中表现最佳——当既有模式清晰、约束明确时,它能够学习局部风格、延续既有决策,从而显著放大工程效率。但如果试图让它从零“即兴生成”一套系统,结果往往更像一件“软件标本”:形似具备,神却未至。缺乏强约束时,模型会自行补全模式,而这些模式并不总是可靠。最终呈现的,是抽象不一致、数据流可疑、接口别扭的系统;它在表面上看似成立,却在规模化时以更隐蔽、也更耗时的方式失效。
于是,团队其实只有两种路径可选:
1.让系统在不断的 prompting 中“自然生长” → 快,但混乱且脆弱
2.在前期投入:定义架构、约束与规范 → 慢一些,但更可持续
当下,不少团队选择了前者。并非因为更优,而是因为激励如此——当产出以 PR 数量与开发速度衡量时,前瞻性的思考、系统化设计与一致性约束,几乎得不到回报。短期进展占优,长期一致性则被转嫁。复杂性被延后,并以“复利”的形式偿还。
也正因如此,一些看似“老派”的工程基石,反而变得愈发关键:
Specs(规格)
不少人误以为可以通过不断 prompting、迭代与发布,自然收敛出一致性。但这往往通向系统性的错位。规格一旦模糊,系统就会在组件之间逐渐失配,在规模化时变得脆弱,在排查问题时难以定位。规格质量,正在成为一项一阶工程能力。
Reviews(评审)
AI 生成的结果往往“看起来合理”,却可能隐藏无声的失败:被忽略的边界条件、安全漏洞、或表面正确却逻辑偏移的实现。评审的重心,需要从语法与风格,转向整体逻辑:是否真正符合意图?隐含了哪些假设?潜在的失效点在哪里?
Testing(测试)
廉价的迭代,并不意味着失败成本降低,更多时候只是让失败更频繁。如果运行逻辑是“出了问题再修”,最终得到的往往是:演示顺畅、生产退化、回归频发的系统。在 AI 生成的规模下,已无法依赖逐行理解代码,只能依赖对行为的验证。单元测试定义预期行为,集成测试捕捉系统级失效,而针对模型输出的评估同样不可或缺。对“直接书写”的依赖越少,对“验证机制”的依赖就越强。
AI 让代码生成变得更容易,但并不会让工程师变得“不再技术化”。恰恰相反,它很可能迫使每个人回到 SDLC 的基本原理:版本控制、测试纪律、结构化迭代。瓶颈正在从“你会不会写代码”,转向“你是否具备工程化运作的能力”。
AI 并非让所有人同步变强——它在拉大优秀与平庸之间的差距。
具备扎实 SDLC 的团队 → 更快,也更稳。
缺乏其约束的团队 → 以 10 倍速度累积隐性技术债。
AI,本质上是对既有工程纪律的放大器——你原本是什么水平,它就将其放大到什么程度。
原文链接:
https://saanyaojha.substack.com/p/respect-the-sdlc
声明:本文来自安全喵喵站,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。