新闻详情

破解数字化改造的桥梁——低代码

发表时间:2024-03-27 15:43


1

什么是低代码


低代码(Low-Code / Low-Code Development Platform / Low-Code Application Platform)提出于2014年,是指一项可用于提升软件交付速度的开发技术和工具,以可视化为典型特征,能起到降低编码开发工作量开发成本的目的。


低代码开发是企业加速创新的关键途径。低代码平台使企业能够快速轻松地构建应用程序,而不必依赖昂贵且耗时的定制开发。

低代码平台是继中台之后又一个火爆的话题,实际上低代码本身并不是一个新颖的话题,也不是最近才有的技术突破和创新,而是存在了十几二十年的概念。早期的大型管理软件套件,都有类似于可拖拽式的快速开发平台,方便技术人员不用写代码,快速实现某些基础功能。


从实践上看,低代码技术延续了元数据驱动的设计理念,提供多层次的组件封装,以牺牲极限性能优化和精细化交互体验为代价,换来了数倍提升的开发效率。所以,低代码技术主要应用于企业软件开发,通常不适用于构建数据量和并发用户量巨大、对用户体验有极致要求的互联网应用。


图片
业界领军者的定义

低代码是一种软件开发方法,可以更快地交付应用程序,并且只需很少的手工编码。低代码平台是一组工具,这些工具可以通过建模图形界面来可视化应用程序开发。可以使开发人员可以跳过手工编码,从而加快了将应用程序投入生产的过程。


低代码开发是一种可视化应用开发方法。通过低代码开发,不同经验水平的开发人员能够通过图形用户界面,使用拖放式组件模型驱动逻辑来创建 Web 和移动应用。低代码开发平台减轻了非技术开发人员的压力,帮其免去了代码编写工作,同时也为专业开发人员提供了支持,帮助他们提取应用开发过程中的繁琐底层架构与基础设施任务。业务和 IT 部门的开发人员可以在平台中协同,创建、迭代和发布应用,而所需时间只是传统方法的一小部分。这种低代码应用开发方法可针对不同用例开发各种类型的应用,包括将原有应用升级为支持 IoT 的智能应用。


可以提炼出几个词:模型/建模、图形界面、拖放组件、加快、减轻。连起来就是:通过模型/建模、图形界面拖放组件可以加快应用开发,减轻了非技术开发人员的压力


图片
低代码平台的分类


按技术路线的不同,目前市场上主要有两类:


图片

图片

一种是基于表单驱动,核心能力是表单、流程、报表,在一定的场景下,可以快速的做业务交付,上手成本也比较低。比如:宜搭、简道云、明道云氚云等;


另一种是基于模型驱动,核心是领域模型、业务沉淀、完整性,有一定的技术壁垒,上手成本相对比较高。比如:Outsystems / Mendix / PowerApps / 奥哲云枢 / 金蝶云苍穹等。


图片

图片

低代码平台与无代码/零代码平台区别:



低代码平台

零代码平台

使用者

技术人员

非技术人员

定位

面向技术开发人员的下一代快速应用程序开发工具

普通用户自主开发应用程序的平台

比传统开发速度

2倍

8倍

易用性

□□□

技术要求

懂编码

无需编码能力

个性化程度

多平台运行

☑️

☑️

适合企业

有资金,有研发团队的中大型企业

无研发团队、软件需求紧急、变化快的中小型企业(或中大型企业的某个项目/部门)


无代码/零代码是低代码的子集,通常可以视同为表单驱动的低代码


零代码(表单驱动的低代码):让简单的软件不再需要开发


低代码(模型驱动的低代码):将可视化技术应用于软件全生命周期


图片
低代码平台具备哪些能力


· 可视化页面搭建,通过简单的拖拽完成应用页面开发,对前端技能没有要求或不需要特别专业的了解;


· 可视化模型设计,与业务相关的数据存储变得更容易理解,甚至大多数简单场景可以做到表单即模型,模型字段的类型更加业务化;


· 可视化流程设计,不管是业务流程还是审批流程,都可以通过简单的点线连接来进行配置;


· 可视化报表及数据分析,BI数据分析能力成为标配,随时随地通过拖拽选择来定义自定义分析报表;


· 可视化服务与数据开放、集成,具备与其他系统互联互通的配置;


· 权限、角色设置标准化和业务化,通过策略规则配置来将数据、操作的权限进行精细化管理;


