暑期特训营复盘系列 · 工程总览
写给会一点 Python、想把课程项目做成「能协作、能交付、能维护」作品的大学生。
技术会告诉你系统「由哪些模块构成」。
软件工程要回答的是另一组问题:需求怎么变清楚,协作怎么不踩脚,改动怎么可回滚,质量怎么可证明,交付物怎样让别人接手。
这期暑期实训表面在教大模型,暗线却一直在练现代软件工程。尤其在 AI 项目里——输出不稳定、需求爱漂移、人人都能「调一调 Prompt」——工程纪律不是加分项,而是能不能做成的前提。
这一篇,不谈某个算法细节,只谈四天里真正被反复训练的工程方法。
01|先有主线项目,再学工具:用产品牵引技术
现代软件工程反对「为学工具而学工具」。
四天始终围绕同一条主线演进:从能对话的助手,到会分流、会找依据,再到可约束、可评估的择校台。每天不是新开一个玩具,而是给同一台机器加能力。
这对大学生尤其重要。很多课程仓库最后变成「四个互不相关的 notebook」。而工业界更认另一种叙事:
同一产品,分阶段交付。
有了主线,技术选择才有依据:今天学分词,是因为实体切碎会导致检索失败;今天做评估,是因为要证明比裸模型更可靠。工具服务于里程碑,而不是反过来。
02|文档驱动:把「感觉」变成可验收的约定
实训里反复出现 SPEC、README、评估报告、数据说明。这不是作业格式,而是文档驱动开发的课堂版。
核心习惯很简单:
先写清输入输出与验收标准,再实现;实现后对照标准验收;通过再提交。缺文档,等于功能未完成——因为别人无法复现,未来的自己也无法维护。
在 AI 场景里,这一点更尖锐。Prompt 改一句,行为就变;若不纳入版本与说明,团队会陷入「我本地好好的」。文档驱动把模糊的「更好」翻译成可检查的「达标」。
现代工程并不神秘:它首先要求把约定写下来,并让代码对约定负责。
03|小步提交与可回滚:把 Prompt 也当成代码
四天里有一条近乎铁律:改 Prompt 前先 commit;评估变差能回滚。
这看起来像 Git 课,其实是现代工程对 AI 工作流的改造。传统代码有类型、测试、diff;Prompt 同样是行为源码,却常被当成聊天记录随便改。
于是工程要求变得明确:
关键提示词进入仓库,可 diff
行为变更伴随提交说明
用题集回归,而不是靠记忆判断好坏
「vibe coding」可以加速草稿,但底线是:你必须能解释自己提交的改动,并且改坏了回得去。随机指一段代码或一段 Prompt 问「这是干什么的」,答不上来,就还没完成工程闭环。
04|模块化与职责分离:别让大模型承包一切
好的软件设计,本质是边界清晰。
实训里的系统逐渐长成多模块:路由、槽位、FAQ 检索、校库过滤、链接包、LLM 客户端、评估与埋点。大模型被明确降权为「嘴」——负责润色与组织语言;账本、规则、拒答另有归属。
这是经典工程原则在 AI 时代的重申:
单一职责、可替换、可测试。
检索可以先用字面匹配,以后换成向量库,只要接口稳定。没有 Key 时,结构化短名单仍能展示——业务主路径不完全绑死在外部模型可用性上。依赖外部智能,同时保持本地确定性能力,是现代 AI 应用常见的稳健结构。
「一个 Prompt 打天下」短期爽,长期不可维护。模块化是为了让变化局部化。
05|质量内建:测试、验收、对抗,不只是演示幸福路径
现代软件工程强调质量内建,而不是最后靠人工点点看。
四天里出现了单测、验收用例、固定评测集、库外题与对抗题。演示可以挑好看的例子;工程必须准备难看的例子:诱导编造、越权忽略规则、库外名单、缺数字字段。
对生成式系统,「测试」形态变了,但原则没变:
关键行为要可重复验证;回归要能发现恶化。
诚实写局限,也是质量文化的一部分。示范库有边界、检索有盲区、院线口径需官网核对——写进 README,不是示弱,是降低误用风险,也是对用户与协作者负责。
06|交付不只是代码:能演示、能说明、能交接
工程的终点不是「我写完了」,而是「别人能接手」。
实训收官要求很具体:三分钟 demo 覆盖主路径;README 说清如何运行;评估报告证明关键指标;侧栏与免责声明界定产品边界。这对应工业界的最小交付包:可运行产物、说明、验证证据、已知风险。
对求职与毕设同样适用。评审很少只看你调用了哪个模型,更看你是否能讲清:
问题是什么,边界在哪,怎么做的,怎么验的,下一步是什么。
现代软件工程培养的,正是这种可沟通的完成度。
07|AI 时代,工程方法为什么更重要而不是更不重要
有一种误解:模型越强,工程越无用。
四天实训给出的反例是:模型越强,越容易用流畅的错误骗过自己。于是更需要需求澄清、约束设计、版本管理、评测回归与诚实的产品边界。
可以这样记:
技术解决「能不能做出来」
工程解决「能不能做对、做稳、做可协作」
vibe coding 降低了从 0 到 1 的成本;文档驱动、小步提交、模块边界、质量内建,降低的是从 1 到 100 的混乱。
大学生若只带走「我会用大模型」,竞争力很快被稀释。若带走「我会把 AI 能力放进可维护的软件系统」,那才是更长曲线的能力。
08|工程总结的一句话
四天实训在工程上证明的是:
AI 项目同样遵循现代软件工程——用主线牵引交付,用文档约定验收,用版本管理变化,用模块控制复杂度,用测试与评估守护质量。
模型是零件。工程,是把零件变成产品的方式。
(技术链路的分日拆解,见同系列《技术总结》。)
系列导航
Day1~Day4:分日复盘
技术总览:从调模型到应用链路
本篇:现代软件工程总览
(完)
夜雨聆风