随着新基建的全面推进,云计算、大数据、人工智能等数字技术正广泛嵌入到社会基础设施中,推动全社会跑步进入智能经济。2022年,业界都在谈论算力和算力中心,而当算力中心部署到位后,一个巨大的市场即将拉开帷幕,这就是智能软件开发的黄金时代——从智能手机到智能汽车、从智慧家居到智慧政务……工业、农业、医疗、能源等等各行各业都在经历数智化转型,催生了大规模的软件开发。
过去的10年,是我国从“用软件”到“开发软件”转换的10年。我国软件业业务收入从2012年的约2.5万亿元,增长至2021年的约9.5万亿元;软件业从业人数由2013年的470万人,增长至2021年的809万人。这在很大程度是互联网和移动互联网等数字化产业大发展所驱动的软件业增长,而未来10年则是各行各业数字化和智能化等产业数字化所驱动的软件业增长。
智能时代,国产软件要整体突围。过去十年,面对美国的“卡脖子”,国产数据库、中间件、操作系统等基础软件奋力突围,未来十年则是软件的基础——国产软件开发工具和平台的二次突围——彻底将软件开发掌握在自己的手里!2022年12月7日,华为云“软件开发平台DevCloud”更名为“软件开发生产线CodeArts”,同时重磅推出自研的需求管理工具CodeArts Req。作为软件开发“皇冠上的明珠”,CodeArts Req将点燃国产软件生态整体突围新态势!
软件开发需求爆发
今天,我们正迎来软件开发的爆发。根据IDC的一项预测,到2023年,全球将有5亿个应用,这相当于过去40年软件开发的总和。如果你已经被这5个亿应用震撼,那么大众汽车又有另一个数字:2020年的时候,一辆汽车上最多约集成了1亿行代码,而到了2025年这一数字将高达10亿!要知道,谷歌约有20亿行代码、Facebook约有6000万行代码,而到了2025年一辆汽车就相当于一个介于谷歌和Facebook之间的互联网应用!
今天,全球正在冲刺进入智能时代,智能汽车、智能手机、智能家电、智能可穿戴设备、智能路灯、智能充电桩、智慧楼宇、智慧医疗、智慧矿山……所有的物理物体都在与软件深度融合而数字化和智能化,软件的代码数量呈爆炸性增长趋势。在另一方面,作为智能技术的代表,人工智能模型也在指数级膨胀。OpenAI发布了参数量高达1750亿的大模型GPT-3,谷歌发布了1.6万亿参数的大模型Transformer,更有公司将参数模型推进到十万亿级别……
数据显示,一行代码的开发费用约为10美元,10亿代码的开发成本就高达100亿美元,而GPT-3的开发成本也高达10亿美元。可以说,我们今天不仅面临着软件数量的爆发性增长,更面临着软件规模的指数级增长,以及软件开发成本和复杂性的规模级增长,同时与软件相关的数据量也在爆发式增长,更不用说还要随着技术、用户和市场的变化而不停变更软件。
智能时代的软件开发需求正在爆发,软件开发的难度在指数级增长。另一方面,软件开发作为高科技核心能力,特别是软件开发工具与平台,被掌握在欧美手中,EDA工具软件断供、Mathworks工具软件断供等事件,为国产软件敲响了警钟。在过去十年取得数据库、中间件、操作系统等系统级软件突围的基础上,国产软件必须在开发工具软件这一战略制高点上再次突围,才能将软件能力彻底掌握在自己手里,才能真正应对下一波应用软件爆发的挑战。
以需求为核心的现代软件工程
软件开发遵循软件工程理论。“软件工程”最早起源于1968年,其目的是成功建造大型软件系统。软件工程的中心思想是把软件当作一种工业产品,采用工程化方法,对软件进行计划、开发和维护。软件工程的提出,源自于“软件危机”,也就是如何开发软件以满足对软件日益增长的需求以及如何维护数量不断增长的已有软件,包括开发成本不断飙升、开发进度不断拖延、不能满足用户需求、质量差、可维护性差、开发速度跟不上用户需求等。
不同时代有不同的软件危机。在传统IT时代,软件危机通过当时以瀑布式开发为代表的软件工程方法论以及成熟的软件开发工具和集成环境IDE而得到解决。不论是基础软件的开发,还是应用软件的开发,都有Visual Studio、Delphi、PowerBuilder、Visual Age、C++ Builder等一大批90年代耳熟能详的商用工具和IDE以及Eclipse等开源工具和IDE。在很大程度上,传统IT技术体系的稳定性,决定了当时软件开发工具和IDE市场的繁荣。
然而,随着工业经济向互联网经济和数字经济的推进,以及云计算等新兴数字技术对于传统IT技术体系的冲击,传统的IDE市场开始瓦解。在传统工业经济和Windows时代,软件开发由工程师主导,以三年甚至更长时间为一个开发周期,用户和市场围绕着软件转;而在数字经济和云原生时代,变化的用户和市场需求决定软件开发的速度,软件围绕着用户和市场转。这也就是为什么2023年全球应用数量将是过去40年总和的重要原因。
云原生技术彻底改变了传统IT的技术体系和组织方式,带来了新的软件危机,也将软件开发中需求管理提升到前所未有的重要地位。根据软件工程理论,软件开发分为需求分析、概要设计、详细设计、编码、测试等几个阶段。而对于现代软件工程来说,IPD、DevOps、敏捷开发、精益开发等软件项目开发模型已经成熟,过去十年涌现了大量新兴的云原生开发工具,这些开发的基础都解决后,需求分析与管理就成为现代软件工程的核心和灵魂。
对于中国软件开发商来说,需求分析与管理是一个瓶颈。需求分析涉及到市场定位、用户需求、市场容量、竞争对手分析、财务收益等多个角度,其中仅用户需求分析就涉及400电话、互联网、物联网、售后、设备使用等多源头大数据分析。而需求管理则涉及到多源头需求汇聚、建立需求库、需求评审、需求实现、需求验证、需求追溯和需求重用等,以及多产品、多团队、多业务线等的协同。
需求分析与管理对于软件开发来说极为重要,软件返工会耗费开发总费用的40%,而70%~85%的返工都是由于需求方面的错误而导致的。根据《2021国内软件质量调查报告》,2021年国内软件整体质量不佳,最严重的质量问题是“需求变更频繁”。需求不明确、团队互相抱怨、软件质量问题不断、历史包袱较重等问题,一直困扰着国产软件开发再上台阶。以需求为核心的现代软件工程,需要全新的软件开发工具和IDE。
华为再次引领国产软件突围
需求管理是软件开发“皇冠上的明珠”。需求管理软件主要是软件生命周期管理(ALM)解决方案的一部分,在面向制造领域也是产品生命周期管理软件(PLM)的一部分。无论是ALM还是PLM,都属于“卡脖子”级软件品类,国际上具备这种软件能力的厂商本来不多,而少数独立的需求管理软件也被大厂收入囊中。留给中国软件产业的时间窗口,已经不多。
CodeArts Req是从原先华为项目管理软件ProjectMan升级而来,是华为多年研发实践沉淀的需求管理与团队协作服务,内置多种开箱即用的场景化需求模型和对象类型(需求/缺陷/任务等),可支撑IPD、DevOps、精益看板等多种开发模式,还包含跨项目协同、基线与变更管理、自定义报表、Wiki在线协作、文档管理等功能。CodeArts Req支撑完整的需求管理过程,向前与市场和客户对接,向后与多种软件开发项目管理模式对接,确保从需求规划到产品上线的闭环。
CodeArts Req打破了传统需求管理工具仅在开发阶段发挥作用的角色,向前端延伸覆盖客户与市场需求,提供了完整的客户需求采集、价值需求决策、交付与验收流程,让需求进展和动态实时透明,市场需求流动提速70%。CodeArts Req还打通需求管理过程数据孤岛,将需求开发过程中产生的设计文档、代码、用例、缺陷等有机串联,形成追溯关系网,提前预警、拦截风险,让问题实时可视,保障研发过程高质量,从而避免软件的返工和修复成本。
值得一提的是,CodeArts Req预置了五种软件开发项目模板——Scrum项目模板、看板项目模板、IPD-系统设备类模板、IPD-独立软件类模板、IPD-自运营软件/云服务类模板,分别对接敏捷开发、DevOps和IPD等当前主流软件项目模式。其中,支持大型复杂产品规模化研发的IPD是华为研发特色——研发团队规模庞大、跨项目跨地域协作,对产品质量要求高,流程强管控、决策点多,交付周期2~6个月不等,特别适用于通信设备、汽车、ERP软件、网管软件、云服务软件等大型企业级软件的开发。
CodeArts Req是华为云软件开发生产线CodeArts的一部分。近年来,华为大力投入云服务、操作系统、数据库等基础软件的研发,已经取得了显著的成果。华为鸿蒙操作系统、华为欧拉操作系统、华为高斯数据库、华为云、华为云盘古大模型等先后成为国产软件的领军产品,推动国产基础软件在过去十年的整体突围。而随着软件开发生产线CodeArts和需求管理CodeArts Req的推出,华为将再次引领国产软件的二次突围——软件开发工具和IDE平台。
华为已经率先基于自己的软件开发工具平台,开发了丰富的智能硬件以及加速各行各业数字化与智能化转型。例如,华为智能汽车解决方案BU在华为云CodeArts Req的帮助下,高效管理多方客户需求,建立了客户需求与系统需求双向可追溯,确保需求快速准确传递到开发团队;打通了需求收集、分析、分配、实现、验证等全流程,在设计、开发、测试等团队高效传递产品需求,为华为智能汽车部件业务的高速发展奠定了基础。
到2022年,华为云CodeArts Req已经高效支持华为13万研发人员的需求协作,月API调用量超过15亿次,累计管理5000多万需求,覆盖华为终端、网络、云计算、芯片、汽车等全业务场景。未来,华为云软件开发生产线CodeArts将支持互联网应用开发商、独立软件开发商、传统软件企业、软件外包企业以及各行各业的企业,更加自信地走进智能时代。
总结而言:智能时代是软件数量爆发的时代,也是国产软件产业再上一个台阶的机遇。软件开发工具和平台是软件产业的基础,也是国产软件的“基建”。以华为云CodeArts Req需求管理为代表的自研软件开发工具和华为云软件开发生产线CodeArts,将带动国产软件的再次突围——从基础系统软件到智能应用软件,从而大规模拉动产业数字化,让数字中国再上台阶。