· 无需关心服务器、数据库等底层运维、计算设施设备、网络等等复杂技术概念,具备安全、性能的统一解决方案,开发者只需要专注于业务本身。


零代码、低代码的概念在整个全球行业内已经流行了很长一段时间。通常意义上的低代码定义会有三个关键点:


1. 一个用于生产软件的可视化编辑器;


2. 中间包含了一些用于组装的物料,可以通过编排、组合和配置它们以生成丰富的功能或表现;


3. 最后的实施结果是成本降低。


图片
低代码与aPaaS平台


aPaaS 的全称,是application Platform as a Service,即应用程序平台即服务。它是一种云服务,可为应用程序服务提供开发和部署环境。aPaaS平台提供了以下功能:迭代构建应用程序、及时提供应用软件、按需扩展应用程序以及集成应用程序与其他服务。


低代码虽然现在习惯被称作aPaaS,好像看起来是一种PaaS,显得和SaaS有密切关系,但大家需要认识到,低代码开发平台并不是因为SaaS才有的概念,而是远古时期就已经存在了的。

简单来讲,低代码平台是一套期望通过拖拽配置,就能实现一套业务型软件系统的开发平台,并能无缝的部署上线运行。在这个过程中,当然也允许编写部分代码,但更重要的是,大量基础性的编码工作,都可以被低代码平台快速的自动化实现。


2

为什么需要低代码


低代码是什么可能并没那么重要,毕竟在这个信息爆炸的世界,永远不缺少新奇而又短命的事物。大部分所谓的新技术都只是昙花一现:出现了,被看到了;大部分人“哦”了一声,已阅但表示不感兴趣;小部分人惊叹于它的奇思妙想,激动地点了个赞后,回过头来该用什么还是什么。真正决定新技术是否能转化为新生产力的,永远不是技术本身有多么优秀和华丽,而是它是否真的被需要。


图片
市场需要低代码


落后的软件开发生产力跟不上人民日益增长的业务需求。


图片
提效降本&质量保障


软件开发仍处于手工作坊阶段,效率低、人力成本高、质量不可控。项目延期交付已成为行业常态,而瓶颈几乎总是开发人员(对机器能解决的问题都不是问题);优秀的开发人才永远是稀缺资源,还贼贵;软件质量缺陷始终无法收敛,线上故障频发资损不断。


相比而言,传统制造业经过几百年工业革命的发展,大部分早已摆脱了对“人”的强依赖:从原料输入到制品输出,中间是各种精密仪器和自动化流水线的稳定支撑,真正实现生产的标准化和规模化。虽然信息化号称是人类的第三次工业革命,但以软件行业目前的状况,远远还没到达成熟的“工业化”阶段。


图片
低代码带来的效率提升


一般来说,老板们会通过对比使用低代码技术和传统开发方式所花费的时间、人力、成本等方面来衡量低代码带来的效率提升。例如,如果使用低代码技术可以在更短的时间内完成同样的任务,或者在保持相同的时间内完成更多的工作,那么这就意味着低代码技术带来了更高的效率。另外,老板们也可以通过对比使用低代码技术和传统开发方式所需的人力成本来衡量效率提升,如果使用低代码技术可以节省人力成本,那么这也表明低代码技术带来了更高的效率。


老板们通常通过与使用传统编码方式相比,低代码带来的效率提升程度来衡量低代码的效果。这可以通过对比两种方式开发完成相同功能的软件所需的时间、人力和费用等因素来衡量。此外,老板们还可以通过观察员工使用低代码方式开发软件后的工作效率是否提高来评估低代码的效果。


图片
加强开发过程的沟通协作


可以根据需求的不断变化而不断变化。


图片
扩大应用开发劳动力


通过让大部分开发工作可以仅通过简单的拖拽与配置完成,低代码(包括零代码)显著降低了使用者门槛,让企业能够充分利用前面所提到的平民开发者资源。部分纯零代码需求场景下,低代码还能让业务人员实现自助式(self-service)应用交付,既解决了传统IT交付模式下的任务堆积(backlog)问题,避免稀缺的专业开发资源被大量简单、重复性的应用开发需求所侵占,也能让业务人员真正按自己的想法去实现应用,摆脱交由他人开发时不可避免的桎梏。


至此,应用开发能力不再是少数专业开发者的专利和特权,且今后所需要的技能门槛与拥有成本也会越来越低,真正实现所谓的“技术民主化”(democratization of technology)。


图片
解决企业应用开发的复杂性


