国产软件如何突破基础开发工具的困境?

发表时间: 2022-12-28 10:56

提到科技领域的“卡脖子”,很多人会想到“缺芯少魂”。“芯”指芯片,“魂”指操作系统等核心基础软件。长期以来,我国在核心硬件生产、基础软件开发等方面高度依赖国外技术,技术安全不容忽视。


近年来,在“缺芯少魂”四字背后,更让产业界担忧的是,一些科技创新的底层基础工具也存在被“卡脖子”的风险。EDA禁令就是一个典型例子。2022年8月,美国商务部发布规定,对设计GAAFET(全栅场效应晶体管)结构集成电路所必需的EDA软件实施出口管制。GAAFET EDA软件是实现3纳米及以下制程的必要工具,虽然我们芯片成熟制程仍未到3纳米,但这一禁令对未来中国芯片自主化和高端化发展无疑是沉重一击。


在复杂的大国博弈中,科技封锁已经从软硬件技术和设备渗透到基础工具层面。如果说,EDA禁令更多影响的是芯片产业的未来,那么在软件基础工具层面,软件开发工具一旦被“卡脖子”,则会立竿见影地影响软件产业发展。


顾名思义,软件开发工具就是帮助人们开发软件的工具,是支撑从需求规划、开发、测试、发布的软件全生命周期的必备工具。现代化软件开发是一套标准化流水线,如果把其比作一个现代化的港口,各类软件开发工具好比起重机、龙门吊、疏浚船、装卸中心等现代化设备,一旦软件开发工具被封锁断供,港口将退回到人工手拉肩扛的原始阶段。


在中国软件业蓬勃发展的今天,“缺芯少魂”已经成为大众话题,而软件基础工具的“卡脖子”风险则更像是巨大的灰犀牛,无疑需要业界重新思考与认知。



中国软件产业:繁荣背后的“无根隐忧”


如果把中国软件产业比作一棵树,在过去20年间,这棵大树迎来了迅速生长,枝繁叶茂。


据《人民日报》报道,2012年到2021年的10年间,我国软件产业收入从约2.5万亿元增长到约9.5万亿元,年增长率为16.1%。


软件产业规模增速看,中国软件增长速度足以傲视全球。根据工信部统计,从2000年至2020年,中国软件市场整体规模实现了135倍增长,美国为3.2倍。2020年,中国软件产业规模在全球软件产业的占比已达24%。


然而,数据繁荣的背后,是软件产业这棵大树的根系孱弱,自主创新起步仍然十分艰难。


长期以来,软件开发工具市场始终被欧美国家把持。中国软件协会的调研数据显示,2020年,在全球操作系统、基础软件(含桌面、数据库、云操作系统、工具软件等)领域,美国业务收入占到全球的五分之四。


根据The Express Wire发布的2022年软件开发工具市场分析报告,全球软件开发工具市场中,北美地区市场份额超过50%,欧洲地区超过20%。全球前十大软件开发工具厂商中,有6家是美国公司,其中不乏Microsoft、Perforce、Adobe、Oracle等知名公司。


正如光刻机是芯片产业不可或缺的关键生产工具,软件开发工具就是软件产业的根技术。它可提高软件开发的质量和效率,从软件问题定义、需求分析、总体设计、详细设计、测试、编码,到文档的生成及软件工具管理各方面,对软件开发者提供各种不同程度的帮助。


软件开发工具种类繁多,包括项目管理工具、代码托管工具、代码检查工具、编译构建工具,以及部署、测试和发布环境的工具。每一类工具都聚焦解决软件开发流程中特定的问题。比如,项目管理工具让开发团队能够高效协作,代码托管工具解决开发者在跨地域协同、多分支并发、代码版本管理等方面的问题,自动化软件测试工具可以代替部分人工输入,提高测试效率。


在全球化时代,中国软件产业的高速发展,很大程度上受益于数字经济的“全球技术红利”。在发展的风口上,“造不如买”、“没必要重复造轮子”的技术观点,在市场上也有一定的适用空间。


如今,随着国际科技竞争、产业技术摩擦的日渐激烈,逆全球化势力不断抬头,如果再不重视技术自主创新,再把产业建立在不受控制的外部技术根基上,则无疑将对未来的进一步发展产生影响。


