AI新时代,软件产业的生态会有什么样的变化?
软件工程是一门研究用工程化方法构建和维护有效、实用和高质量的软件的学科。软件架构是指导软件系统设计的抽象模式集合,其设计目标包括可靠性、可扩展性和可维护性。
为什么会有软件工程和软件架构?
根源是软件太贵,按照经典的开发方法,每千行代码(KLOC)的成本大约为2~6万元,每个功能点(FP)的成本大约是4~12人时,500~2000元。一个小型的系统大约100~200个功能点,成本在10~30万。

并且软件似乎一直是贵的,以KLOC来看,20世纪80年代是20~60万/KLOC,90年代是8~20万/KLOC,进入千禧年是3~8万/KLOC,现在是2~6万。40年的时间,经过软件产业的不懈努力,开发成本下降了一个数量级。但依然是贵的,贵到远远高于消费者拥有的门槛。再考虑到软件全生命周期维护成本与开发成本之比通常为2.5~3,拥有单个小型系统的全生命周期总成本TOC就会在25~90万。这比一个家庭购置一台小汽车还贵。
软件的贵,才使得软件工程、软件架构有价值,也使得软件工程师成为了一个炙手可热的职业。因为贵,才形成了当前的软件生态和格局——即软件由企业开发和拥有,并提供维护,个人被授权使用。我们在电脑上、手机上经常使用的每一个软件都不是我们个人所开发拥有的,即便我们付出了昂贵的价格所购买的软件,也不是我们所拥有的,而通常是一个使用授权。
那么AI新时代下,如果软件的开发成本再下降1个、甚至2个数量级,即小型的系统开发成本为1~3万、或者0.1~0.3万,TOC下降到2.5~9万、或者0.25~0.9万,软件产业的生态会发生什么样的演化呢?
软件产业总规模增长至少一个数量级。引用红杉合伙人Pat Grady的演讲内容:整个软件的全球潜在市场(TAM)从2010年约为3500亿美元增长到2025年的约6500亿美元。随着拥有软件成本的下降,软件的普及率会随之提升,当TOC下降到1万美元门槛,其普及率可以与汽车类比——全球汽车保有量为14亿+辆——可以预期有10亿+客户,也就是有10万亿+美元的TAM。当TOC下降到1千美元门槛时,其普及率可以与手机类比——2025年初这一数字已跃升至74.2亿部——可以预期有50亿+客户,仅开发、维护服务的TAM依然是当前的10倍。
强中介、弱供给、弱需求,发展为强需求、强供给、弱中介。当前软件生态是一个强中介的状态,中介利用其所拥有的软件控制了供给端的被看见(曝光)来超额获利,需求端让渡了隐私和数据来获得名义免费/优惠服务。需求和供给端的平均匹配效率并未受益于软件技术带来的红利,反而是进入了中介设计的斗兽场规则下的囚徒困境——有渺茫的升天希望,却是平均要付出生命的代价。需求端拥有软件,将获得直接与供给端连接的能力,并具有经济性。需求端拥有软件,也为数据和隐私的保护构建更清晰的边界。
软件行业从重开发,向重维护转变。软件开发的成本极低,速度极快,而使用、维护、调整、优化、功能演进等将伴随整个生命周期,直到被废弃或者重构。维护过程中的随用户当时需求而进行的程序修改和调整的频度将远远高于现行的ITIL和ISO20000体系所设定的目标场景。
夜雨聆风