围绕企业应用开发的复杂性展开:


1. 业务复杂性;

2. 应用规模的复杂性;

3. 与企业现有IT体系融合;

4. 性能、稳定性等非功能性需求。


3

低代码加速企业软件项目交付


作为软件开发技术发展的产物,低代码广泛应用于各类企业软件的项目交付。凭借更高的开发效率、更敏捷的迭代周期,低代码技术让更多软件项目走上“产品化”的道路,让软件伴随企业共同成长,持续提升软件对企业的价值。


企业信息化可以拆解为若干个相互独立的应用场景,这些场景对软件的要求存在差异,在确保数据互通的前提下,企业可以采用不同的方式采购或开发这些软件,以达到降低信息化总体成本的目的。


图片
适合低代码的场景


我们可以根据标准化程度,将企业软件划分为通用型软件定制化软件


通用型软件


通用型软件大多应用于有国家法规或行业标准约束,各企业管理方式近似的场景,如财务软件、客户关系管理软件等。除非有特殊需求,采购成熟厂商推出的成品软件是企业获取通用型软件时性价比更高的选项。


定制化软件


不同行业、不同发展阶段的企业在生产管理、采购管理等应用场景的需求存在较大差异,需要定制化软件才能满足企业信息化所需。虽然综合成本显著高于同等规模的成品软件,定制开发与自身高度匹配的软件系统能给企业带来更高价值。


在传统的编码开发阶段,定制化软件的开发成本高、交付周期长、维护难度大,很多中小型企业对此“望而却步”。定制化软件需求无法得到满足,成了企业信息化不断深化的最大障碍。作为软件开发技术的发展,低代码的出现,显著提升了软件开发效率,凭借更短的交付周期、更低的开发成本,让更多企业能像行业头部企业一样,拥有为自己量身定制的定制化软件。


低代码在企业信息化中的典型应用场景:


场景分类

终端形态

典型应用

生产现场应用

PC站点 / 移动端APP / 一体机 / 大屏

MES、库存盘点

市场营销应用

PC站点 / 移动端APP

SCRM、SRM

客户服务应用

PC站点 / 移动端APP

工单管理、积分商城

业财一体化应用

PC站点

自动生单/凭证

OA应用

PC站点 / 移动端APP

数据填报

成品软件的二次开发

PC站点 / 移动端APP / 成品软件嵌入页面

ERP二开、OA二开


移动端APP:包含手机原生应用、移动端H5应用、微信小程序等


企业同时存在3类低代码环境:


1. OA办公等环境,需求灵活度极高,数据量小,大部分为用完即弃。采用OA或者企业IM内置的无代码工具即可;


2. 特定的业务软件,需求灵活度较高,表单有较长的勾稽关系,数据量大。采用低代码研发环境提升响应速度降低成本;


3. 基于Excel的管理体系,需求灵活度不高,差异性大,随业务发展逐渐复杂化。选择可私有化的低代码平台,纳入IT管控。


—— 喜茶数字化高级副总裁 沈欣 2021.12


勾稽关系是会计在编制会计报表时常用的一个术语,它是指某个会计报表和另一个会计报表之间以及本会计报表项目的内在逻辑对应关系,如果不相等或不对应,这说明会计报表编制的有问题。


低代码的第一个应用场景,是为了帮助成熟的软件产品,低成本的支持个性化需求,提高开发速度,甚至做到拓展客群。


例如,很多成熟商业软件(包括私有化部署的商业软件套件以及SaaS形式的产品),期望通过低代码平台的建设,加强产品扩展能力,更好、更快的服务客户,以及与 ISV协作,将产品的目标客群拓展到更广泛的领域和行业。


在这种情况下,低代码平台是低成本高效解决个性化需求终极方案。此时,低代码的目标用户可能包括工程师、实施顾问。国外的SAP、Oracle、SalesForce,国内的用友、金蝶、北森、销售易等,都有基于自身软件产品作为基础核心的低代码解决方案。


低代码第二个应用场景,是为了帮助甲方企业,低成本快速搭建全新的应用系统,尤其是让不懂编程的业务人员也能自主实现,从而让企业以更低的成本享受数字化技术赋能业务的好处。


实际上,在企业中大量的应用系统都是流程型的,对于逻辑相对简单,流程链条并不复杂的业务场景,找套装软件支持大材小用,找外包开发独立系统成本又高,那么低代码平台可能是一个不错的选择。此时,低代码平台的目标用户可能包括甲方企业的业务人员,或者IT人员。


