AI时代,软件开发本质是否改变?
近两年来,AI在软件领域的热度持续攀升。开发人员既在关注各类功能日益强大的工具,也在利用AI来增强个人的工作效率。从局部视角看,这种变化显而易见;然而若置于企业级软件开发流程中审视,AI对整体效率的提升却并不明显。
这种现象确实值得深思。如今AI辅助开发已不鲜见,众多团队已在工作中不同程度地应用它。有人用其辅助编码,有人用于测试,有人整理文档、分析需求、梳理信息或制作原型。对个人而言,这种辅助十分直接,许多原本耗时的工作如今能更快搞定。
然而,若将视角从个人工作体验转向企业级软件交付流程,情况便复杂得多。一个需求从业务提出,历经分析、设计、实现、测试、验收直至上线,往往要跨越多个角色、系统和团队间的协作链条。纵观全程,虽然AI显著提高了局部工作的执行效率,却并未带动整体交付过程的同比例提速。
为何如此?若深入探究,会发现软件研发的本质或许并非大多数人直觉中的“编码”,而是一个将业务持续转化为软件表达形式的过程。在此过程中,关键不在于代码生成本身,而在于知识如何在不同角色间被理解、传递、校准,并最终沉淀为可运行、可验证的软件行为。
AI在软件研发中的价值,核心体现在执行层面。
当问题界定清晰、目标明确、输入充分且规则边界完整时,AI对执行动作的提效非常直接。无论是实现、测试、分析、设计,还是文档处理,只要问题本身足够清晰,AI的效率优势便十分突出。
若借助Cynefin框架来理解,此事便更易阐述。对于Obvious类问题,因果关系清晰、处理方式明确,AI天然适配;对于Complicated类问题,只要能拆解问题、阐明规则,AI同样能提供强大支持,甚至直接产出交付级成果。
但软件交付并非仅由这两类工作构成。影响交付效率的许多环节其实属于Complex范畴。它们无法在初期完全定义,诸多理解需在协作中逐步澄清,诸多问题只能在推进中不断暴露与修正。因此,尽管AI大幅优化了执行层动作,这并不代表整个软件交付系统能自然同比例提速。
软件交付绝非简单的流水线,而是一个跨角色协作与持续校准的过程。
业务想法提出后,通常需经历需求分析、方案判断、实现、验证及验收等多个环节。每前进一步,都依赖前一环节传递的理解足够准确。在此过程中,真正消耗时间的往往不是“谁做得慢”,而是“大家对得慢”。
这也是软件研发中最核心且易被低估的成本:知识传递成本。
需求从业务意图到最终系统行为,中间通常经历多次翻译。业务诉求转成需求定义,需求定义转成方案判断,方案转成实现代码,实现结果转成验证场景,最后通过验收判断是否满足业务目标。每次翻译都可能产生偏差,若某环节理解不准,后续工作做得越快,可能只是越快传递偏差。
团队自然意识到了此链路的低效,故近年来一直在尝试缩短它,甚至有些做法已达极致。例如,BA与Dev直接与业务沟通需求,聊透后直接进入代码实现与自动化测试,尽量减少中间环节的传递损耗。此方向合理,本质是用更短链路换取更少理解偏差。
但问题在于,软件交付的低效不只源于角色拆分。受限于传统流程约束,许多沟通、协调、确认、验收工作仍需专人完成。更关键的是,复杂部分常出现在系统集成和多方协同中。若功能涉及多系统、多团队、多职责边界,问题便会迅速复杂化。时间、目标、方案对不齐,叠加人员轮换、组织调整、上下文缺失,整个交付过程将极为低效。
很多时候,非个人不会做,也非代码写不出,而是多方协同无法在同一时间窗口内形成高质量共识。此类问题难仅靠AI执行能力解决。因其核心不在于生成代码或自动化测试,而在于如何达成一致、拆分责任、处理依赖、校准方案。这些本质属复杂协作问题,非单点执行问题。
故AI为何未让整体交付同比例提速?因其主要提升局部环节执行效率,而软件交付真正系统性瓶颈,常在于跨角色、跨团队、跨系统间的知识传递与协同对齐。
若将软件研发理解为“把功能写出来”,AI确实改变了许多工作方式。但若理解更完整,会发现coding只是其中一环,且未必是最难的一环。
软件研发真正做的事,是将业务世界的目标、规则、限制和例外,持续翻译成软件系统的结构、流程、状态和行为。代码只是承载这些内容的表达形式,而非研发活动本体。
真正困难之处,常在coding之前,也在coding之外:业务目标为何,边界条件如何定,多系统职责如何分,方案为何这样设计,何为真正满足业务预期。若未想清,coding再快也无意义。因最终产出可能只是实现完整但方向错误的系统行为。
此角度看,软件研发本质非简单写代码,而是持续知识转换过程。业务知识需抽象,需求需澄清,方案需校准,实现需验证,最终才能变成真正可交付软件行为。决定交付效率质量的,非单点动作多快,而是整条知识转换链路是否顺畅、准确。
两年来观察AI辅助软件开发,最大感受是:它确实显著改变了执行层效率。
但深入看,会发现企业级软件交付未因执行变快而自动成高速通道。因研发不只写代码,而是持续将业务知识转软件表达。此过程最昂贵处,非生成代码本身,而是知识在不同角色、团队、系统间传递的损耗。
故若问AI时代软件研发本质变否,答案:变的是执行层,不变的是本质。AI正让coding越来越便宜,但研发中真正昂贵部分,向来是知识传递。
注 本文由我与 Codex 协作完成,配图使用 Gemini 生成。