0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

软件行业的开发效率正在迎来质的提升

ss 来源:吴怼怼 作者:李小歪 2020-11-24 09:48 次阅读

软件行业的开发效率正在迎来质的提升。

一个明显的趋势是,越来越多的企业开始认识到数字化生产方式给企业带来的创新活力和效率增长,尤其是拥有庞大科技团队的大型企业和互联网公司

他们在中国企业加速驶入数字化转型深水区的过程里,既是打头阵的先行者,也是最核心的战斗力。

IDC在《2020数字化转型2.0》报告中所说,无处不在的AI,云与边缘的融合,解决方案的自动化等关键驱动力,很可能成为企业数字化转型中的重要加速器。

而我也在最近观察到这些驱动力在数字时代的轻盈落地,就「解决方案的自动化」这一点而言,国内已经有企业研发出「全自动软件工程平台」,只要输入需求流程图,不需要敲写一行代码平台,就可以自动开发并完成测试,还有自动运维支撑等全链条服务。

从目前的研发深度来看,软件开发行业将迎来巨变。

我们先不去讨论一个全面的自动化,或者零人工有没有可能,从这几年的浪潮来看,从微软等企业布局低代码开始,人人都是开发者的时代已然到来,但低代码的发展还在初期,目前架构也不够成熟,不能满足大型企业复杂多元,以及流程链条化的业务需求。

简单而言,低代码的模块拖拉,还停留在前端界面设计阶段,后端的全自动开发问题,始终没有被放到台前讨论。这才是软件开发效率能否提升的破发点。

而当全自动软件开发成为可能时,后端大刀阔斧的改革才真正被聚光灯照见。

01

一个神奇的流程图

尽管企业端对使用顺滑、流程合理的软件有大量需求,但行业的痛点明显。艾瑞咨询《中国软件开发行业研究报告2020》指出,项目开发成本高、开发周期长、代码质量低、团队管理难几乎是长期困扰需求者的问题。

行业不是没做过努力。这几年,以开发为切入口,涌现了一批布局低代码业务的公司,试图通过减少传统应用程序的代码编写数量,运用图形化界面拖拽,来让更多非IT的业务人员,直接上手参与流程优化。

起点是在2018年。

那一年,OutSystems和Mendix两家独角兽,直接引爆了资本市场对低代码平台的关注。OutSystems随即得到私募股权机构KKR和高盛共同投资的3.6亿美金。而后,德国工业巨头西门子也宣布进入低代码开发平台市场,用6亿欧元买了Mendix。

OutSystems和Mendix还不是棋局上最大的玩家。

2019年,Salesforce和微软正式进入低代码领域,前者依靠低代码开发模式为自身的CRM应用打造PaaS平台,后者设计了低代码开发组件Power Apps,并想要这个组件内嵌到Office办公套件里,让其自身的企业端软件形成一个生态。

我和几个做程序员的朋友曾经亲测过微软的Power Apps。发现他们目前能执行的是一些比较简单的功能,比如销售数据的滚动统计、年复合增长率、订单生成处理。

就拿订单处理来说,大概只能停留在订单自动下达到仓库这一步。如果复杂到订单生成后,这批货物需要从俄罗斯运送至欧洲卢森堡中转,最终抵达美国顾客手里,这中间涉及到不同国家之间最优惠的物流路线和商品税计算,低代码就很难做到了。

说白了,这是企业核心业务自身的复杂性导致的。而低代码虽然解决了一部分开发效率低的问题,但只是局限于前端展现层的拖拽操作,没有针对后端开发进行真正的改革创新。

对企业来说,这种步伐的迈进还远远不够。

而最近释放出来的消息是,国内已经有企业在后端实现了破局。只要输入需求流程图,平台就能自动实现软件的开发、测试和运维。在刚刚结束的发布会上,一套研发多年的「飞算全自动软件工程平台」全球首发。

飞算云智总裁陈定玮在发布会上介绍产品

在发布会现场PK赛上发现,使用该平台做「运动计时」同一项目开发,一个普通的IT工程师只需要输入流程图,不敲一行代码就实现了后端开发。而仅仅28分钟之后,他就完成了3个资深IT工程师近2个小时的开发工作。

从输入流程图的角度来看,飞算全自动软件工程平台也在做可视化。但与市面上同类工具不同的是,飞算全自动软件工程平台,能提供后端微服务开发。

后端微服务的逻辑就要依靠平台组件,即通用的技术功能模块。它们能支持循环、条件判断、函数调用,通过拖拉拽的方式以及参数配置实现等同编写复杂代码的业务逻辑。这就是全自动开发功能实现的基础。

