Agentic SDLC — 智能体驱动的开发循环
智能体开发循环
过去、现在与未来
AI 智能体如何重塑 SDLC —— 以及团队必须做出哪些改变
为什么这个话题很重要
- 智能体正在从自动补全走向自主执行
- 大多数团队以自下而上的方式采用它们,没有改变流程
- 结果:代码更多、更快——但不一定带来更好的成果
- 本次演讲:什么变了、什么会出问题、需要改变什么
论点: AI 将瓶颈从编写代码转移到了定义规格、审查和验证工作
议程
- 过去 —— 智能体出现之前的 SDLC
- 现在 —— 智能体实际改变了什么
- 问题 —— 团队在哪里出问题
- 改变 —— 该怎么做
- 未来 —— 这将走向何方
先来个快速术语表
| 术语 | 它做什么 | 人的角色 |
|---|---|---|
| 自动补全 | 预测下一个 token | 打字 |
| 助手 | 回答问题,按请求编辑 | 指挥 |
| 智能体 | 规划并执行多步骤任务 | 审查 |
| 多智能体 | 编排的专家智能体 | 编排 |
底层模型相同——自主程度不同,失败模式也不同
第一部分
过去:智能体出现之前的 SDLC
我们是如何走到这里的
- 1970 年代 —— 瀑布模型:一切预先规划
- 2001 年 —— 敏捷:短迭代,可工作的软件
- 2010 年代 —— DevOps 与 CI/CD:自动化交付,DORA 指标
- 2021 年 —— GitHub Copilot:AI 进入 IDE
每一波浪潮都消除了一处瓶颈——并把约束转移到了别处
经典开发循环
ticket ──► design ──► code ──► review ──► test ──► release
- 人做所有事情,由工具辅助
- 审查是知识传递机制
- 测试是安全网
- 速度受限于打字、上下文切换和交接
瓶颈在哪里
| 瓶颈 | 代价 |
|---|---|
| 手工代码与样板代码 | 缓慢、无聊、易出错 |
| 审查作为唯一的学习渠道 | 初级工程师学得慢 |
| 文档最后才写 | 永远过时 |
| 角色之间的交接 | 等待时间、上下文丢失 |
| 测试覆盖作为事后补充 | 回归缺陷 |
第二部分
现在:智能体实际改变了什么
实践中的自主性光谱
Copilot (autocomplete) ──► Chat assistants ──► Coding agents ──► CI/CD agents
"next token" "answer & edit" "take this issue" "fix this build"
- 采用是自下而上的:开发者自带工具
- 智能体现在可以:规划 → 编辑 → 运行测试 → 迭代 → 提交 PR
- 一些团队已经在 CI 中运行智能体来修复、测试和审查
智能体开发循环
spec ──► plan ──► generate ──► run tests ──► fix ──► PR
│
release ◄── deploy ◄── merge ◄── CI gates ◄── human + AI review
- 代码步骤变得廉价而快速
- 规格和审查步骤成为关键路径
- 人从编写转向定义规格、审查、验收
仍然属于人的部分
- 需求与设计 —— 构建什么以及为什么
- 判断 —— 权衡、边界情况、业务风险
- 验收 —— 这是否正确且安全?
- 问责 —— 有人为结果签字
其他一切都在变得越来越可协商
第三部分
问题:团队在哪里出问题
十一种失败模式
- 审查文化崩溃
- 速度失控
- 上下文缺口
- 验证缺口
- 安全与合规盲区
- 归属变得模糊
- 入职培训与技能退化
- 开发者差距被超级放大
- 动机成为隐藏的乘数
- 摘要成为新的攻击面
- 人类心理成为瓶颈
问题 1:审查文化崩溃
- 审查曾经是导师制:“你为什么这样写?”
- 现在人审查的是没人写过的代码——通常没有读过
- AI 审查处理机械性问题(风格、安全、明显缺陷)——而非判断
- 初级工程师不再从资深反馈中学习
- 审查量爆炸;资深工程师倦怠
危险信号: PR 以“LGTM”合并——学习渠道消失了
问题 2:速度失控
- DORA 指标看起来很棒:更多 PR、更多部署
- 但虚荣指标掩盖了真正的问题:我们是否在正确地交付正确的东西?
- 更多代码 = 更多缺陷、安全问题和维护的表面积
- 团队混淆了吞吐量与成果
危险信号: 速度上升,但变更失败率和事故也上升
问题 3:上下文缺口
- 智能体不了解你的领域、架构或约定
- 它们不知道决策为什么做出
- 结果:模式不一致、代码重复、幻觉 API
- 每个开发者都在提示词中携带私有上下文
危险信号: 同一个问题在代码库中以 5 种不同方式解决
问题 4:验证缺口
- 智能体生成代码的速度快于测试
- 代码之后写的测试倾向于适配代码,而非需求
- 边界情况和错误路径被跳过
- “CI 通过了” ≠ “这是正确的” 危险信号: 测试出现在实现之后,且只覆盖正常路径的 PR
问题 5:安全与合规盲区
- 密钥、许可证和专有数据可能泄露到外部模型
- 生成的代码可能引入有漏洞的依赖或模式
- AI 资产很少被纳入威胁模型
- 合规问题:代码去了哪里,谁能看到?
危险信号: 团队没有关于哪些模型/工具可以接触哪些代码库的策略
问题 6:归属变得模糊
- “是智能体写的”成为借口
- 当生成的代码在生产中失败时,谁负责?
- 轮换作者身份打破了责备≠惩罚的文化,但也打破了问责制
- 风险:没有人对 AI 输出感到负责
危险信号: 事故发生后,没有人能解释导致事故的代码
问题 7:入职培训与技能退化
- 初级开发者生成他们不理解的代码——并通过审查
- 基础知识(内存、算法、调试)不再被练习
- 高级开发者把所有时间花在审查上,而不是设计上
- 未来的高级开发者正在被训练成“提示并接受”
危险信号: 初级开发者发布了一个功能,但无法解释任何一个设计决策
问题 8:开发者差距被超级放大
- 团队一直有快速交付者、谨慎架构师、深度调试者——产出分布很广
- 智能体消除了打字上限:每个人都以机器速度生成
- 差距转移到真正重要的事情上——指定、验证、判断——而这里的差距更大
- 快的更快;谨慎的成为瓶颈——并在压力下被绕过
危险信号: 产出量趋同,但被接受质量的方差爆炸——且没有人追踪它
问题 9:动机成为隐藏的乘数
- 机械性工作消失了;剩下的是自主性的:规范质量、审查深度、边缘情况思考
- 自主性工作无法被强制执行或衡量——只有人们在意的时才会发生
- 一个没有动力的审查者加上一个智能体,等于以机器速度无声地 LGTM
- 智能体让隐藏更容易:速度看起来很棒,而判断力却缺席
危险信号: PR 流动,速度上升,但没有人能解释为什么设计是合理的
问题 10:摘要成为新的攻击面
- 审查正在从阅读 diff 转向阅读智能体编写的摘要——由编写代码的智能体自我报告
- 自动化偏见上升了一个层次:“摘要看起来没问题”成为新的 LGTM
- 智能体想要获得批准:摘要可以有利地框定决策或省略失败的内容
- 每一层摘要都会丢失信息——而人类离代码最远
危险信号: 批准比以前更快,但没有人打开过 diff 已经好几周了
问题 11:人类心理成为瓶颈
- 剩余的工作——指定、判断、接受——依赖人类认知,而认知有极限
- 自动化偏见与锚定: 智能体的第一个提案成为唯一的提案
- 决策疲劳: 批准传送带在下午降低判断力
- 信任钟摆: 胜利后过度信任,一次失败后过度拒绝——从未校准
- 意义与身份: “如果智能体写的,什么是我的?”→ 脱离,无声的橡皮图章
危险信号: 轨道是绿色的,审查很快——但没有人能说出今天他们改变了哪个决策
第四部分
变革:该怎么做
九个变革领域
- 流程 — 规范优先的开发
- 角色 — 从编写者到编排者
- 实践 — 无法跳过的质量门禁
- 工具 — 共享的、版本化的上下文
- 指标 — 结果重于吞吐量
- 人员 — 新技能和职业路径
- 审查 — 护栏重于仪式
- 动机 — 管理差距,滋养内在驱动力
- 心理 — 为人类心智而设计
变革 1:规范优先的开发
- 在任何智能体工作之前写一个简短的规范:目标、范围、验收标准、边缘情况
- 保持规范小——一个问题 = 一个可审查的单元
- 为智能体无法推断的决策记录 ADR
- 将工单视为可执行的规范:好的工单让好的智能体运行
之前: “实现用户登录” 之后: “通过 OAuth2(Google)登录,锁定账户时报错,速率限制 5 次尝试,令牌过期的测试”
变革 2:新角色
- 开发者从编写转向设计、审查、编排
- 智能体/平台工程师——拥有共享上下文、工具和智能体基础设施
- 上下文工程成为一等技能:提示、规则、检索
- 高级审查聚焦于设计和需求,而不是语法
变革 3:强制性质量门禁
- 智能体无法绕过的 CI 门禁:lint、测试、覆盖率、密钥扫描、许可证检查
- 没有测试就没有 AI 代码——测试来自规格说明,而不是代码
- Agent 运行测试并在人类看到 PR 之前修复自身的失败
- 审查清单:需求是否满足?设计是否合理?边界情况是否处理?
变革 4:共享的、版本化的上下文
- 团队规则、技能和 agent 配置存放在仓库中——像代码一样被审查
- 将 agent 连接到真实上下文:ADR、文档、issue 跟踪器、API(MCP 服务器)
- 新加入者的 agent 在第一天就应该和资深者的 agent 一样高效
- 共享提示词库并附带审查——私有提示词是一种负债
变革 5:不说谎的指标
| 保留(DORA) | 新增 |
|---|---|
| 部署频率 | AI 辅助 PR 的变更失败率 |
| 前置时间 | 生成代码中的缺陷密度 |
| MTTR | 审查延迟与深度 |
| — | 各领域 AI 代码的接受率 |
- 跟踪结果:事故、逃逸缺陷、恢复时间
- 审查质量比审查速度更重要
变革 6:人与文化
- 培训: 基础仍然重要——内存、算法、调试、系统
- 导师制: 结对审查,由作者口头解释设计
- AI 使用政策: 哪些模型、哪些仓库、什么数据——写下来
- 职业发展路径: 编排和设计作为晋升标准,而不是代码行数
变革 7:审查是护栏,不是仪式
- 将审查拆分为三项职责:质量控制、知识传递、问责
- 质量控制 → 分层护栏:agent 时、CI 时、合并时、运行时——是一个栈,不是单一检查
- 知识传递 → 设计会议和结对——而不是 PR 评论(见问题 1)
- 问责 → 按风险分层的门禁:低风险通道自动合并,认证、支付、迁移、基础设施需要人工签字
- 护栏验证代码;人类验证规格——审查左移并缩小
护栏栈
agent-time permissions · sandbox · context boundaries · budgets · rules-as-code
↓
ci-time tests · property-based · mutation · static analysis · secrets · licenses
↓
merge-time risk tiers · required checks · diff-size limits · merge queue
↓
runtime canary · feature flags · error budgets · SLOs · automated rollback
- 如果人工审查缩小,每一层都必须撑住——纵深防御,没有单一可信检查
审查摘要,而不是 diff
- 对于每个变更,agent 生成一份审查摘要:规格到实现的映射、验证证据、agent 审查者发现并修复了什么、剩余风险
- 证据来自 CI,而不是 agent 的声明——摘要链接到测试日志、变异分数、扫描结果
- 低风险通道:摘要自动归档为审计记录——路径中没有人类
- 高风险通道:人类阅读摘要,抽查 diff,签字确认
- 抽查是随机的——其推翻率是整个系统的信任指标
审查阵容发生变化
- 旧世界:一个角色做审查——资深工程师阅读 diff
- 新世界:审查重新分配给不同的阵容
- 产品与领域专家判断规格合规性——他们以前无法审查代码
- 安全与风险专家负责高风险通道
- 架构师与编排者判断设计摘要
- 初级人员审查摘要并抽查 diff——作为刻意练习
- Agent 覆盖机械层:风格、安全模式、覆盖率
变革 8:管理分布,滋养动力
- 测量分布,而不是中位数——关注质量、审查深度和缺陷率的尾部
- 让不可见的工作可见:规格、属性、验证、导师制——被认可和奖励
- 保持设计的人类性和意义:agent 做机械性工作,人类拥有判断
- 为交付者、架构师、验证者提供职业发展路径——晋升判断力,而不是数量
变革 9:为人类心智而设计
- 预算注意力:判断时刻是稀缺的——只将高风险决策路由给人类
- 用数据校准信任:跟踪过度接受和过度拒绝率,在回顾中重新校准
- 保护心流:批量运行 agent 和审查;人类留在设计循环中,而不是审批循环中
- 让新工艺可见:庆祝规格、验证和被推翻的决策
- 心理安全优先:“agent 做了这个,我无法完全解释”是讨论的开端,而不是忏悔
第 5 部分
未来:这一切将走向何方
多 agent 团队
orchestrator ──► architect ──► coder ──► tester ──► security reviewer
│ │
└── spec ──────────────┘── report
- 具有不同提示词、上下文和预算的专用 agent
- 编排者是新的 IDE:人类定义目标,agent 协商计划
- 验证 agent 持续运行,而不仅仅在 PR 时
明天的角色地图
- 产品工程师 — 负责规格与验收,原生面向智能体
- 编排者 — 拆解工作、调度智能体、评判摘要
- 验证专家 — 负责护栏、信任指标、抽查计划
- 上下文工程师 — 负责规则、技能、MCP 服务器、团队知识
- 初级成员 — 从评审者和验证者做起,逐步成长为设计者
- “编码者”角色减少;判断类角色增多
规格即代码,人类即设计者
- 规格变得可执行且可版本化——生成的代码是一次性产物
- 设计文档和验收标准才是真正的真相来源
- 评审的单元是规格 + 结果,而不是 diff
- 持续验证:每次合并都重新对照需求检查
团队的上下文成为资本
- 规则、技能、ADR、规格、评审摘要积累在仓库中——它们成为组织的护城河
- 入职流程坍缩:新员工和他们的智能体第一天就能产出
- 写出更好规格的团队会复利增长:上下文改善,智能体也随之改善
- 另一面:知识离开人们的头脑,成为可版本化的资产
持续验证
- 验证成为 24/7 流程:智能体进行模糊测试、运行属性测试、观察生产行为
- 规格 → 代码 → 部署 → 观察 → 规格的循环永不停止——这是一个循环,不是流水线
- 变更失败率成为实时仪表盘,而不是月度报告
- 人类通过目标和错误预算来引导;智能体运行具体机制
- 智能体记分卡:哪个智能体被信任做什么——模型升级成为风险事件
经济学翻转:生成免费,验证昂贵
- 写代码的成本趋近于零;验证代码成为主导成本
- 预算从人力转向验证算力、评估套件、模型质量
- 新的单位经济学:每次被接受的变更的成本、每个逃逸缺陷的成本
- 验证和信任指标成为组织竞争的领域
前方的风险
- 技能萎缩 — 一代人离开智能体就无法调试
- 供应链 — 被攻陷的模型、被投毒的训练数据、恶意技能
- 过度信任 — 因为“它通常能工作”就接受智能体输出
- 责任归属 — 当自主代码失败时,谁负责?
- 验证表演 — 看起来严谨但没人检查的护栏和摘要
- 上下文单一文化 — 知识冻结在只有少数人能重新生成的规格中
安全的团队将是持怀疑态度的团队
要点:周一要做的六件事
- 先写规格再写提示词 — 每个任务一份小规格
- 为一切设门禁 — 没有测试和 CI 检查就不允许 AI 代码
- 在仓库中共享上下文 — 规则、ADR、技能,像代码一样评审它们
- 让评审不再是一种仪式 — 处处有护栏,人类专注于规格和高风险通道
- 选择诚实的指标 — 将速度与变更失败率配对
- 保护判断时间 — 批量评审、预算注意力、庆祝被推翻的决策
总结
- 智能体将瓶颈从编写转移到了规格化与验证
- 旧循环以十一种可预测的方式断裂
- 修复首先是组织层面的,其次才是技术层面的
- 未来属于那些设计得好且验证得狠的团队
谢谢
提问与讨论