以软件开发工具最基础的IDE领域为例,目前IDE领域已被多家国外软件巨头垄断,如Visual Studio、Jetbrains。IDE是集成开发环境,是把代码编写、编译、执行等多功能综合到一起的开发工具。过去,全球开发者基于微软生态的Visual Studio、VScode等软件开发工具,将开发代码贡献至Github平台,在微软生态不断开发大量应用软件,进一步强化了微软等国际巨头的市场垄断。


目前,微软有9000万的开发者,为微软生产了3800万的应用,而国内仍尚无可与之匹配的工具链产品,更遑论生态。在欧美软件巨头持续扩大垄断优势的背后,是国产软件生态始终被压制的发展“天花板”,也是国产软件繁荣背后的“无根”之痛。



基础工具断供的“达摩克里斯之剑”


软件开发工具一旦被封锁断供,危害有多大?


每一家软件公司和大型企业开发团队都离不开软件开发工具。当前,国内企业的普遍选择是直接购买欧美的商用开发工具。市场上部分可替代选择的国产软件工具,往往也依靠国外开源技术进行包装和“二次开发”。


业内专家指出,参考芯片EDA软件“卡脖子”的先例,不论是购买商用工具或基于开源自建,这两条道路其实都是“看起来很美”,实际风险仍然危机重重。一旦受到国外制裁,国内大量企业、研发团队的软件开发、迭代、更新和运维都会受到巨大冲击,乃至停摆。其中,小到信息管理类工具,如需求管理、测试管理;大到代码仓、制品仓、检查等与出包强相关的工具,被制裁的风险都不容忽视。


为此,业界亟需明确两大共识:


首先,商用版本不等于“无风险版本”。


事实证明,ICT技术商用版本的制裁,往往是国际经济摩擦中最常选择也最容易执行的手段。以美国为例,因美国商务部等发布的对外出口管制政策,从2019年至今,已有超过600家中国企业、机构陆续被列入美国“实体清单”,涉及清单的所有企业则不再有权获取美国提供的各类商用技术。


以华为为例,自2019年5月16日华为被列入“实体清单”以来,所有的美国软件都即对华为断供,其中既包括ERP等核心应用软件,也包括操作系统、数据库、中间件、开发工具等基础软件。比如,在美国2020年5月颁布的禁令中,就明确地要求全球各大芯片制造厂禁止为华为生产用美国软件设计的芯片。也就是说,只要芯片代工厂还在使用美国软件,就不能为华为生产芯片。


商业制裁的风险,连“学术无国界”的高等院校也不能幸免。2020年,哈尔滨工业大学、哈尔滨工程大学被美国软件MATLAB“断供”。不仅软件无法使用,学校师生还不能在公开发表的论文中出现任何使用MATLAB得到的图表与数据。MATLAB有着“工科神器”之称,其在工科领域广泛应用,涵盖数学计算、建模仿真、电子通信、机械化工、汽车航空、电力能源、经济金融和生物医学等学科。


其次,开源技术并非“完全中立”。


开源已经成为软件开发的主流趋势之一。然而,越来越多的事实与先例也正警示着业界,开源工具、开源平台与技术,在政治与经济面前往往难以保持中立,开源也随时可能成为科技制裁的武器。


以全球最大的代码托管平台GitHub为例,GitHub目前汇聚了全球3亿个代码仓库,占全部开源软件的90%。但作为一家美国公司,俄乌冲突期间,GitHub已明确向俄罗斯开发者举起封禁“手术刀”。2022年上半年,俄罗斯银行Sberbank、俄罗斯最大的私人银行Alfa-Bank和其他公司的账户率先遭到GitHub封禁,这些企业账号先后经历了禁用代码存储库、账号直接被平台删除等。此后,与受制裁实体有合作关系的个人开发者账号、以前或现在在受制裁实体有工作经验的个人账号都惨遭封禁。


就封锁俄罗斯开发者账号一事,GitHub曾表示:“与在美国开展业务的任何公司一样,GitHub可能必须限制被认定为特别指定国民(SDN)或根据美国和其他适用的制裁法律被拒绝或被阻止的用户和客户,或者可能代表被阻止使用GitHub的用户和客户团体。”


“同时,GitHub的愿景是成为开发者协作的全球平台,无论开发者居住在哪里。我们会彻底审查政府制裁,以确保用户和客户不会受到超出法律要求的影响。”


