1. 为什么需要“成熟度模型”:AI原生不等于AI编程
在2025年的CPP-Summit上,关于AI辅助软件开发的内容明显比前两年更务实了。前几年大家还在讨论AI能不能写代码、能写多少行,今年的话题已经变成了AI能不能重构整个研发流程,以及更关键的——你的团队处于什么位置、下一步该往哪走。这场题为“AI原生软件研发成熟度模型与演进”的分享,正是试图回答上述问题的核心框架。
我的整体感受是,两年前我们还在纠结“AI写的代码能不能用”,今年在逐渐转向研究“如何让AI深度参与研发工作流”。但对于不同基础、不同规模的团队来说,“AI原生”四个字的含义差别可能非常大。有的团队可能还停留在装了个编码助手、用AI补全代码的阶段;有的团队已经在用AI Agent跑自动化测试、做代码评审、自动生成设计文档;少数团队甚至已经把AI当作核心研发流程的一部分,从需求分析到发布验证整个链条都有人工智能深度介入。
这种现实差异就是成熟度模型要解决的问题:我们需要一个可评估、可对标的分层体系,让团队能看清自己所处的阶段,也清楚下一步该怎么演进。这不是纸上谈兵,而是像当年软件工程引入CMMI那样,把混乱的“凭感觉做事”变成有节奏、有标准的工程实践。只是这一次,对象不是人的开发流程,而是人与AI协作的联合开发流程。
1.1 从“会用AI”到“原生”之间,隔着一个工程化鸿沟
我见过不少团队在使用AI工具后的一种状态:大家确实每天都在用AI,写注释、生成样板代码、补单元测试,效率提升似乎也立竿见影。但去问他们“AI到底在研发链条中扮演什么角色”,答案就很难统一。有的说AI是增强版的自动补全,有的说AI能帮我看代码审计,还有的说AI根本没法处理我们项目的复杂构建系统。
这就是典型的“使用AI”和“AI原生”之间的巨大张力。打个生活化的比方:你买了一把电动螺丝刀,拧螺丝确实比手动的快很多,但你的工作流程本质上还是“人工找螺丝、人工对准位置、人工判断松紧”。这不叫用上了自动化产线,只有当你把螺丝刀接入机械臂,由系统根据装配图纸自行规划拧螺丝顺序、扭矩和节奏时,才勉强算自动化。AI原生研发也是同样的逻辑——有没有AI参与不是关键,参与方式、参与深度、参与一致性才是决定性的指标。
这次峰会上分享者提到的一个观察很有意思。他们调研了多个软件团队后,发现一个普遍现象:AI工具的使用率很高,但AI带来的效能提升经常无法稳定复现。有的项目组AI贡献率达到40%,有的只有5%,差距不在个体能力,而在整个研发流程能否为AI的介入让出空间。如果你的流程设计还是围绕“人写代码、人审代码、人测代码”来搭建的,AI就只能在缝隙里打零工,很难成为真正的生产力引擎。
1.2 成熟度模型要回答的三个问题
为什么需要用模型来定义这件事?分享嘉宾给出了一个很清晰的框架:成熟度模型的价值,在于它帮助团队回答三个根本问题。第一,我们目前在哪个位置?第二,到达下一个级别的核心短板是什么?第三,演进不应该只是技术工具的升级,还牵涉哪些环节的配合调整?
这三个问题,不管对50人的研发团队还是对5000人的大组织,都同样存在。只是规模越大,复杂度越高,进化越难。关键在于大多数团队缺乏一个公共语言来描述这种差异。你说你们团队AI应用做得好,他说他们团队AI覆盖率超过60%,但“好”和“覆盖率”可能指的东西完全不同。有具体的成熟度模型以后,大家才能在同一张地图上对话。
这个模型的形式本身并不复杂,是一种与经典的软件开发成熟度模型思路一致的分层结构。但这次的模型不是泛泛而谈,它是针对“AI原生软件研发”这一特定场景定制的,核心焦点是:研发活动中人与AI的交互方式、AI参与的程度和范围、组织围绕这种参与进行的适配程度。把它想清楚了,演进路径自然也就清楚了。
2. 模型分层:从L1到L5,你的团队处在哪一层?
在峰会分享中,这个AI原生软件研发成熟度模型被分成了五个层级。我结合自己的理解和大量实际案例来展开说明。需要提醒的是,不要试图原样套用到自己团队身上,因为每个团队的现状、业务领域、历史包袱都不同,这个模型最大的作用是提供一种思考坐标系,而不是一个僵化的考卷。
2.1 L1 点状工具:AI辅助编码
L1是绝大多数团队已经处于或正在经历的阶段。在这个阶段,AI的形态主要表现为“编码助手”,常见能力包括代码补全、简单的代码解释、单文件级别的代码生成。AI没有进入业务流程,也没有被系统化地接入某个研发环节,它更像是一个聪明的输入法,随时待命但完全被动。
这个阶段的典型特征是:AI的使用完全依赖开发者的个人习惯。有的开发者会花时间打磨提示词,让AI帮自己写模块级代码;有的使用者只用来生成样板代码和注释;还有性格保守的开发者基本不用AI,认为它生成的代码风格与团队不一致。结果就是,AI效用方差极大——用得好的人觉得效率翻倍,用得一般的人觉得可有可无。
L1的局限很容易被忽略,因为它确实带来了真实的生产力提升。但深层次的问题在于:这种提升没有沉淀为团队能力。某个开发者精心调试出来的最佳提示词、某些可复用的AI使用模式,都随着个人偏好被终结掉了。团队换一个人,AI的使用水平可能就会大幅下滑。这个阶段,AI还没有成为研发流程的有机组成部分,仍然停留在外部工具的定位。
2.2 L2 环节内嵌:AI融入单一研发环境
进入L2后,AI不再只是一个随手可用的辅助工具,而是被正式嵌入到某几个具体的研发环节中。最常见的是持续集成流水线中的代码扫描、缺陷检测,以及测试用例的自动生成。此外,也有团队将AI用于安全漏洞的初步排查,通过在提交环节自动运行安全扫描,大幅度降低安全专家需要人工排查的工作量。
L2的关键特征是可以脱离开发者个人主动性来运转。也就是说,即使开发者在主观上不想用AI,只要他的代码提交进流水线,AI就会自动开始工作——自动检查代码风格、自动扫描潜在缺陷、自动生成针对本次改动的测试用例。这种“流程强制”机制确保了AI不再是少数人的兴趣爱好,而是整个团队的基础设施之一。
我此前在某跨平台C++项目组推进L2时,踩过的一个坑是:C++项目的构建本身就非常复杂,编译时间较长,多平台支持也可能引触发器和条件编译矩阵问题,如果AI检查工具不能与现有构建系统紧密集成,它的价值就会大打折扣。最初的尝试中,我们选择了在开发人员本地运行AI检查的方案,但效果非常不理想——本地环境的差异带来的报错非常多,而且开发者需要主动去运行命令,积极性自然不高。后来调整为在持续集成流程中增加一个AI静态分析阶段,情况才真正好转:每次提交进来,系统自动用AI模型过一遍关键代码路径,然后将结果直接反馈到合入请求中,开发者在日常流程中无感使用。
2.3 L3 流程贯穿:AI Agent参与端到端生命周期
L3是我认为目前最值得关注的重点阶段,也是这次分享讨论得最深入的部分。在这个阶段,AI已经从辅助工具、独立功能模块进化为能够跨环节协作的Agent系统。它们不再只是“在某个环节等你调用”,而是能够主动理解上下文,在多个研发节点之间传递信息和状态。
举一个具体的例子来帮助理解。在L3级别的实践中,AI Agent可以在研发流程中承担的范围包括:从需求解析开始,把非结构化需求描述自动拆解为功能任务,根据任务描述搜索相关代码库获取上下文,生成对应的代码改动建议,接着自动运行相关测试并把结果反馈回Agent自身,如果测试失败还会进行一轮调试和修复尝试,最终生成包含变更说明的合入请求。
这个流程的完整性和复杂度远不是L2那种单点式的AI检查能比肩的。核心差别在于“状态传递”和“上下文维持”——AI Agent不像L1/L2那样只处理一次输入,而是要在整个任务链条中记住前面步骤的结果、分析中间失败的原因、动态调整后续策略。这实际上已经像一个初级研发工程师在工作,只是它的执行速度比人快很多,并且绝对不会因为连续加班而状态下滑。
对于C++项目来说,L3的落地难度要高于脚本类语言。原因在于C++项目的编译过程、依赖处理、模板元编程、跨平台条件编译,都是AI Agent难以独立处理的复杂语义。一个C++ Project往往涉及大量Makefile/CMake配置,包含了各种编译器标志、平台分支、外部库依赖,AI如果对这些上下文没有完整掌握,生成的代码非常容易在编译阶段崩溃。所以,L3不是单纯上一个AI Agent框架就能完成的,需要组织提前建设好代码库的语义描述层,即让AI能“看懂”项目的构建结构和模块依赖关系。
2.4 L4 组织重构:以人机协作为中心的研发模式
到了L4阶段,变化的焦点已经不再仅是技术和工具层面,而是深入到组织模式。这个阶段的团队不再把AI视为工具,也不会把“人+AI”视为临时组合,而是从流程设计的起点就将人机协作作为默认工作方式。开发者在设计阶段就考虑“这个任务适合交给AI还是适合自己做”,而不是“让AI帮我做点什么”。
L4的一个典型特征是角色边界开始模糊。传统研发中的“开发”“测试”“运维”已经不再像过去那样按照职责严格分工,而是由“人机协作小组”来组合完成一项端到端任务。比如一个三人编组的团队,可能是由一个工程师负责整体架构决策和最终代码审查,两个AI Agent分工负责代码生成和测试验证。工程师的角色不再是标准的“写码人”,更像是“AI研发流程的监督者和决策者”。
组织重构带来的直接变化是,研发效能指标体系的彻底重写。过去我们评估一个团队,会看代码行数、提交次数、缺陷率、交付周期等指标。这些指标在L4阶段依然有意义,但权重完全变了。更重要的是——AI参与比、人机协作效率、Agent产出质量、跨环节自动化完成率等新的指标浮现出来。有分享嘉宾给出的一组数据让我印象很深:进入L4左右的团队,研发周期平均缩短约40%到60%,但同期的工程师需要从关注“编写”技术转型为关注“定义和评审”能力,否则会主动或被动地掉队。
2.5 L5 原生重构:AI定义问题,AI驱动决策
L5是我个人认为目前还非常前沿的阶段,也是真正配得上“AI原生”这个词的最高级形态。在L5阶段,AI参与软件研发的方式从“执行层”上升到“决策层”,从“解决问题”升级到“定义问题”。
在L5理念中,AI不再只是帮你写代码、查缺陷、跑测试的帮手,而是能够参与产品需求的澄清和系统架构的约束条件梳理。组织站在L5的视角来做研发,意味着业务方提出的一个宽泛目标(“希望系统能更稳定支持短视频业务增长”),经过AI的分析和反哺,输出一系列产品假设、技术边界、资源评估、里程碑规划,然后由人与AI共同评审并确认路线图。
实现L5的前提,是组织积累足够规模的“研发知识资产”——不是简单的代码库,而是关于项目的一切决策记录、设计约束、历史变更原因、架构演进逻辑等。AI要能在这个知识层上进行推理,而不是凭着通用知识库“空对空”地提建议。这就牵扯到长期的数据积累和知识工程,是一个没有快速捷径的方向。
有意思的是,L5并不一定适合所有团队。对于产品形态高度稳定、需求输入非常明确的业务,L5的复杂推理能力可能是过度的;但对于探索型业务或者系统复杂度极高的领域,L5的潜力非常巨大。分享者也直言,目前真正达到L5状态的团队几乎没有,大多是在某些核心模块上实现了局部原生重构,离全局仍有一段距离。
3. 关键能力域拆解:演进不能只是“换工具”
以上提到的L1到L5,不是一个自动推进的过程。从某个层级向更高层级跃迁,需要多个关键能力域同步升级。这次的分享中专门花了相当篇幅来讨论这些能力域,我认为对于任何想推进AI原生研发的团队,这部分都是最值得深入的。
3.1 数据与知识资产:从个人经验到组织知识库
这是我认为最容易被低估、实际上又最具决定性的能力域。很多团队在AI原生转型时,第一反应是“选个最强的模型”或者“上个最聪明的Agent框架”,却忽视了:你的研发数据资产能不能支撑这些AI工具做出高质量决策?
举个具体的例子。如果团队希望AI能自动分析过往线上故障并提供修复建议,那么AI需要访问到的数据内容包括:历史故障描述、根因分析报告、对应代码变更、测试复现脚本。这些数据如果散落在邮件、本地文档或某个人脑子里,AI就完全没有办法产生可靠的建议。AI能够调用的上下文空间,直接决定了它产出的质量上限。
对于C++这种以复杂性和长历史著称的领域来说,这个问题尤其突出。大型C++项目往往有多年的演化历史,大量“当初为什么这么写”的判断全部散落在老工程师的脑子里。如果不把这些知识沉淀为结构化文档、决策记录和架构约束描述,AI生成的代码即使看起来合理,也很可能会违背一些隐性约束。所以,我在实际操作中特别建议团队优先建设一个“决策记录库”,把每次重要技术选型、每次关键模块重构的原因和取舍过程都整理进去,让AI在生成建议时能有据可依。
3.2 工具链与基础设施:不是简单装个IDE插件
第二个关键能力域是工具链与基础设施。这一块做到什么程度,直接决定了AI原生研发的模式能不能跑起来。
很多人理解的“AI工具链”就是改造IDE、接入模型API、写几个自动化脚本,但L3往上的演进完全不是这个量级。在L3/L4层级,AI Agent需要与多个系统深度交互并且进行状态往返:要与代码仓库打交道、执行构建任务、获取测试报告、提交变更、访问文档库。这意味着工具链的核心不是某个AI模型本身,而是围绕模型建立的“编排层”。
我把这个编排层理解为AI研发时代的“操作系统”。它负责调度AI能力、管理任务状态、维护上下文、连接各类研发系统。没有这层设施,AI永远只能是无数个孤立的点,无法成为贯穿流程的线。对于C++团队,这套基础设施还有额外的硬性要求——要和现有的CMake构建链、多平台交叉编译环境、本地化测试资产无缝衔接,整合程度一旦不足,就会严重制约AI能处理的任务上限。
另一个值得注意的基础设施问题是计算资源。AI Agent执行任务的消耗远大于单次代码补全,特别是多个Agent并行运行时,对GPU推理资源、CPU构建资源、存储资源的需求会成倍上升。很多团队在试点阶段用少量人力可以勉强运转,但一旦推广到整个研发部门,基础设施跟不上就会导致严重的任务排队和超时,使用者体验直线下降。
3.3 流程与度量:需要新的研发效能指标
第三个能力域是流程与度量。传统软件研发有一套成熟的度量体系:迭代速度、缺陷逃逸率、构建成功率、部署频率等。但在AI原生研发模式下,这套体系需要做重大调整,例如新增对AI行为本身的度量。
我在实际推进中常被问到的一个问题是:“怎么知道AI到底有没有帮到团队?”如果只看开发者的主观感受,样本量小且不稳定。比较靠谱的做法是分层度量:在产出层,看AI生成的代码被采纳率、被回滚率、引入缺陷率;在流程层,看AI Agent接管的步骤比例、从开始到完成的自动化比率、人工干预频率;在组织层,看交付周期变化、跨团队协作成本、知识共享效率。
这组指标的落地需要流程设计的配合。只有当AI行为被嵌入到可追踪的流程节点中,度量才能自动化进行;如果AI的使用仍然停留在个人工具层面,缺乏统一出入口,想度量就只能靠开发者自查,既不准确也带来干扰。因此,流程设计要从“纪律优先”转向“资产优先”——一切人机交互过程尽量留下可追溯痕迹,为后续的持续优化积累数据。
3.4 组织与人才:AI时代的角色重塑
最后一个能力域是组织与人才,也是最需要投入耐心的地方。我对峰会分享中一张图记忆尤深:传统的研发组织架构是层层分级的流水线模式——产品经理定义需求,架构师设计方案,开发工程师编码,测试工程师验证,运维工程师部署。在AI原生的研发模式下,这种漏斗结构正在被压扁,取而代之的是一种“人机协作网络”:产品、设计、开发、测试、运维的边界模糊化,大量中间环节被AI接管,人的角色越来越聚焦于定义边界、做出决策、处理异常。
这种转变对工程师的冲击是实实在在的。如果C++工程师还把自己定位成纯粹的“编码者”,在AI原生模式下,生存空间会被压缩。但换个角度想,如果能把精力转向更深层的系统设计、架构权衡、代码评审判断、性能调优策略,AI反而把工程师从重复劳动中解放了出来。
我观察到成功的转型团队有一个共性:管理层没有简单下达“所有人都必须学会用AI”的通告,而是提供了一个“角色地图”——说明每个岗位在AI原生模式下有哪些增值工作可以承接。工程师看到的是具体的职业发展路径,而不是悬在头上的技术威胁,配合行动力和主动探索的意愿就会明显不同。
4. 演进路径与落地节奏:千万不要一步登天
有了模型和关键能力域的坐标图后,更现实的困惑是:我们团队到底该怎么从现况开始一步步向前演进?峰会的分享嘉宾给了相对务实的建议,结合我自己在团队内试点的经验,这部分直接说操作层面的内容。
4.1 渐进式演进路线图
演进的第一原则是“分段推进,快速见效”。不用一上来就追求L4甚至L5的大规模重构,那在多数情况下不现实。比较稳妥的做法是:先找到两三个适合AI深度介入的研发子领域,用小团队快速试点,验证模式后再横向推广。
以某中型C++团队为例,当时选了三个板块作为试点。第一个是自动化测试用例生成,针对核心模块的单元测试覆盖严重不足,人工补测试速度太慢的问题。第二个是代码评审辅助,AI在每次合入时自动生成变更影响面分析,减少评审人员的上下文切换成本。第三个是构建失败辅助诊断,CI上经常出现各种环境依赖问题,每次都要有经验的工程师去手动排查,让人很头疼。
这三个试点分别对应了L2(测试生成)和L3的初级形态(评审辅助、诊断辅助)。在试点阶段,关键动作是明确期望值:不追求AI一次做对,而是追求AI能把“从人处理统一下降到人确认+例外处理”的工作模式跑通。三个月后,这三个试点的效能数据都远超预期。测试生成将核心模块覆盖率从35%提升到了72%,AI生成用例的采纳率接近八成;评审辅助让单次合入的平均评审时长减少了约44%;构建诊断辅助把常见的依赖类问题自动解决率稳定在了60%以上。
前期小结:这个阶段性胜利不是AI模型的胜利,而是演进策略的胜利。团队没有试图将AI一次性嵌入所有流程,而是精准选定了高价值、低摩擦的应用场景,让研发团队在日常工作中自然体会到AI带来的改变,降低认知抵触,同时积累了宝贵的工程经验和知识资产。
4.2 演进中的陷阱与取舍
演进过程不会一路顺畅。以下几类陷阱是我在实践和观察中频繁遇到的,在这里整理出来重点提示。
第一个陷阱是“模型迷信”。很多团队把AI原生转型简化为“换一个更强大的模型就完事了”。但实际上,模型能力只是整个链条的一环。即使模型本身很强,如果上层的任务编排、上下文管理、数据接口不正确,产出质量依然会达不到可用水平。我见过不少团队在尝试新模型后,初期效果显著提升,但很快趋于平缓,根本原因在于模型外层的工程配套根本没能跟上模型能力的增速。
第二个陷阱是“过度自动化”。随着试点逐步成功,团队就按捺不住想把所有环节都交给AI,这实际上是危险的。尤其在工程设计环节,有些决策的价值只有在长期系统演进中才能被充分体现,是基于经验、业务理解和系统整体性的综合判断,当前AI还远不具备独立处理这类决策的能力。盲目自动化会带来一种“隐性技术债”:表面上交付速度变快,但系统的长期健康度正在悄悄下降。
不客气地讲,最健康的节奏是“部分自动化+完全可观测”。对于建议类和初稿生成类工作,放心大胆交给AI;对于决策类和最终确认类工作,保留人工审批的关键节点。让AI参与并提供数据支撑,但人的判断始终在关键节点留下明确的责任印记。
第三个陷阱是“指标幻觉”。有的管理者会用AI代码占比、AI生成行数等表面指标来衡量团队AI应用成熟度。但实际上这些指标的高低与研发效能并不直接相关——有人用AI生成大量无关紧要的样板代码,指标自然高,但对业务贡献很低。我建议把核心指标聚焦到端到端交付效率和缺陷密度上,只有把AI放在业务结果这个放大镜下检验,才能看清真实贡献。
5. 一次实战评估体验与关键收获
在峰会后的圆桌交流环节,我参与了一个小组讨论,主题是“如何将成熟度模型落地到实际团队”。趁着讨论热度,我把这套模型带回团队内部做了一次正式的评估演练。这个过程本身也很有启发。
5.1 对某中型研发团队进行成熟度评估的过程
我们选取的是一个约30人的跨平台C++ SDK研发组,业务复杂度比较高,有较长的历史包袱,但团队整体技术氛围积极,对AI工具接受度尚可。评估的第一步,先是解码各个研发角色的现状,方法是通过访谈+工作流追踪。
结果显示:大部分工程师在IDE中重度使用AI编码辅助工具,至少在L1到L2之间——说L1最稳妥,因为AI没有进入流程;部分工程师会主动用AI帮做设计文档初稿和代码解释。持续集成流程中已经引入了一个AI代码扫描工具,满足L2部分的特征。但全流程级别的AI参与确实还不存在,也谈不上组织级的人机协作模式。综合来看,这个团队整体落在L2偏上,有一些向L3过渡的苗头。
评估最有价值的产出是发现了两类显性短板。第一类是知识资产沉淀严重不足,绝大多数核心设计决策的上下文只存在于两三位资深工程师的头脑中,AI能获取的结构化知识极稀缺。第二类是流程弹性不够,现有研发流程的节点设计偏刚性,当AI介入时会在任务交接、审批、反馈环节形成大量摩擦,AI的速度优势被组织的流程延迟抵消了大半。
5.2 四个关键问题带来的启发
在评估基础上,我们总结了四个后续行动中最值得回答的问题,分享给大家。
第一问:你的团队最需要AI解决的瓶颈,是效率问题还是能力问题?如果是效率问题,L2/L3级别的流程嵌入就能有显著回报;如果是能力问题,可能需要上升到L4级组织重构,引入更根本的模式变革。
第二问:你的研发流程为AI留出了多少上下文空间?很多项目的任务描述、设计文档、测试策略都碎片化严重,AI根本无法获得完整决策上下文。不先解决这个问题,更高层级的演进无从谈起。
第三问:你是否有足够的数据来度量AI带来的真实变化?如果没有,AI投入就变成了一个说不清楚回报率的黑箱。从试点第一天就同步建立度量基线,这是我一直坚持的原则。
第四问:团队内的资深工程师是否已经从“写代码的人”转变为“定义代码和验证代码的人”?如果资深工程师还在跟AI抢编码的速度,说明组织的分工模式还没有真正切换到人机协作的节奏上。
5.3 关于“2”的接续:从评估到实践的桥梁
回到这次分享的主题,它标注为“2”,这个续篇与常规意义上的系列讲座有所不同。如果说第一部分的重点是把模型讲清楚,这一次更侧重从评估到落地之间那个容易被忽视的环节:模型差距分析和实践路径设计。
我个人收获最大的点是,演进不是自动发生的。即使团队已经了解了成熟度模型,也清楚自己处在L2,距离L3的核心差距到底是什么,依然需要靠细致的能力域诊断来回答。这就是为什么我认为能力域拆解的章节,含金量甚至高于五级模型本身。
用一句我在会后与同行交流时重复的话来概括这个心得:模型给你地图,能力域给你路标,试点给你引擎。三者齐备,才谈得上真正的AI原生演进。
搁笔前,我还想分享一个小建议:在当前阶段,你的团队如果刚开始推进AI原生转型,不必对L3/L4抱有过多执念。把L2真正做实,让AI在持续集成、代码评审、测试生成这些具体环节里稳定地产生效用,沉淀知识资产,已经能拉开与大多数团队的距离。先在一个方向上做到位,再逐步推开,比漫无目的地追高水平概念要稳得多。这也是我参加完峰会后最想传达给同行的一句话。