换句话说,实际上你绘制流程图的过程就是微服务(复杂代码业务逻辑)开发的过程。图形化的流程图多清楚,哪里不会画哪里。

这样一来,项目管理上也轻松了许多。你可以减少之前繁复过多的层级沟通,从项目经理到产品经理,部分架构师可以直接完成项目的计划和设计,也不用RD工程师做任务分解。如此操作,沟通效率客观上提高了不少。

自此,只需要通过一个的神奇流程图,就可以在平台上实现全自动开发,项目管理、自动化测试、和自动化运维的全部功能。

02

开发的全周期覆盖

当然,可视化的流程图,还只是飞算全自动软件工程平台的创新表现之一。从开发到测试,再到后期运维,平台实际上形成了从前期到后期的高度统筹,这种全周期覆盖的管理能力。

一个常见的误区是,行业的开发提升大多注重功能的新增和优化,而忽视了从产品设计开发、测试到交付、运营等全生命周期的质化提升。

而全周期、全链条的能力之所以重要,是因为开发一套互联网技术的微服务架构体系,本来就是一环套一环,哪个环节都不能出错,不然就算代码写出来了,这套服务软件最后也没法用。

这主要是在于软件工程行业多依靠「人治」,程序员个人或团队在其中发挥的作用远远超过了系统、代码等规定和流程的标准化作用机制。

举例而言,传统的代码编写工作还是采用二进制的文本逻辑。一不小心,如果少了个逗号或者逗号前面出现了空格,又或者全角符和半角符没有统一,那整段代码在测试时可能全崩了。每个程序员写代码的习惯和逻辑也不尽相同,负责测试的工程师可能要在成千上万页的代码里找出这个小错误,耗时耗力可想而知。

但如果是在飞算全自动软件工程平台上,这种失误就会很大程度上地避免。首先自动生成的后端开发会比人工代码更加精准,遵循代码规范,可读性、可维护性也较高。其次,平台的自动化测试功能通过测试用例跟踪,可进行接口测试、性能测试等来让这套代码运行起来时尽可能稳定顺畅。

而在自动化运维功能模块里,平台的自带服务,注册中心,分布式链路追踪,服务发现,服务治理等环节,也可以保障新代码push之后的顺利运行。

自动化项目管理、自动化开发、自动化的测试和运维,这四项核心功能的实现,实际上标志着行业从「人治」到「法治」的阶段跃升。

飞算云智总裁陈定玮认为,尽管软件行业的发展积累大量可行的实操方式和可行制度,但人的个性化导致了制度落地执行时差异很大。一旦出现一个有效的工具能将这些管理制度自动落实到位,由于人的个性化导致的一系列问题如招聘难、培养难、留人难、技术沉淀难等,就能迎刃而解 。

目前,飞算全自动软件工程平台在“项目管理”、“自动化开发”、“自动化测试”、“质量管理”、“自动化运维”等核心板块,涉及150多个流程节点的问题上,都能够形成自动化和有效开发,行业痛点的化解也因此水到渠成。

当然,标准化、自动化的开发系统也并非完全杜绝了个性化、创造力的可能。比如,关键岗位的招聘、留人难,行业的技术沉淀,就是之前的一个遗留问题。

飞算全自动软件工程平台的解决方式是,引入了众创中心,像社区一样让工程师们集聚在一起。IT狂人们在众创中心根据自身经验提供封装组件,大家的经验一起在这个平台上沉淀,不仅能够让使用者快速开发和使用,也能集众人智慧,让开发出的软件形成更稳定的质量和安全体系。

03

行业效能的天际飞跃

我们回头来看飞算全自动软件工程平台的价值,为什么从发布之后就引来了巨大关注。

国际欧亚科学院院士、国际欧亚科学院中国中心副主席张景安院士期待,这种中国原创、拥有自主知识产权的平台的出现,可以为国民经济、制造业、产业转型升级、智能制造和人工智能的高质量发展作出新的贡献。

而中国工程院院士倪光南也在视频中指出,「如果通过实践验证,这个平台对软件行业的发展将很有意义」。

信息技术研究和顾问公司Gartner,2019年向来自全球89个国家范围内的3000多名首席信息官的调查来看,通常企业内的IT需求一定会大于IT人力的负荷量。当时,这些首席信息官就曾预测,在数字化浪潮里,2019年全球IT预算将增长2.9%,而亚太地区的增长,有可能达到3.5%。