专家认为,不论是商用工具软件或者是开源技术,对国产软件产业发展而言都是一把“双刃剑”。从长远来看,只有打造国产自主的软件生态,才能真正打开我国产业发展的上限空间。



培育一片森林,最好的时间是现在


科幻小说《三体》中,三体人通过对地球文明的基础科学进行封锁,将人类科技的发展锁死在低级阶段。在当前的国际竞争中,科技创新领域的“卡脖子”则并非牢不可破的科幻传说,破解之道,核心在于加快自主创新。


当前,全球软件产业的商用工具、技术标准、技术演进趋势等基本都由欧美企业把持。“冰冻三尺,非一日之寒”,从开发工具,到操作系统、数据库、中间件,美国软件企业对根技术的研发由来已久,软件产业的根系非常坚固。而中国的软件产业经过多年发展和追赶,已基本构建了相对完整的结构脉络,但总体仍十分孱弱。


近年来,随着中兴、华为事件和中美贸易摩擦,越来越多企业开始走上自研创新之路,在无人区的探索中积累了宝贵的一手经验。其中,最佳的观察样本无疑就是华为。


2019年之前,华为公司的软件工具多采用“购买+自研”模式,开源软件、商用软件、自研产品并存。为破解软件开发工具 “卡脖子”风险, 华为于2019年开始进行去美国化自研,范围涉及硬件(X86->ARM)、操作系统(Linux/Windows->欧拉)、数据库(Oracle->GaussDB)、中间件、应用软件改造等几个大类的全栈自研替换,涉及几百个组件的替换,千万行代码的测试验证。


历经3年,在软件开发工具领域,华为已全部实现去美国化。同时,开源软件依赖也具备自主演进能力,消除了软件供应链风险。


实际上,软件开发工具的自研不可能一蹴而就,华为也是如此。如果回顾华为软件开发工具的自研时间表,从第一行代码的创新到今天完全“去美化”的成熟产品矩阵,华为投入的研发时间跨度长达20余年。内部人士介绍,早在2000年左右,华为就因自身业务快速发展,开始加快软件研发工具的自研,这些研究构成了现在完全自主可控的基础。


由此可见,华为是极少数拥有底线思维的企业,类似的还有海思芯片。多年前,华为做出过一次极限生存的假设,“预计有一天,所有美国的先进芯片和技术将不可获得”。从这个“永远不会发生的假设”为起点,早在2004年华为就成立了海思半导体,为公司的生存默默“打造备胎”。后来假设成真,海思也从备胎“转正”,成为华为自主研发的标杆之一。



如今,在软件开发工具领域,经过漫长的技术迭代,华为逐渐形成了CodeArts软件开发生产线,可以支持web开发、移动应用开发、微服务开发、Cloud Native应用开发、嵌入式开发等典型研发场景。


在代码仓、制品仓等核心开发工具方面,华为开发工具性能已达到或超越国际同行水平,可实现完全替代美国产品。对于新生的产品,超大规模复杂业务的验证是最有力的证明。“自己的降落伞自己先跳”,作为业务遍布全球170多个国家和地区的科技集团,软件开发工具好不好用,要先过华为自用这一关。


目前,CodeArts已经过华为云、华为电信产品、终端云消费业务、芯片研发等业界高标准、大规模的软件研发业务严苛考验和工程应用。这些底层开发工具,不仅在华为内部实现了完全替代,而且成功溢出到外部市场。目前,华为云软件开发生产线CodeArts已吸引来自政府、金融、教育、物流、软件等十多个行业百万级使用者。


在软件开发领域,华为还不断针对细分领域推出基础工具。比如软件研发管理与团队协作工具华为云CodeArts Req,面向企业大规模研发场景,已全面覆盖华为公司云、管、端、车、芯等相关产品的研发,实现月API调用量超过15亿次、累计管理5000多万需求。


从华为的例子不难看出,国产软件产业要实现根技术的突破,必须走自主研发的道路,实现原创新突破。而且不能再有任何犹豫等待,“卡脖子”危机就是最好的机会,现在就要开始出发。


根深才能叶茂,只有将软件根技术的创新掌握在自己手中,才能构建产业持续发展的基石,继而使能上层应用软件百花齐放。如果说,过去十年中国软件产业借助西方成熟的根技术实现了快速追赶,那么下一个十年,我们能否摆脱“卡脖子”危机,拥有自己的硬核根技术,取决于现在如何选择。


文中图片来自摄图网


END