本文来自微信公众号“CSDN”,作者/伍杏玲。
毫无疑问,全球科技产业正面临百年未有之大变局。自2019年华为“516”事件后,至今已有超过600家中国企业、机构被列入美国“实体清单”,覆盖领域从芯片、半导体到基础软件。紧张的国际形势背景下,“卡脖子”困境如同达摩克利斯之剑,一方面它让国内业界时刻警惕关键技术断供危险,另一方面又激发我们挺直腰板,坚定自主创新的信念。
在芯片产业链全面受阻后,我们可以看到,“卡脖子”风险仍在各领域不断延伸,科技封锁已经从软硬件技术和设备渗透到基础工具层面。不少业界人士担忧,下一步受冲击的可能即将是软件产业,特别是基础的软件开发工具。
面对时代挑战,中国软件行业是否足以抵御冲击?其自研之路如何走通走顺?国产自主创新是否不再是纸上空谈?
国产软件开发工具:自主创新势在必行
组建数字世界的庞大生态并不容易:底层是芯片,中间层是操作系统、数据库、中间件等,上层是软件应用和服务,每一项技术都联系紧密,环环相扣。
受到国际形势的影响,人们一提到攻坚的重点技术,可能立即想到芯片、操作系统、数据库等。然而,作为支撑千行百业软件应用的“生产工具”,软件开发工具在整个信息产业中的角色也十分重要,它是所有软件产品开发、设计和运维不可或缺的基础,是数字经济发展的关键技术生产力之一。
在信息技术应用创新委员会的定义中,应用软件开发平台是同云计算、操作系统、数据库一样的被定义为开发支撑基础软件,是全球化带来的科技创新共同体。因此软件开发工具实现自主创新的重要性不言而喻。
然而放眼全球,软件开发工具的市场无疑是欧美国家所垄断的“后花园”。据行业调查,微软、Jetbrains、Perforce、Atlassian、Adobe等几家国外巨头企业已占据约45%市场份额,国产软件开发工具举步维艰。
作为数字技术的“追赶者”,国内软件整体起步比西方国家晚,错过了软件开发行业标准与产品路线探索的黄金时代。在过去二三十年,行业使用的软件开发理论体系和基础工具平台均以微软、IBM、Oracle为代表的西方技术体系为主,在较长的时期内,开发者习惯直接使用国外的软件开发工具和平台。彼时与国外相比,国内软件企业总体规模小,在研发投入上与国外巨头公司相差较大,企业做产品解决方案、系统集成方案和国家项目的多,自研产品的相对来说少。
随着近几年国内开源的发展,我们迎来繁荣的软件浪潮,但其中不少的工具是通过封装开源的方式以适配企业应用场景。真正走出国门,在国际上有一定知名度的自研工具并不多。因此,一旦技术底座被制裁,相关行业标准、商用工具无法继续获取或升级,中国的软件产业将容易出现危机,无法再生产出上层丰富的软件应用,有可能阻碍数字经济的蓬勃发展。
因此软件开发工具自主化创新,势在必行。
创新仍需打开“四重门”
软件开发工具的自主创新无法一蹴而就,需要长期的人才和技术投入,还有建设相应的生态和标准,不能通过引进等急功近利的方式来解决。多位业界专家表示,我们在自主化创新路上面临以下挑战:
一是起步晚,失去先发优势。软件开发工具行业的发展具备黏性和惯性,不仅需要领先的技术,还需要建立有活力的生态。
例如,现在有一些工具使用的是10年前的编译构建技术,有值得改进优化的地方,然而由于大量的软件构建标准都是沿着该方式写的。一旦修改,意味着连带很多软件需要变动,开发者可能要花不少精力来兼容产品,然后再做创新,这个过程将给开发者带来巨大的挑战。所以大家往往宁愿将就使用,也不愿意推翻重来。这便是国产不具有先发优势所必须要承担的成本。
二是人才发展仍需久久为功。软件开发是一项生态工程、系统工程,离不开广大IT人才、开发者的支持。软件开发工具里涵盖众多根技术,如编译构建、符号跳转、传输等技术,要想实现根技术的创新突破和追赶,需要更多人才将目光放在基础学科和基础软件工具的研究上,共同为软件开发工具添砖加瓦。
三是探索建立属于自己的标准。从当前形势而言,软件开发工具的标准专利仍是被国外头部企业把持着,如果我们不能形成自己的标准、专利和规范的话,无疑随时面临被“卡脖子”风险。
四是工具需要承载真正的工程能力和工程方法。一款好的软件开发工具的使命是真正解决开发者和企业的痛点,假如一个工具有丰富的功能,但它最终解决不了企业和开发者的问题,其终将是一座空中楼阁,价值将会大打折扣。
因此开发者和开发团队需要从企业的落地场景出发,清楚知道企业遇到的问题,运用工程能力解决问题,再进一步将能力沉淀到工具里,将这一套工具加工程的方法论扎实落地。这是当前国内很多软件开发工具厂商面临的难点,不仅要成为工具专家,还要成为工程能力专家,成为工具的“教练”。
扎根筑基:国产化的硬核突围之道
尽管软件开发工具自主创新之路并不容易走,但所幸我们能够看到,华为等企业正在努力追赶。
华为内部有一句话“向下扎到根,向上捅破天”。“向上捅破天”即在尖端技术层面上完成对美的反超,“向下扎到根”即在EDA软件、软件开发工具等基础技术上,全面摆脱对国外的依赖。
2019年之前,华为公司的软件工具多采用“购买+自研”的方式。自2019年起,为破解关键技术的“卡脖子”风险,华为开始聚焦关键根技术的自主创新,开启自研之路,目前已全部实现去美国化,涉及硬件、操作系统、数据库、中间件、应用软件等五大类的全栈自研替换,涉及几百个组件的替换,千万行代码的测试验证。
华为作为中国最大的软件公司,已连续20年保持国内软件业务收入第一。目前,华为在内部已推出一系列的产品,帮助华为公司十多万研发人员在没有使用国外标杆工具的基础上,达到高质量、高效率以及安全可信的要求。
在助力中国软件产业发展时,华为深知必须要将“根”深深往下扎,方能更好地构筑创新的基石。因此在软件开发技术上,华为云推出了CodeArts软件开发生产线,覆盖需求与设计、开发、测试、部署、运维等软件交付的全生命周期环节,为开发者打造全云化研发新体验,让软件开发更高效、更安全、更智能。
而近期推出自主研发的CodeArts Req,正是一款软件研发管理与团队协作工具,它基于华为30多年软件研发的先进理念与丰富实践,具有强大的组织协作能力,能够支撑跨项目、跨产品、跨组织的大规模协作,提高企业数字生产力。目前,华为云CodeArts Req已全面覆盖华为公司云、管、端、车、芯等相关产品的研发,高效支撑华为13万研发人员的需求协作,月API调用量超过15亿次,累计管理5000多万需求。
据华为云介绍,CodeArts Req基于IPD需求管理的理念,将华为多年来的需求管理实践预置,支持特性管理、需求管理、缺陷管理、计划管理、基线与变更及任务跟踪等功能。有效帮助大规模团队跨产品、跨地域的高效协作,还提供产品特性的管理能力,加速下一代产品开发。并将需求管理延伸到市场、客户侧,帮助企业客户进行价值的筛选和决策。
然而光推出领先技术产品还不够,华为公司认识到真正要发展和建设软件开发工具的生态,只有将更多的开发者团结在周围,才能有广阔的未来。
开发者齐发力,营造健康生态
开发者作为技术发展的原动力,是企业在数字世界构建竞争力的重要力量。以微软为例,从其打造深受开发者喜爱的Visual Studio系列,收购GitHub,以及围绕编程语言打造的生态插件等举措中,均能看到微软以开发者为护城河,持续构造开发者生态。目前,微软拥有9000万的开发者,为微软生产了3800万的应用。所谓“得开发者得天下”,只有牢牢抓住开发者,开发者基于生态持续建设产品,同时反哺企业繁荣发展。
微软生态的成功展示了一个不变的规律,即软件开发工具自主创新的突围之道,必须以开发者为本,打造扎实的技术团队和创新技术,真正打造开发者想用、爱用、好用的工具。
在今年11月的华为全联接大会2022上,华为云全球生态部总裁康宁提出了同样的口号,他表示:“万千开发者是华为云生态的中流砥柱,让开发者成为决定性力量是华为云生态的首要任务。”
基于这样的理念,华为云通过CodeArts Req等系列软件开发工具的发布,吸引更多的开发者参与其中,让开发者感受到华为云带来的改革,帮助开发者创造更大的价值,生产出更好的软件产品,共同建设好生态。
除了发布开发者爱用的工具外,华为云正积极开展各项人才培养措施:如积极开展开发者计划,在全国开发者训练营,进行开发者相关认证;携手高校,通过产、学、研、用,打通人才体系建设,如和高校合作撰写教材,展示部分华为云开发工具的优质内容等,从理论到实践到应用相结合,构建良好人才生态;在代码分析领域,齐聚一批精尖的博士队伍,共同攻克技术难题;与协会平台合作,例如联合CCF学会机构,开展软件工程课题基金,促进产学研深度融。
此外,华为云还进一步努力融合产业生态的力量,分享和提供开放的SDK,吸纳人才共同来打造软件生态,共同繁荣中国软件生态。
结语
当前,我国软件业正在快速发展。据工信部数据显示,从2000年至2020年,中国软件市场整体规模实现了135倍增长,美国为3.2倍;2020年,中国软件产业规模占全球软件产业的24%,占GDP比重约7.9%。
在蓬勃发展的产业基础上,我们也看到了华为等企业锲而不舍地扎根筑基,探索突围之道。也许在不久的将来,全新变革即将来到。
未来,软件开发工具将有哪些发展趋势值得关注?
一是让工具回归到人的本身。一些好用的国外工具重视个人开发者的体验,让开发者全身心沉浸投入到创造,投入到业务价值产生的过程里,不需要频繁被各种问题打断。因此软件开发工具更需要帮助个人开发者,专注于个人价值创作,无需关注工具本身的技术,让工具成为人们创新的土壤,提高人们的工作效率,进而提高企业生产力。
二是让工具真正为企业提供价值。当开发者编写完代码生产出产品后,最终目的必然是为广大生产企业创造价值。例如华为云CodeArts Req等软件开发者工具,都不约而同地提出关注企业价值流动,帮助企业更快、更安全、更高质量来开发,让企业更好完成创新交付。
三是软件的持续性和稳定供应将是关键基础。随着国际形势日益紧张,如果一旦出现了极端情况,自研软件开发工具能承载起软件作业开发、连续性工作不中断的使命。一旦基础软件出现问题,可能将造成软件大厦的颠覆,所有软件活动都无法进行。
四是安全可信。只有研发工具自主的核心工具,才能保障企业核心业务安全。
未来,我们相信软件开发工具自主化创新之路将越走越广阔,将创新基因渗透到每一位参与者中,共同推进中国软件更高质量地蓬勃发展。