随着企业数字化转型的不断深化,以及消费者对数字化的需求,这个市场增长还在不断扩大。但企业的成本的确是在逐年走高。

但飞算全自动软件工程平台无论是项目成本还是开发效率,代码质量还是团队管理和稳定性,都让行业效能得到了飞跃天际线的提升。

我们来举个例子。

如果有个科技公司,想要开发一套互联网技术的微服务架构体系,包括前端系统体系、业务系统体系和大数据体系等,且需版本高频率迭代。需要多大的人力和物力呢?

首先,IT团队要做需求分析,系统架构设计,微服务开发、系统测试和运维保障系统。其中光是微服务开发就包括:前端界面开发、技术服务支撑系统开发、业务系统开发、人工智能分析系统开发、大数据系统开发。如果这时团队还要兼顾对外合作项目开发,涉及项目超30个,业务量需要容纳的用户超过千万,这个工作量就更大了。

在这种配置要求下,「传统开发模式」和「飞算全自动软件工程平台」两者人力成本的相关费用对比是很鲜明的。

如果使用后者,每年可节省75%以上的研发费用。尤其在人力成本方面,一个平台ID人员可替代传统开发模式下包含项目经理,系统架构师,软件设计师,软件工程师,测试工程师,运维工程师等六个岗位人员的全部工作,而人力成本仅占后者的30%。

这是人员配置上的项目成本优势,开发效率的提升我们之前也提过了,至于团队和系统稳定性,当操作者降低软件工程对技术的依赖时,技术选型、技术绑架、技术趟坑等问题也随之减少;而标准化、减少人工输入的环节也提高了代码质量。

之前我看过一本书叫《人月神话》,作者是Fred Brooks。按照他的划分,软件开发的复杂度大概有两种,本质复杂度(Essential complexity )和偶然复杂度(Accidental complexity)。前者有点儿类似于企业的这个业务需求,本身的复杂程度,和工程师用什么样的工具写代码、经验是否丰富、架构好不好都没什么关系。而后者就是实际开发过程中引入的复杂度,就是技术细节的复杂度。

业务的复杂度是企业决定的,给开发者和企业方提供服务的平台本身是改变不了的,能动的,就是技术细节复杂度的降低。这就好比,烹饪一份食材特殊、流程复杂、技术高超的美食,平台方要把菜挑选好了,都洗好切好,火候也掌握好,每一道工序的时间都明确写好,厨师自己照着做就可以。

平台承担的事情越多,在平台上开发软件的工程师就越轻松,这和做一个快乐的厨师,没什么不同。当然,也不是说这个工程师谁都可以做,每个人承担的角色不同,发挥的作用机制自然也不一样。

目前,我国软件和信息技术服务业规模以上企业在2019年就超过了4万家,累计完成软件业务收入71768亿元,同比增长15.9%。在中国企业从信息化时代全面转向数字化的阶段里,软件开发作为企业数字化转型的重要环节,很有可能成为中坚力量。

一个美好的想象是,我希望未来企业家也不用再高喊996的口号,码农们也不用彻夜敲代码,当机器代替人类创造出更多价值时,基于科技和人文之上的,就是人类不断发掘需求痛点,并解决问题的创造思维和无穷想象了。

责任编辑:xj

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 互联网
    +关注

    关注

    54

    文章

    11154

    浏览量

    103298
  • 软件
    +关注

    关注

    69

    文章

    4941

    浏览量

    87469
  • 自动化
    +关注

    关注

    29

    文章

    5575

    浏览量

    79270