国外的OutSystems、Mendix,国内的明道云、氚云,都属于这种情况。需要留意的是,目前国内有些做报表平台、流程引擎的厂商,为了蹭热度,也都称自己是低代码平台。严格来讲,这些厂商提供的产品能力,只是完成低代码平台所需具备能力的子集,并不能算低代码产品。


Gartner将企业的软件需求划分为三大类:


· 通用的系统,即您知道您需要什么样的系统,它与其他企业的系统没有什么不一样。比如财务管理系统,每个企业都差不多,可以采用买来的系统;


· 差异化的系统,即您知道您需要什么样的系统,它与其他企业的系统是有差异的,是实现企业差异化优势的系统。通常体现为通用系统上加一个外挂,或者定制开发的软件;


· 创新的系统,即您不知道您要的系统是什么样,但是您需要探索和创新。这种通常是软件的盲区,因为传统的软件开发方式很难在有限的预算内满足这种探索的要求。


三种类型的系统体现了完全不同需求逻辑。越倾向于通用系统,对成本和风险的关注程度就越高;而越倾向于创新的系统,对交付速度的要求就越占上风。为此,Gartner提出了一个专门的概念——“双模IT”,即稳态IT敏态IT,适配不同的系统需求。


图片

图片

图片图片

双模IT:


· 传统IT模式(稳态IT):强调稳定性,以满足企业业务稳态发展的需求


· 敏态IT模式(敏态IT):强调敏捷性,以达到企业业务快速响应市场需求


从上文的内容中我们不难发现,敏态IT个性化软件,尤其是非核心定制化软件的定义重叠,是低代码技术的的主战场,在业务需求、创新流程和新技术等越容易发生变化的需求和项目上,越能发挥出低代码的生产力优势。


图片
不适合低代码的场景


软件开发领域有一个经典的谚语“没有银弹”,指的是世界上不存在任何一种工程技术能够满足所有应用场景所需。低代码也不是银弹,部分场景下低代码技术能发挥的价值受限,不推荐采用低代码开发。


技术原因:


· 大数据量大并发的“秒杀类”应用场景:采用纯代码开发,如抢票、大数据智能分析等;


· 界面表现力要求高的“颜值类”应用场景:采用专门为此类场景构建的设计工具,或采用纯代码开发,如数据大屏、宣传海报、3D游戏等。


成本原因:


· 通用性较强的应用场景:采购成品软件的成本更低,如财务软件、在线文档协同、知识库管理等;


· 规模小价值低的应用场景:采用IM内置功能或互联网工具,如在线接龙、简单问卷等。


图片
低代码平台的选型

低代码平台的选型评估范围:


选型因素

模型驱动的低代码平台

表单驱动的低代码/无代码平台

应用场景 - 核心业务场景如:MES、SCRM等

应用场景 - 持续使用的非核心业务场景如:库存管理、在线工单等

应用场景 - 临时使用的非核心业务场景如:内部审批、数据填报等

系统集成 - 独立使用

系统集成 - 与核心业务系统集成

团队配置 - 有专业IT人员

团队配置 - 无专业IT人员


4

企业级低代码平台关键能力

其实低代码产品是比较难做成的,特别是大而全的那种,由于考虑因素过多,导致步调很慢,也很难做到很易用,导致一边投入很大,一边又急切上线落地使用,从而出现平台方觉得投入很苦,使用方觉得不太好用还需吃狗粮的矛盾,往往需经过忍耐很长时间才可「守得云开见月明」,不过很多都在没有见月明的时候就奄奄一息了。反而专门领域的比如说表单、表格、图表低代码搭建活的很不错。还有一些 BaaS 类单领域的活得也还可以。


图片
低代码开发平台的核心能力


1. 全栈可视化编程


可视化包含两层含义,一个是编辑时支持的点选、拖拽和配置操作,另一个是编辑完成后所见即所得(WYSIWYG)的预览效果。


传统代码IDE也支持部分可视化能力(如早年Visual Studio的MFC/WPF),但低代码更强调的是全栈、端到端的可视化编程,覆盖一个完整应用开发所涉及的各个技术层面(界面/数据/逻辑)。


2. 全生命周期管理


作为一站式的应用开发平台,低代码支持应用的完整生命周期管理。


a. 开发

b. 构建

c. 测试

d. 部署

e. 运维

i. 监控报警

    ii. 应用上下线

