文丨智能相对论
作者丨沈浪
当代的数字经济大厦由各种各样的软件一块一块地搭建起来。然而,站在国内软件行业的中心,热闹的大多是来自上层的软件应用,而沉寂的却总是底层又难又基础的领域,比如软件开发。
软件开发,鲜有人讨论,长期以来也是国内软件产业比较薄弱的环节。
如今,终于有了些起色。
从去年12月开始,华为云上线了一系列软件开发工具和服务,包括前不久刚刚推出的应用性能管理服务CodeArts APM、性能测试服务CodeArts PerfTest,多达10余款。这在很大程度上补充了国内软件工具生态的短板。
国内软件工具生态得到了前所未有的关注。更进一步来说,在华为云的这些软件开发工具和服务的刺激下,国内的软件开发领域或许真要”变天”了。
01横向”完善链路”:10余款软件工具和服务, 全面对齐软件开发工具链
显而易见的是,华为云上线的一系列软件开发工具和服务,对国内软件开发工具链确实是一次很好的完善。
拆解软件开发工具链,常规的软件开发包含项目管理、代码托管、代码检查、编译构建、部署、测试、发布等环节,综合为一套系统、完整的流程。
CodeArts Req的价值就是让这种复杂的需求管理变得简单起来,通过系统的工程方法和技术如IPD需求管理模板等去抓住需求的源头,甚至是把需求管理贯穿整个开发过程,从而保证软件开发团队(单一或多个)能充分理解客户需求,做出客户真正想要的产品。
在CodeArts Req之后,华为云上线的其他软件开发工具和服务也都一一对应软件开发的各个环节,比如CodeArts APM对应应用性能管理、CodeArts TestPlan对应测试、CodeArts Build对应编译构建、CodeArts Check对应代码检查等等。
截至目前,华为云的10余款软件开发工具和服务基本已经全面对齐软件开发工具链。放眼国内软件开发领域,很多模块都相对薄弱,开发者所能选择的工具和服务并不多,”没得选”是最关键的问题。
具体来说,正因为软件开发是一个系统且完整的流程体系,大多时候受制于”木桶定律”,即一套软件开发工具好不好用,关键在于其最薄弱的一个环节。因此,对于软件开发者而言,软件开发工具的完整性很重要,是他们能下决心迁移到另一套工具上做开发的必然考量。
由此来说,华为云上线的一系列软件开发工具和服务,从根本上扭转了国内软件开发者所面临的窘境,让”没得选”变为”有得选”,恰恰也是率先实现软件开发全链路自主可控的一个关键起始。
02 向下”扎根创新”:华为30年的 工程方法和实践,以软件工具对外输出
使用一款软件开发工具的本质是学习其背后先进的工程方法和实践,就好比用锄头耕地和用牛来耕地之间,工具变化的背后是人力与牛力的转换,同时也意味着一整套工程方法和实践的调整,比如从用锄头到驾驭牛就是两套截然不同的工程方法。
从这个角度来说,华为云发布的这一系列软件开发工具和服务,实则是华为过去30年在软件开发工程方法与实践的对外输出。
软件开发工具和服务,只不过是载体罢了。
以CodeArts TestPlan为例,这是一款自主研发的一站式测试管理平台,由华为30多年的高质量测试工程方法和实践升级而来。
比如,在2005年前后,华为就尝试在自家的测试管理平台上融入大规模测试用例管理,从而将整个测试活动可视化地呈现出来,让相关各方都能通过平台来了解别人在干什么、质量把控进程等,提升测试的效率。
最终,这一能力继续升级并与其他工程方法一同融入了CodeArts TestPlan中,使其能够实现测试全流程标准化以及测试端到端过程动态实时监控等特性。
而基于CodeArts TestPlan的这些能力和特性,华为更是创新提出了”性能工程”的概念,有意将性能测试变成一个工程化的场景,深度融入到产业开发流程,来帮助开发者改进产品设计,而不是像以往那样只承担产品开发最后的”兜底”作用。
在这里,CodeArts TestPlan不仅是华为输出工程方法和实践一个窗口,也具备了支撑华为重新定义产品开发流程的一个关键能力。而除了测试管理服务之外,像CodeArts Req对应的需求管理、CodeArts APM对应的应用性能管理等,都存在这一趋势,即从软件开发工具的角度对软件开发流程进行创新。
那么,对于其他软件企业或开发者而言,使用华为云的一系列软件开发工具和服务,就不仅仅只是学习其先进的工程方法和实践,还将有可能在华为的影响下一同走上创新软件开发流程的道路。
这不难理解,就好比当人学会了使用牛力,获得更强大的开发能力,就不会满足于以前用锄头耕地一般的成果,而是开始创新如何用牛力去把地耕得更好或是耕更多的地,以获得更好的收成。
华为云的做法,或许能带动国内软件市场基于底层创新去实现突破性的发展。当越来越多的软件企业通过这些软件开发工具和服务去了解并学到华为本身30多年的工程方法和实践,那么更进一步的群体性创新也就具备实现的可能了。
03 向上”支撑应用”:跟随云原生技术演进, 驱动软件生态深度革新
当华为云的一系列软件开发工具和服务推动了软件开发层面的底层创新,除了在该层面有助于实现群体性创新之外,还将向上发力驱动上层的软件应用创新。
现阶段,随着云计算技术对软件行业的深度革新,云原生的趋势正不断将软件行业推向云端,让软件开发、软件应用、软件运维等工作都走向协同。简单来说,软件产品研发就不仅仅只是把产品做出来这么简单了,需求在变化,相应的软件开发工具也要随之升级。
以前不久华为云上线的CodeArts APM为例,这一款全链路应用性能管理服务。相比于传统监控只覆盖基础设施、中间件、业务指标相关的观测能力,CodeArts APM的监测能力在上层和底层都做了延伸,带来了深入代码级的性能监测和对用户的真实体验感知。
由此能带来什么样的效果?因为把前后端链路打通了,用户的产品体验好不好,或是哪里出现了故障,哪行代码有问题等都一目了然,基于CodeArts APM,开发者就能快速地找到故障点或是根据用户体验的反馈,不断去优化产品、定位故障。
如此一来,上层的软件应用便能以正确的方向保持进化,而用户对产品的体验也将不断得到提升、优化,更好适应当前的市场环境。
如今,技术的演进无时无刻不在发生,对传统软件行业的变革是显而易见的。在云原生时代,软件行业正在经历新一轮的颠覆与升级,软件开发到软件应用都在向云端迁移,并持续走向协同。
在这个节点上,软件开发工具和服务处在基础软件领域,势必也要率先升级,从而成为新的底层驱动力,而非拖累。从华为云上线的这些软件开发工具和服务来看,新一代的软件开发工具和服务已经具备了与上层协同、从底层驱动软件产业升级的能力。
这将是一个非常积极的信号,华为云既然瞄准了底层的基础软件领域做升级,那么国内软件产业在新时代的基础想必不会太差,随着越来越多的企业加入或许还会持续壮大生态,发展得更好。
当然,这都是后话了。
04 结语
前不久,华为云刚刚上线了一款性能测试服务CodeArts PerfTest。紧接着,4月27日,华为云又上线了一款缺陷管理服务CodeArts Defect。从目前的情势来看,华为云面向软件工具生态的动作还在持续,没有停下的意思。
总的来说,华为云确实是给国产软件工具生态开了个好头。
不管是对软件工具链的完善还是基于软件工具输出自己的工程方法和实践,或是基于云原生技术对传统软件开发流程的革新,都有望进一步推动国产软件行业聚焦底层创新,拉动底层工具生态的繁荣,进而稳固数字经济大厦。
对于沉寂良久的国内软件开发领域而言,这些起色,很令人激动、振奋。
*本文图片均来源于网络