AI 原生 SDLC 操作手册(The AI-Native SDLC playbook),这个标题背后其实藏着一个很现实的问题:当大模型已经能写代码、查 Bug、补测试的时候,我们原来那套软件研发流程到底还要不要?要的话,该怎么要?
我过去一年带团队做了好几轮 AI 辅助开发工具的试点,从最初大家拿 ChatGPT 当高级搜索引擎用,到后来把 AI 代理直接嵌进 CI 流水线,再到现在我们内部基本跑通了一套全新的交付节奏。我最大的感受是:AI 不会替代软件工程师,但 AI 原生的研发流程一定会替代传统 SDLC。这里说的不是“用 AI 写点代码那么简单”,而是从需求拆解、技术设计、编码实现、测试验证到上线复盘,每个环节都被 AI 重新塑造过的完整流程。
这篇内容我不打算讲什么高深理论,而是把我们在实战中跑通的一套 AI 原生 SDLC 操作手册记录下来。适合谁看?如果你正在评估怎么把 AI 引入团队研发流程,或者你已经让团队用上了 AI 编程助手但觉得效果不稳定,再或者你是技术管理者,想搞清楚 AI 原生流程和人机协作的边界到底在哪,这篇文章应该能给你一些能直接落地的参考。
1. 为什么说是“原生”:AI 不是外挂,而是流程的骨架
1.1 传统 SDLC 的瓶颈在哪里
我们先盘一下传统软件开发生命周期的几个典型痛点。需求评审总是开不完的会,技术方案写了没人看,代码评审要么流于形式要么拖到上线前一天,测试环境跟生产环境永远有差异,线上出了问题要找半天日志才能定位到具体是哪一次变更引入的。
这些问题的根源不是某个人不认真,而是传统 SDLC 本身就是按“人肉传递信息”设计的。需求从产品经理脑子里搬到文档里,再搬到开发脑子里,再搬到代码里,每一步都是信息的损耗和失真。代码评审依赖资深工程师的时间精力,但资深工程师的注意力本身就是稀缺资源。测试用例的设计依赖测试人员的经验覆盖,但经验覆盖永远赶不上代码变更的速度。
当团队的规模变大、系统变复杂之后,SDLC 的每一个环节都变成了瓶颈。于是我们想到了各种“敏捷”“DevOps”的方法论,本质上都是在优化人与人之间的协作效率。但人的带宽有限,这套体系再怎么优化,到了某个规模阈值就会失控。
1.2 大模型改变了什么:从“人在流程中”到“AI 在流程中”
大模型真正改变的不是写代码这一个动作,而是信息在 SDLC 各环节之间的传递方式。以前需求到设计是人在转述,设计到代码是人在翻译,代码到测试是人在推断。现在这些中间层都可以由 AI 介入——AI 读需求文档可以生成结构化用户故事,AI 读技术方案可以生成接口定义草案,AI 读代码变更可以自动生成测试用例和影响面分析。
这就是“原生”的含义:AI 不再是某个环节的辅助工具,而是流程管道本身的一部分。就像 HTTP 是 Web 的基础协议一样,AI 成为 SDLC 各环节之间的“通用翻译层”,让信息在不同阶段之间流动的时候损耗降到最低。
我举个具体的例子。以前我们做一次需求评审,产品经理讲完需求,开发要现场理解、现场提问、现场确认边界,一场会下来能确认清楚一个功能点就算高效。现在我们的流程是:产品经理把需求初稿丢给 AI Agent,Agent 自动生成完整的用户故事、验收标准、边界条件和异常场景清单,开发提前看完这些内容再进评审会。评审会从“理解需求”变成了“确认 AI 整理的内容是否准确”,效率至少提升了一倍,而且遗漏的边界情况少了非常多。
1.3 什么是 AI 原生 SDLC:一个完整的操作手册框架
基于我们团队过去一年的实践,我总结了一套 AI 原生 SDLC 的参考框架。这套框架不是某个工具的组合,而是一套明确的流程设计原则:
第一,每个流程节点的产物必须是结构化数据,而不是散落的文档。需求是结构化的用户故事加验收标准,设计是结构化的接口定义加数据模型说明,代码是带语义化提交信息的变更集。AI 最擅长处理结构化信息,把产物结构化是让 AI 深度介入的前提。
第二,流程的每一步都有人机协同的检查节点。AI 负责生成初稿和候选方案,人负责做判断和决策。就像一个导航系统——AI 负责规划路线、提示拥堵、给出预估时间,但方向盘始终在驾驶员手上。
第三,反馈回路要足够短。AI 生成的代码合入之后,测试结果、代码评审意见、线上监控数据都要快速反馈给 AI Agent,让它在下一次生成时自动规避历史问题。
这套框架跑起来之后,我们团队实际感受到的变化是:重复劳动占比大幅下降,工程师把精力集中在真正需要人类判断力的部分,比如系统架构权衡、业务逻辑梳理、跨团队协调。下面我会从每个环节展开,把操作细节和对齐方式一点一点讲清楚。
2. 六个环节的重塑:从需求到运维,AI 渗透在哪里
2.1 需求分析与用户故事生成:让 AI 当“杠精”
需求分析是 AI 原生 SDLC 里收益最明显也最容易被忽视的环节。很多团队觉得 AI 写代码厉害,但需求分析这种“软性”工作 AI 应该不太行,实际跑下来发现恰恰相反——需求环节的 AI 介入能规避大量后期返工。
我们的操作方式是:产品经理写完需求初稿后,把文档喂给 AI Agent,要求它扮演三个角色分别生成内容——第一,作为资深开发,列出这个需求在技术上可能遇到的坑;第二,作为测试专家,列出完整的验收标准和异常场景;第三,作为用户,提出“如果我是用户,我可能不会按你想的方式用这个功能”的质疑。AI 生成的内容会直接附在需求文档后面,作为评审会的前置输入。
这套打法跑下来最明显的变化是:很多在传统流程里要到开发后期才暴露的需求歧义,在需求评审阶段就被 AI 的“杠精视角”挑出来了。有一次我们的 AI Agent 在需求阶段提出“如果用户在网络中断时点击提交按钮,应该提示什么文案?断网恢复后未提交的数据应该保留还是丢弃?”这两个问题当时产品经理没想过,开发也没想到,但如果上线后遇到,就是一次线上事故。
这里有一个实操重点:AI 生成的用户故事里的每个验收条件,必须能映射回原始需求文档的具体描述。如果 AI 生成了原文里没有的验收条件,一定要标记为“AI 推断项”,由产品经理确认是否追加进需求。不能让 AI 把需求“写歪了”,AI 在整个环节里是激发思考的催化剂,不是需求的作者。
2.2 技术设计:AI 生成方案初稿,工程师做决策
技术设计阶段,也就是传统 SDLC 里的设计评审环节,是最适合 AI 发挥“快速度”优势的地方。我们的做法是:在需求确认之后,由 AI Agent 基于需求文档和技术栈约束生成一到三套候选技术方案,每套方案必须包含接口定义草案、数据模型变更、潜在风险和性能评估。
需要注意的是,AI 生成的技术方案一定要限制上下文范围。比如我们有一个模块是订单系统,AI Agent 在生成方案时会自动去拉取订单系统的现有代码结构、数据库表结构、已有接口文档,在这个上下文范围内生成设计初稿,而不是让它凭空想象。我们通过内部的知识库工具把代码仓库的关键信息做成向量索引,AI Agent 在生成方案时先检索相关代码再动笔,生成出来的设计稿质量非常高,基本可以直接进评审。
真正有价值的是 AI 生成方案之后,工程师在评审会上的角色发生了变化。以前评审会是“谁写的方案谁主讲,大家来找茬”,现在变成“AI 生成了三套方案,大家讨论各套方案的取舍”。工程师的任务变成基于业务场景做决策——比如 AI 提供了同步方案和异步方案,工程师需要拍板到底用哪个,这种决策能力是 AI 无法替代的。
我建议技术方案评审会的时间分配是:前 30% 看 AI 方案是否符合现有系统架构,中间 40% 做方案选型的权衡讨论,最后 30% 明确要补充哪些 AI 没考虑到的边界条件。这套节奏跑下来,评审会通常能控制在四十五分钟以内出结论。
2.3 编码实现与代码评审:让 AI 做第一轮 Reviewer
编码环节是大家最熟悉的 AI 应用场景,但我观察到很多团队的用法还停留在“让 AI 写函数”的层面,这其实浪费了 AI 更大的价值。让 AI 写函数当然有用,但 AI 原生 SDLC 里更重要的是让 AI 做“第一轮代码评审”。
我们在 CI 流水线里挂了一个代码审查 Agent,每次开发提交 PR 的时候,这个 Agent 会先于人类评审者跑一遍检查。它检查的内容包括:代码风格和提交规范、明显的逻辑错误和安全漏洞、单测覆盖率的增量变化、变更影响面分析——也就是这次变更会影响哪些服务、哪些接口、哪些下游消费者。
这个 Agent 跑完会生成一份结构化的评审报告,人类评审者只需要重点看 AI 标记的“高风险变更”。现在我们的 PR 平均评审时间从原来的十几个小时缩短到三四个小时,而且 AI 在提交信息规范、死代码检测这些细碎问题上抓得比人还仔细——毕竟人看这些真的会累,AI 不会。
其实编码环节真正难的是怎么让 AI 生成的代码“接得住”。我们内部积累了一套团队级代码规范,包括目录结构规范、命名规范、错误处理规范、日志规范,全部转成 AI Agent 的 system prompt,同时把相关模块的现有代码喂给 Agent。这样 AI 生成的代码风格跟团队存量代码保持一致,不会出现“一个人写的但风格五花八门”的情况。
2.4 测试策略:AI 生成测试用例与场景补全
测试是 AI 原生 SDLC 里我觉得最“香”的环节。传统测试用例设计非常依赖测试工程师的个人能力,而 AI 在理解代码逻辑和业务规则之后,可以快速生成大量边界测试用例。
我们现在的流程是:功能代码合入之后,自动触发测试 Agent,它根据代码变更生成对应的单元测试用例和集成测试场景。理论上 AI 能生成几十上百条测试用例,但我们会设置过滤条件,只保留代码覆盖率增量贡献大于某一阈值的用例,避免生成一堆重复无效的测试代码。
更实用的是 AI 的“场景补全”能力。传统测试团队最容易漏的是异常场景,比如第三方接口超时、数据库连接池耗尽、消息队列堆积等。我们把历史上发生过的线上事故和故障案例整理成了一份“事故驱动测试清单”,作为 AI Agent 生成测试用例的参考,让它在每次功能测试中自动对照这个清单检查有没有遗漏的风险场景。
这里要提醒一个坑:AI 生成的测试代码同样需要质量把关。很多 AI 生成的单元测试只是把被测函数原封不动地调用了一遍,断言写得特别弱,跟没测差不多。我们要求测试 Agent 生成的每个测试用例必须包含明确的断言语句和预期行为描述,并且要在 CI 里做变异测试——人为修改代码后测试用例应当能发现变异,发现不了的弱测试直接打回。
2.5 CI/CD 与部署验证:AI 的“保安”角色
AI 进入 CI/CD 管道之后,最核心的价值不只是加速部署,而是识别部署风险。我们部署流水线里有一个 AI 风险门禁:每次准备发布的时候,Agent 会综合这次发布包含的代码变更、数据库迁移脚本、配置改动、依赖升级等信息,自动评估发布风险等级,并给出高危变更提示。
比如有一次我们准备发布一个新功能,AI 风险门禁提示这次变更涉及用户鉴权模块的核心逻辑,并且修改了一个已有接口的请求参数格式,属于破坏性变更,需要确认兼容性方案。团队按提示检查后发现确实漏了一个通过别的方式调用该接口的存量客户端,如果不是 AI 提早发现,这个问题要等到灰度阶段被真实用户撞上才会暴露。
部署之后的验证环节,AI 同样能做很多事。我们的监控 Agent 会持续分析服务日志和指标数据,一旦发现异常模式,自动关联到最近的代码变更和部署记录,生成一份“异常事件与变更关联分析报告”。这个能力在微服务架构里特别有用,因为服务间的调用关系太复杂了,人很难在几分钟内理清一次故障到底跟哪次变更相关。
2.6 运维观测与持续性优化:让 AI 沉淀团队经验
到了运维和持续优化阶段,AI 原生 SDLC 的长期价值开始显现。我们做了一件很重要的工作:把每次线上事故的复盘报告喂给 AI Agent 做学习,由它提炼出问题特征和规避策略,沉淀到团队的“经验知识库”。下次代码变更如果触发了类似模式,AI 会在编码阶段就提出预警。
运维环节最容易忽略的是 AI 的“上下文积累”效应。传统 SDLC 里,一个工程师在某个系统上积累了多年的运维经验,一旦他离职或者转岗,这些经验就跟着人走了。但在 AI 原生流程里,AI Agent 通过持续学习和知识沉淀,把团队的运维经验固化成了可检索的智能资产。新人入职之后可以直接通过问答方式向 Agent 了解某个历史事故的处理过程和规避方案,学习的效率完全不是一个量级。
这块我们还在持续优化当中,目前做得还比较粗,但方向上我很确定:AI 原生 SDLC 的真正壁垒不是某个环节用了多强的模型,而是团队有没有把历史上积累的经验和数据转成 AI 可以理解和复用的知识。这个积累越早开始越好,库存越多越值钱。
3. 基础设施选型与搭建:这些工具和配置是地基
3.1 代码托管与知识库的打通
AI 原生 SDLC 要想跑起来,第一步是把代码仓库和知识库打通。我们现在用了 Git 平台自带的 Code Search API 配合内部知识库工具,把代码库、文档库、工单系统、事故复盘记录全部做了向量化索引。
打通之后 AI Agent 就有了“记忆基础”——当它要生成技术方案或者做代码分析的时候,可以通过检索找到与当前任务最相关的代码片段、历史决策记录和已知问题列表。这一步听起来简单,但实际做起来有不少细节要处理。比如要定期同步索引,确保新提交的代码和刚关闭的工单能被及时收录;还要设置权限控制,不能让 AI Agent 检索到无权限访问的仓库内容。
我的建议是先从最核心的一两个仓库开始做索引打通,跑通之后再逐步扩展。不要一开始就想把全公司的代码和文档都塞进去,索引覆盖范围越大,检索噪声越多,AI 生成质量反而会下降。
3.2 模型选择与私有化部署的取舍
模型选型是整个 AI 原生 SDLC 里最容易被低估决策。我们一开始直接用最火的通用大模型,后来发现两个问题:一是推理成本高,每次调用都在烧钱;二是有时候模型输出太发散,给定的规范不够稳。后来我们做了模型分级策略——简单任务用轻量模型,复杂任务才用重量模型。
具体来说,像提交信息生成、代码格式化检查、测试用例框架生成这类规则性强的任务,我们使用轻量模型,响应快、成本低。而技术方案设计、代码影响面分析、复杂故障定位这类需要深度推理的任务,才调用重量级模型。另外,涉及核心业务代码的任务,我们会走私有化部署模型,数据不出内网,安全合规上有保障。
不要迷信某一个模型能胜任所有环节。我们在实际使用中的感受是,不同模型在不同任务上的表现有明显差异,需要快速试错和切换。
3.3 本地调试与可视化观测工具
AI Agent 不是一配好就能稳定跑起来的,它像一个新入职的同事,需要你持续观察它在各个环节的行为并不断纠偏。所以我们搭建了一套 AI Agent 的本地调试与可视化观测工具,记录每次 Agent 的输入输出上下问、调用链和决策依据。
比如当 AI Agent 生成的代码风格不合规时,我们可以打开调试面板看到它当时被喂入了哪些上下文、基于什么理由做了这个输出,然后针对性地调整 prompt 或者补充规范示例。这个过程跟调代码完全一样——你要能知道 Agent 每一步在想什么,才能去改进它。如果没有观测工具,AI Agent 就是一个黑盒,出了问题根本没法排查。
强烈建议所有做 AI 原生 SDLC 的团队,至少在初期把 AI Agent 的日志和 trace 做得足够详细。这是整个体系的调试基础设施,前期的投入会在后续排障和优化时几十倍地省回来。
4. 实操过程与核心环节实现
4.1 一个具体需求的 AI 原生全流程走读
前边讲了框架和选型,会有人觉得这离落地还有点距离,我按一个具体的需求把全流程走一遍,这样会直观很多。
假设我们要做一个新功能:用户可以在订单列表页按商品类别筛选订单。需求方最初只有一句话——这个功能要在新的订单列表中加一个筛选功能。传统流程会怎么做?产品经理开始细化需求,开发估工时,测试等开发完了再写用例。在这个里边信息损耗特别多。
在 AI 原生流程里,我把这句话丢给需求分析 Agent,让它基于订单系统的现有代码和用户操作习惯生成用户故事和验收标准。Agent 反馈的内容包括:用户可以通过下拉框选择商品类别,默认展示全部;筛选结果需要保持与现有列表的分页逻辑一致;如果该类目下没有订单,需要展示空状态提示并引导用户调整筛选条件;同时必须考虑不同渠道的订单分类规则差异。
拿到这些内容之后,产品经理只需要对照业务实际——比如确认一下确实需要空状态引导,然后把验收标准逐条确认签字。技术设计环节,设计 Agent 基于接口文档自动生成了接口入参和出参的定义草案,并提示可能会影响现有的订单统计接口,因为订单统计需要同步感知筛选条件。
开发拿到设计和验收标准后,编码 Agent 直接生成了前端筛选组件的代码和服务端查询接口的实现。生成代码自动用团队规范做了自检,单测代码也一并补齐。提交 PR 后,审查 Agent 给出的评审意见是:筛选参数没有加白名单机制,可能存在非法参数注入风险——人类评审者看了一眼,觉得有道理,补上之后合入,然后自动走 CI/CD 流水线,部署到预发环境。整个过程从需求到可部署的构建产物,不到半天就完成了。
4.2 参数调优与提示词技巧
实操过程中,最核心的参数调优集中在提示词设计和模型温度设置上。提示词是我们的日常功课,我们总结出的一个有效框架是:角色定义 + 输入信息 + 任务目标 + 输出格式 + 约束条件 + 示例。
我还是拿代码审查 Agent 举例。我们在提示词里明确要求:你是资深代码评审专家;以下是本次代码变更的 diff 内容和涉及的相关文件;请找出潜在问题并按严重程度分类输出;输出格式必须是 JSON;如果没有发现问题,也要明确说明“未发现明确问题”;特别要注意并发安全和数据一致性。这样一个明确的提示词框架,比简单说“帮我看看这段代码有什么问题”要好用得多。
模型温度这个参数也很值得关注。在生成技术方案这类需要创造力的场景,温度可以调高一点,比如 0.7 到 0.8,让模型有更多发散空间。而在生成测试用例、检查提交规范这类需要严格遵循规则的场景,温度要调低,建议在 0.1 到 0.2,保证输出的确定性。跟人一样,AI 在“自由发挥”和“照章办事”之间也有张力,需要按照环节特性去调整。
4.3 CI/CD 流水线与 Agent 对接的配置示例
为了让大家能直接抄作业,我给一个 GitHub Actions 上接入代码审查 Agent 的简化配置示例。说明一下,这只是思路演示,真实生产环境的完整流水线要比这个复杂得多,但核心结构就是这样的:
name: ai-code-review on: pull_request: types: [opened, synchronize] jobs: review: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v4 - name: Fetch diff id: diff run: | git diff ${{ github.event.pull_request.base.sha }} \ ${{ github.event.pull_request.head.sha }} \ > diff.txt - name: Call AI Review Service run: | curl -X POST https://your-ai-review.example.com/analyze \ -H "Authorization: Bearer ${{ secrets.AI_SERVICE_TOKEN }}" \ -F "repo=${{ github.repository }}" \ -F "pr_number=${{ github.event.pull_request.number }}" \ -F "diff=@diff.txt" - name: Post review comments run: | python scripts/post_review_comments.py \ --pr ${{ github.event.pull_request.number }} \ --token ${{ secrets.GITHUB_TOKEN }}这套流程的核心逻辑是:PR 一旦创建或更新,自动把代码变更的 diff 发给内部的 AI 审查服务,审查完成后把结果回写到 PR 的评论中。人类开发者不用主动触发,AI 在后台就把第一轮审查做完了。
这里有一个值得注意的设计点:AI 审查结果是通过独立的 service 跑的,没有直接内嵌在 CI 脚本里执行。这个独立服务的好处是,AI 模型升级、提示词调整不需要改流水线配置,逻辑解耦,维护成本更低。
5. 常见问题与排查技巧实录
5.1 AI 生成代码的“幻觉依赖”问题
AI 生成的代码有一种很典型的错误模式,我称之为“幻觉依赖”:AI Agent 在生成代码的时候,会引用一些根本不存在或者尚未安装的第三方依赖包,从而构建出无法编译的代码。这种情况在生成较新技术栈的代码时尤其高发——因为模型训练数据里不包含某几个新版本的 API,它就会基于对同类库的既有知识“编造”一个实现方案。
我们的排查方法很直接:首先,在 CI 构建阶段如果不通过就先自动反馈给 Agent,让它重新生成。其次,我们在编码 Agent 的提示词里增加了一道强制约束——要求生成的代码里所有依赖必须能在统一的依赖管理配置文件中找到对应的声明,不允许生成带隐式依赖的代码。另外,在生成代码之后会跑一次静态依赖检查,把未声明依赖直接拦截在合并之前。
5.2 上下文丢失导致的需求偏离
AI Agent 在长对话场景下容易“失忆”,它会忘了最开始的需求约束,生成的方案逐渐偏离原始需求。这不是模型变笨了,而是注意力被更近的上下文带偏了。
我们遇到过真实案例:AI 在生成了三个版本的设计方案之后,因为工程师追问了一个关于性能优化的问题,Agent 后续生成的代码把原本“优先保证正确性”的约束悄悄改成了“优先保证性能”,导致有一处边界情况没有处理。从此之后我们给自己定了一条铁律:每个 Agent 的会话只处理一个明确任务,任务开始之前必须把需求要点、约束条件和验收标准完整地注入到上下文里,不允许跨任务复用一个会话。如果是复杂的多步骤任务,每一步结束之后都要重新注入原始需求和中间产物,确保 Agent 不会跑偏。
5.3 知识库过期导致的推荐陈旧
AI 原生 SDLC 是一个活系统,AI Agent 的“知识”需要持续维护更新。我们踩过的一个坑是:知识库里积累的技术决策和规范文档没有及时同步最新的架构变更,导致 AI Agent 在做代码分析时给出的方案还是几个月前的老方案,与现有系统不匹配。
现在我们的知识库维护有一套明确的同步机制:每次技术方案评审和重大架构变更之后,负责的工程师必须在知识库里更新对应的决策记录,并通知 Agent 的索引服务刷新。我们在 CI 里加了一个检查,如果发现最近一周有合并的架构相关文档但知识库索引没有更新,会自动给管理员发提醒。这不是 AI 的问题,而是知识管理的问题——AI 的输入质量决定了它的输出质量,知识库过期了,AI 再聪明也白搭。
5.4 问题排查速查表
| 现象 | 可能原因 | 排查思路与解法 |
|---|---|---|
| 生成的代码引用不存在的依赖包 | 模型依赖幻觉 | 设置依赖声明强制校验;CI 构建失败后自动重新生成;在提示词中强调只能使用现有依赖 |
| 同一任务多次生成结果差异很大 | 模型温度设置过高或上下文不足 | 降低温度到 0.2 以下;增加约束条件与示例;检查上下文是否包含完整需求约束 |
| Agent 在长会话后期偏离原始需求 | 上下文丢失或长对话注意力偏移 | 每个会话只处理单一任务;每步重新注入需求摘要与验收标准;大任务拆分为多个小任务 |
| AI 审查误报率高,人类评审不想看评论 | 提示词中风险定义不清晰 | 细化“严重程度”分类标准;在提示词中补充具体误报案例作为负例;设置低置信度评论自动过滤 |
| AI 生成的技术方案与现有架构冲突 | 知识库索引未更新或缺少上下文 | 检查知识库文档是否同步最新架构决策;更新索引;在生成前强制检索相关模块代码 |
| AI 生成的测试用例断言太弱 | 提示词中缺少断言强度约束 | 要求生成用例包含明确断言语句;用变异测试过滤弱测试;对断言覆盖率设置最低阈值 |
6. 落地经验与个人心得
6.1 不要追求全流程一步到位
AI 原生 SDLC 的搭建需要循序渐进,不要指望一个月就把所有流程全部 AI 化。我们当时第一步做的只是代码评审 Agent,因为这一步对业务影响最小、风险最低、价值体现最快。跑通之后团队成员对 AI 的信任度建立起来了,后面再推需求分析 Agent、测试 Agent 就顺利得多。
我的建议是按这个顺序来:先做编码辅助和代码评审——这是最容易看到即时收益的;再做测试用例生成——能够明显提升交付质量;然后做技术方案设计——需要积累一定量的知识库之后效果才更明显;最后才是需求分析和运维观测——这两个环节对上下文的完整度和团队协作模式的调整要求最高,放后面做会更顺利。
6.2 人机分工的边界在哪里
跑了一年多 AI 原生 SDLC,我最深的一条经验是:AI 负责“做出来”,人负责“决定做哪个”。AI 可以非常快地生成代码、方案、测试用例,但它不具备判断“这个需求到底要不要做”的能力。在一次资源有限的情况下,企业要选择先做哪个功能、砍掉哪个需求、承担哪些技术债,这些判断必须由人来完成。
编码层面也是一样。AI 可以快速生成一个模块的初始代码框架,但模块边界怎么划分、哪些逻辑放这层哪些放那层、未来哪个方向更可能演进,这些需要工程师基于业务理解来做架构决策。所以我们的团队要求每位工程师都要学会“给 AI 布置任务”——明确目标、给出边界条件、说明质量标准和约束,然后 AI 负责高效执行生产。工程师的角色在从“写代码的人”变成“AI 的产品经理”。
6.3 对工程师能力模型的影响
AI 原生 SDLC 对工程师的能力要求确实在发生变化。以前我们招人很看重编码能力和算法基础,现在这些仍然是必要条件,但已经不够了。新的关键能力变成了:第一,定义问题和拆解任务的能力——你能不能把一个模糊的需求拆成 AI 能理解和执行的结构化任务;第二,代码评审和方案判断的能力——AI 生成的代码质量好不好,风险在哪里,这些判断现在越来越值钱;第三,快速学习新领域的能力——因为 AI 大幅压缩了从想法到实现的时间,业务迭代节奏会变得更快,工程师需要更快地理解业务背景和技术上下文。
这个变化对资深工程师来说是好事。以前资深工程师的大量时间被琐碎的 CRUD 代码淹没,根本没时间做深度的架构思考。现在 AI 把这些脏活累活接走了,资深工程师可以把精力放在真正重要的系统设计和技术决策上,同样一个人能cover的系统复杂度比从前翻了几倍。
最后再分享一个非常实用的小技巧:给 AI Agent 建立“正误案例”库。我们每遇到一次 AI 生成质量差的案例,都会把这次的 Prompt、输入上下文、模型输出和正确的期望输出整理成一条案例记录,定期拿这些案例做回归测试,用测试结果评估新版本模型和调整后的提示词好不好用。这个习惯坚持两三个月之后,AI Agent 的输出质量会有一个肉眼可见的跃升——就像带新人一样,你反馈得越及时、越具体,对方的成长速度就越快。AI 也是这样,它就是你的“数字新同事”,你愿意花多少心思调教它,它就能帮你分担多少活。