收藏 人收藏

    评论

    相关推荐

    借助NVIDIA GPU提升鲁班系统CAE软件计算效率

    本案例中鲁班系统高性能 CAE 软件利用 NVIDIA 高性能 GPU,实现复杂产品的快速仿真,加速产品开发和设计迭代,缩短开发周期,提升产品竞争力。
    的头像 发表于 12-27 16:24 33次阅读

    Triton编译器如何提升编程效率

    在现代软件开发中,编译器扮演着至关重要的角色。它们不仅将高级语言代码转换为机器可执行的代码,还通过各种优化技术提升程序的性能。Triton 编译器作为一种先进的编译器,通过多种方式提升编程效率
    的头像 发表于 12-25 09:12 174次阅读

    如何使SOLIDWORKS参数化设计软件提升效率

    SOLIDWORKS参数化设计软件-SolidKits.AutoWorks可实现智能选型、自动化修改产品属性、产品参数、产品状态、图纸更新、重命名、并自动打包生成交付物,实现产品自动设计。大幅提升设计效率,减少错误、降低对人工经
    的头像 发表于 12-19 15:53 195次阅读

    PLM项目研发管理系统软件提升企业创新效率的关键工具

    在当今竞争激烈的市场环境中,企业要想保持领先地位,就必须不断提升自身的研发能力和创新效率。PLM项目研发管理系统软件,作为一款专为产品全生命周期管理(PLM)设计的软件,正是帮助企业实
    的头像 发表于 11-22 14:53 194次阅读
    PLM项目研发管理系统<b class='flag-5'>软件</b>:<b class='flag-5'>提升</b>企业创新<b class='flag-5'>效率</b>的关键工具

    如何提升EDA设计效率

    EDA(Electronic Design Automation,电子设计自动化)设计技术是现代电子工程领域的关键技术之一,提升EDA设计效率对于电子工程师和整个电子行业都至关重要。以下是一些
    的头像 发表于 11-08 14:23 414次阅读

    提升效率:RTC时钟实用设置

    今天来给大家讲解的是RTC时钟实用性,提升绝对的效率
    的头像 发表于 11-04 16:35 787次阅读
    <b class='flag-5'>提升</b><b class='flag-5'>效率</b>:RTC时钟实用设置

    如何提升RFID手持终端的读写效率

    RFID(射频识别)手持终端是一种便携式设备,用于读取和写入RFID标签。提升RFID手持终端的读写效率对于提高物流、库存管理、零售等行业的工作效率至关重要。以下是一些
    的头像 发表于 10-29 09:41 234次阅读

    数字孪生如何提升产品开发效率

    物理实体的精确虚拟副本,数字孪生技术能够模拟、分析和优化产品性能,从而显著提升产品开发效率。 一、数字孪生技术简介 数字孪生技术,也称为数字镜像或数字副本,是一种利用物联网(IoT)、大数据、云计算和机器学习等
    的头像 发表于 10-25 14:49 244次阅读

    嵌入式软件工程师如何提升自己?

    ,不断提升自己的专业技能,保持与行业最新技术的同步。 3.积累项目经验 项目经验对于嵌入式软件工程师的职业发展至关重要。通过参与实际项目,可以锻炼自己的技能提高问题解决能力和团队合作能力。建议积极参与
    发表于 06-12 11:20

    Cognizant与Google Cloud深化合作,提升软件交付效率

    近日,知名IT服务提供商Cognizant与Google Cloud宣布将进一步扩大合作伙伴关系,共同致力于增强软件交付生命周期,并显著提升开发人员的工作效率
    的头像 发表于 03-26 10:01 353次阅读

    华秋DFM 4.0版本震撼发布,效率再度提升20%!

    华秋旗下工业软件——华秋DFM在业界的期待中迎来重大更新,正式推出4.0版本。此次升级不仅延续了华秋DFM一贯以来对卓越性能和用户体验的追求,更是在效率优化上取得里程碑式的突破,整体效率
    的头像 发表于 03-08 08:06 1840次阅读
    华秋DFM 4.0版本震撼发布,<b class='flag-5'>效率</b>再度<b class='flag-5'>提升</b>20%!

    从智慧PC到千行百业:在华为擎云 G540中找到新生产力

    以新生产力为牵引,PC产业正在迎来全面革新
    的头像 发表于 03-07 18:54 3039次阅读
    从智慧PC到千行百业:在华为擎云 G540中找到新<b class='flag-5'>质</b>生产力

    潞晨科技Colossal-AI + 浪潮信息AIStation,大模型开发效率提升10倍

    的潞晨科技Colossal-AI系统,用户可实现在本地算力平台一键训练、微调、推理、部署大模型,将大模型开发效率提升10倍以上,并将算力效率提升
    的头像 发表于 03-01 09:43 488次阅读
    潞晨科技Colossal-AI + 浪潮信息AIStation,大模型<b class='flag-5'>开发</b><b class='flag-5'>效率</b><b class='flag-5'>提升</b>10倍

    生产力哪些行业发展最好 如何提升生产力

    成果。 新生产力是生产力现代化的具体体现,即新的高水平现代化生产力(新类型、新结构、高技术水平、高质量、高效率、可持续的生产力),相比于传统生产力,其技术水平更高、质量更好、效率更高、更可持续。 形成新
    的头像 发表于 02-22 17:57 4818次阅读

    如何提升单片机开发技术?

    单片机开发是现代电子技术中的重要分支,其在各个领域都有着广泛的应用。单片机开发技术的提升不仅可以提高工作效率,还可以提高工作质量和创新能力。那么,如何
    发表于 01-05 10:14