f. 运营

    i. 数据报表

    ii. 用户反馈


3. 低代码扩展能力


UI样式定制、遗留代码复用、专用的加密算法、非标系统集成。一些可能的需求场景包括:UI样式定制、遗留代码复用、专用的加密算法、非标系统集成


a. 添加自定义组件

b. 修改主题CSS样式

c. 定制逻辑流动作


图片
核心模块


低代码平台设计应用的核心模块可以根据具体平台的功能和设计理念有所不同,但通常包括以下几个核心模块:


1. 可视化开发环境:提供一个图形化界面,让用户可以通过拖拽、设置属性等方式进行应用程序的设计和开发。


2. 数据建模和管理:包括数据库设计、数据模型定义、数据关系管理等功能,用于管理应用程序所需的数据。


3. 业务逻辑设计:提供一种方式来定义应用程序的业务逻辑,例如工作流程设计、规则引擎、事件触发器等,以实现应用程序的自动化流程和规则。


4. 用户界面设计:提供一系列的界面组件和样式库,用于设计应用程序的用户界面,包括表单、列表、图表等。


5. 集成和扩展:支持与其他系统和服务的集成,例如第三方API、数据库连接、身份验证等,以及提供扩展机制,允许用户自定义功能和组件。


6. 部署和管理:提供应用程序的部署和管理功能,包括发布应用程序到不同的环境、版本管理、权限管理等。


图片

图片

可维护性,可控的开发质量、维护性和升级成本;二次需求开发。


特性:多分支、回滚支持。


复杂功能的实现和后续的可维护性受到了很多的挑战。


典型的例子是:开始我的需求比较简单,用搭建快速完成了,但后面的需求评估下来,发现搭建满足不了...然后我们开始做出码,将搭建产物转成代码,继续开发。但是单纯做出码,没什么挑战,我们也考虑了不同角色的开发。


拖拽设计器不等于低代码,物料、多端、出码、布局、逻辑、国际化、监控、模板、协议、服务化、帮助体系都要考虑到。灵活性和易用性的平衡如果做不好,那把平台做屎也很容易。


低代码将成为B端服务领域的基础设施,低代码必将颠覆传统开发方式。


5

技术圈如何看低代码平台


未来的软件开发一定是碎片化的,低代码开发将是2021年的行业关键词。


——2021年,阿里云智能总裁张建锋


低代码开发是云计算之后的下一场IT革命


——钉钉在6.0发布会


未来大部分数字化应用开发越来越多的走向低代码化


随着企业数字化转型进程的推进,未来大部分数字化应用开发越来越多的走向低代码化,即通过无代码或低代码的方式实现低成本,快速,灵活,安全地搭建高性能应用。而 aPaaS (application Platform as a Service)就是随着这个趋势的加速,目前备受关注的一个领域,也是一个潜力非常大的方向。


aPaaS 研发团队是致力于建设行业顶尖的无代码/低代码平台,加速企业数字化进程,让懂业务的人无需开发、快速构建出贴合业务需求的应用,助力业务人员自我价值最大化,打通企业数据、减少数据孤岛,让企业掌握快速创新的主动权。


它可以让用户在无需开发或仅需少量开发的情况下,快速地构建出一款贴合业务需求的应用,从而提高团队开发效率、提升企业效能。


——2022年11月,字节跳动


未来80%的应用会由业务人员通过低代码开发


在2022·云栖大会上,阿里云智能总裁张建锋表示,以云为核心的新型计算体系正在形成,软件研发范式正在发生新的变革,Serverless是其中最重要的趋势之一,阿里云将坚定推进核心产品全面Serverless化。此外,张建锋宣布,钉钉上的低代码应用数突破500万,低代码开发者超过380万。张建锋表示,未来80%的应用会由业务人员通过低代码开发。(中国日报网)


——2022年11月,阿里云智能


Mendix公司发布的一份针对中国IT专业人士的低代码行业调研报告显示:85%的中国IT决策者认为,低代码是一项其所在企业机构不容错过的趋势。


——Mendix公司

分享到:

地址:中国·安徽·合肥·蜀山区花峰路与玉蕾路交口智能软件园1号楼3层

业务合作:market@qgutech.com

服务热线:4000969229  

友链: RunnerGo    青谷科技


扫码进群
公众号
在线客服
 
 
 
 
 工作时间
周一至周五 :8:30-18:00
 联系方式
服务热线:4000969229
业务合作:market@qgutech.com