最近一段时间“AI 会让软件消亡”或者“AI 会消灭SaaS”的说法,让软件行业的企业家非常焦虑,我见不少国内头部软件企业的老板非常焦虑;在焦虑笼罩下,他们成天追踪市面上的各种AI 热词、时髦概念。很多软件公司看起来有 All-in-AI 的战略,实际上是完全没了方向,在一片嘈杂中随波逐流,这种情绪在公司内部造成团队的理念混乱和组织撕裂。

首先要澄清下我本文说的“软件产业”或“软件”,指的是可复制销售的标准化软件产品,包括软件包、SaaS 和平台订阅等形式。而那些针对客户需求定制化软件开发, 包括IT 外包、咨询、系统集成等,本质上是项目制的人力服务,不属于我讨论的“软件产业”范畴。我本文重点讨论企业软件,也不涉及到消费类软件。
我的观点是:
我承认AI 的代码生成能力很强大,企业用户处理信息的交互方式以及软件系统利用数据方式都因为AI 发生了巨大变化,这使得软件产品确实在其用户交互、技术架构和生产开发方式上有巨大发展。
但是,软件产业并不会因AI 而消亡,而是软件的产品形态和商业模式将发生变化。
首先,我们从软件产业的来源和商业模式本质来看,AI 会不会让软件消亡。我认为软件的本质不是一套使用计算机编程语言的代码——这些代码过去是人生成的,未来剧本都由AI 生成,而是可重复交付价值的、可复用的人类劳动的产品化。当AI 把代码生成这一层自动化掉以后,不会让软件这个概念消失,而是把“软件”的边界上移到需求描述、提示词、业务规则层。
正如我在《软件行业之父口述历史| 对中国企业软件行业的启示》《ERP 前传 | 企业管理信息系统怎么来的——《计算史》第三章》等文中所写,我们回顾软件行业的起源,软件行业是个非常年轻的行业,迄今仅有50 年历史。
在70 年代之前,计算机厂商给客户销售硬件时附带开发程序——这些程序称为软件,软件更多是厂商服务的一部分,而不是独立产品。有些用户方或者厂商的技术爱好者在社区分享程序,并没有明晰的软件商业模式。
到70年代后期,才出现“软件包”(software package)这种说法,软件作为标准化、可重复销售的商品被认可。当计算机程序可以面向多个客户复用,被打包、定价、销售和维护时,才真正被看作“软件产品”。
从计算机科学和软件工程的角度看,代码(code)只是软件的一种具体实现形式,而不是软件本身:
软件开发使用的编程语言,大致经历了从面向机器作业指令的汇编语言,到相对通用的C 语言,再到更贴近业务抽象的Java 等高级语言。高级语言本质上是对低级语言的一层抽象,最终会被编译或翻译为低级语言在计算机上执行。
沿着这条抽象演进的路径来看,如今的AI 提示词以及各类领域专用语言,可以被视为站在更高抽象层次上的一种新型编程语言。
软件的本质更在于它体现的业务规则、算法、交互逻辑,它提供的稳定行为和信息接口,软件所包含的可复用、有价值的人类劳动包含三部分:
1.对问题或业务的抽象,即理解和建模
2.对解决方案的设计,即规则、算法、交互
3.把这些抽象和设计固化成可执行的形态,以前是代码,以后可能是其他表达方式
从这个角度看,AI 把第3步大量自动化后,软件作为“劳动成果的固化物”仍然存在,只是在人类更多把精力放在第1 和第2 步,代码生成本身不再是软件的核心价值,而只是执行细节。
需要注意的是,可能有人认为当人类提出需求,AI 连第一步和第二步也都能做了——即便这样,在完成这两步时,仍然离不开人类处理软件的这些问题:
业务实现的目标权衡: 例如用软件来实现供应链计划,优先利润、合规还是客户满意度?
软件的约束确定:不能违反哪些法律、行业规范、伦理的约束,哪些风险是绝对不可接受的。
方案评估: AI 产出的业务抽象和解决方案,用什么标准好的或者可接受的?如何在AI 给出的几个候选方案之间做最终选择?
总之,未来的软件还是软件,软件的价值单元不再只是某个代码库和类库,而是包括了各种知识表现形式:提示词模板、Skills 文件、业务领域语言(规则语言、流程语言)以及各种配置、约束、策略的文档。
软件可商业化的特性是复用、标准化、具有交易价值、需长期运维,体现为稳定的服务、接口、功能,而不依赖于底层具体用C 还是Java 写。
AI让写代码的成本大幅下降,甚至自动化,然而为了让软件可复用、可监管、可维护,无论软件底层是人类手写的代码,还是AI 生成的代码,都需要:稳定的接口、版本控制、可审计的变更记录、清晰的用户责任与所有权,这些属性正是软件产品区别于临时脚本的地方。
今天,钉钉CEO 陈航的这个发言在国内行业里引发了大讨论,我的朋友中支持和反对声音各半:
陈总说软件将变成“日抛”,有两个含义,一是定制化开发软件将没有持续使用价值,二是标准化软件产品将不存在。ERP 这种企业级系统只要把用户界面交给AI,AI 就能自动把软件生成出来。
从实践来看,ERP 这类涉及到核心业务的企业级软件有两个特点:
1、数据一致性:财务报表、管理报表、监管报送,都要求指标定义跨时间、跨组织可对比,逻辑可复算、可追溯。如果软件逻辑经常由AI 临时生成,且缺乏版本治理、回溯机制,会直接破坏这种一致性。
2、合规与可审计性:在金融、医疗、能源、电信、政府公共服务等行业,系统变更本身就是受监管的对象,要有变更流程、审批记录、测试与发布记录、审计日志。用户按需让AI 写一段核心逻辑就直接上生产,不符合法规。
从主流企业IT 治理角度看,核心业务系统不适合用AI临时生成 (on the fly),这类软件也不可能“日抛”,AI 更多是介入到受控流程中的一个高效工具,而不是自由散漫的代码源。我过去有不少文章已经谈过:
不过我赞同陈航说的“日抛型软件”确实会存在,只是他拿ERP说事是一个不恰当的比方。有三类软件会大量依靠AI 临时性生成:
1、前端开发:
软件的用户界面、表单、查询页、仪表盘、操作面板等,由于变更频繁、强交互、强体验导向。对核心数据的定义权较小,更多是展示与操作层。在这里,AI 可以按自然语言需求快速生成或改造前端组件,为特定角色或小团队生成一次性的专用界面。风险可控原因在于只要前端调用的是稳定的数据与服务接口,其生成、变更不会破坏底层数据一致性和合规性。
2、数据分析型应用:
BI、数据探索、统计分析、决策优化等场景。本来就可能是一次性提数与分析。可以利用AI 直接生成查询、图表、解释,甚至生成机器学习或者运筹学算法来支持面向单次决策或短期活动的分析型应用。数据本身来自经过治理的数据仓库,AI 只是拼装分析逻辑与展示。分析层的日抛和底层数据的稳定并不矛盾。
3、临时性流程和短流程应用:
AI还会增强核心系统的外围流程型应用,例如部门专用的小工作流或自动化脚本(例如审批流编排、通知、文件处理等),小型业务运营工具(活动配置后台、小规模的计费逻辑、规则引擎外圈规则等),轻量流程工具(打卡、巡检、排班、简单质检),这些应用具有一次性使用、短生命周期的特征。但它们与核心ERP和核心流程有明显边界,不直接承载统一核算口径或强监管责任。
日抛型软件不会创造数据的业务价值,可持续积累的数据是中大型企业的核心资产,频繁变动的软件逻辑会让数据难以用于长周期经营分析,监管核查与历史重构,由于数据的特征含义反复变化,也不利于高质量机器学习建模。
哪些软件不可以用AI 生成,哪些可以用AI 临时生成,大致等于前些年数字化转型时期说的“双模态IT” 里的稳态应用和敏态应用。在云原生时代,敏态应用要不是SaaS 通过快速迭代来满足用户需求,或者就是在云平台(当时流行叫“中台”)上人写代码,现在敏态应用则是用AI 来生成代码。
实际上,软件产业属于智力创作型产业,同样生成标准型产品的智力创作型产业还有电影、音乐、文学、设计等,如果说AI 摧毁软件产业,那么顺理成章的地电影、音乐、文学、设计等产业应该也会被摧毁。
AI确实对视频、音乐、图片、文字的生成产生了革命性的作用,一方面,这些媒体内容的定制化服务机构或者企业内部的专业工作团队,确实受到了巨大冲击,
但是另一方面,销售可复制产品的电影公司(例如美国的迪士尼、华纳兄弟、环球、索尼哥伦比亚、梦工厂动画等)或唱片公司(例如环球音乐、华纳音乐等),在AI 技术和商业最发达的美国,当前业务并没有受到太大的影响,这些公司的股价也没有出现SaaS 公司那样的股价暴跌。从这个角度看,SaaS 公司股价暴跌真正原因并不是他们会被AI消灭,而是其他原因被重新估值了。
美国资本上对 SaaS 的价值重估,吓住了跟美国市场并没有啥关系的中国软件行业,也就是中国社会上的无耐心资本和不坚定的软件从业者盲目跟风而已。
夜雨聆风