编者按:近两年来,低代码逐步出现在人们的视野中,特别是伴随着我国政府、企业的数字化转型,一些专注于数字化转型的厂商在集聚了相当的势能之后,大力推动了低代码的发展和行业普及。据市场调查显示,年,国内低代码平台市场规模已达到18.5亿左右,正处于高速增长期。在疫情期间,对无纸化办公、信息采集的需求更加迫切,也催生了大量低代码应用的场景,如居民健康信息采集、出行上报等。随着国内厂商的大力投入、低代码技术的日趋成熟,以及行业经验的积累,越来越多的应用场景将会被挖掘,未来的低代码市场将会维持较高的增长。本文中,百分点大数据技术团队介绍了低代码相关的内容,包括低代码的概念、核心能力技术路线及应用场景等,以及百分点低代码平台的建设实践与特点。
一、低代码平台概述
低代码开发平台(low-codedevelopmentplatform,简称LCDP),是指通过提供可视化编程组件以及软件全生命周期管理能力,大大降低开发者开发代码量、开发难度和维护成本的开发者生产力工具。
需要注意的是,这里开发者的定义不同于传统的软件开发者,低代码由于其出色的可视化能力,大大地降低了开发一款应用的门槛,一个没有任何编程基础的公司职员也可以作为低代码平台的开发者。
从低代码的概念中,我们可以总结出低代码平台需要具备的三大核心能力:
1.全栈可视化编程
全栈可视化编程的重点有两方面,第一是可视化,可视化不仅包括编程过程中,通过托拉拽组件和配置完成应用编写的操作,也包括了平台提供的所见即所得的能力;第二是全栈,传统的IDE也有部分是支持可视化开发能力的,但是低代码平台更强调的是全栈,是整个软件开发中的界面、数据、逻辑,以及系统运维全部可视化。
2.全生命周期管理
作为一个一站式应用管理平台,低代码支持应用的完整生命周期管理,从应用的设计阶段开始,经历开发、构建、测试、部署,以及上线后的运维。
3.低代码扩展能力
低代码开发平台在部分场景下仍然离不开代码,因此平台必须支持在必要的情况下通过少量代码来应对应用需求的灵活扩展,例如添加自定义的组件、允许用户定制CSS样式、专用加密规则和非标准需求等。
二、技术路线及应用场景
根据低代码的技术设计和适用场景,可以将低代码路线分为零代码平台和低代码平台:
随着企业发展,为减少业务部门之间频繁的对接需求,提高业务效率,低代码平台作为一款软件开发工具,可覆盖大多数领域和众多行业的不同应用场景,根据场景类型可分为通用性业务场景、企业个性化定制场景和企业细分业务应用场景。
这里以“请假申请”为例,介绍如何用低代码进行开发,请假申请四步走如下所示:
Step1:构建表单
Step2:构建流程
Step3:提交申请
Step4:申请审批
三、百分点低代码平台实践
百分点低代码平台,产品名:CleverBuilder,选取的是BPM流程表单型路线。我们选择BPM型低代码平台,主要出于以下几点考虑:
BPM的产品成熟度较高,在OA,CRM等领域有非常丰富的应用场景,且场景通用性、可复制性较强。公司服务的客户主要集中在政府应急、公共安全等领域,这些领域所需的快速、可靠、多变十分契合BPM型低代码平台。1.百分点低代码平台技术架构
百分点低代码平台的技术架构如下:
整个低代码平台主要有三大能力。
(1)可视化表单、流程构建能力
CleverBuilder采用了自研的表单可视化和流程图绘制可视化引擎。在表单方面,组件可分为:
常用组件:文本、数字、日期、单多选、图片、文件等相关组件。高级组件:关联表单数据、组织架构、成员等高级组件。平台会在接下来的版本中,根据客户的需求,增加更多类型的组件支持。流程引擎方面,CleverBuilder共含有三类业务节点,一类分支节点。三类节点分别为:审批节点、抄送节点、填写节点。一类分支节点,是指互斥分支节点,在分支节点的条件分支中,平台支持设置复杂的过滤条件,从而实现灵活的业务条件配置。通过对可视化表单和流程构建引擎的使用,用户可以通过平台构建出贴合实际业务的流程表单,实现所“建”即所得。
(2)流程流转和版本管理能力
作为一个BPM低代码平台,流程的正确流转是非常关键的基础能力,百分点低代码平台通过自定义的数据格式转换引擎,将用户可视化定义的流程,转化为完全符合BPMN2.0标准的可执行格式进行流程的执行,保证了流程的准确流转。同时,流程引擎也会将流程的每一步执行记录下来,为用户提供清晰的流程执行记录。
(3)对接第三方系统能力
低代码平台服务的客户大部分都拥有自己的OA系统和相关数据库,因此,若想要真正发挥平台的价值,必定需要灵活对接第三方系统的能力。百分点低代码平台提供了三部分对接第三方系统的能力,它们分别是组织架构对接、数据对接和通知消息对接。
组织架构对接
CleverBuilder支持对接第三方系统的组织架构和用户,可同时支持自身组织架构用户体系和第三方系统用户体系,基于其高兼容性的组织架构和用户数据结构设计,在有需要的情况下,还可快速定制化开发针对某一第三方系统的组织架构对接。
数据对接能力
由于用户设计表单的数据结构的不确定性,BPM型低代码平台大部分会将表单数据存放于类似于MongoDB的NoSQL数据库,以方便数据的存储和系统查询等操作。
CleverBuilder出于以上两点考虑,用户提交的表单数据也保存在MongoDB中。但是这会带来一些问题:
首先,表单数据是非结构化的,这将为后续数据的可视化统计带来不便。
其次,有大量企业用户本身是拥有自身的业务数据表的,他们更希望将收集到的数据保存到其指定的业务表中,若低代码平台只支持自身数据表的数据写入,将会导致数据孤岛。
这里着重介绍一下平台的数据对接能力和步骤。
第一步:组织管理员可在系统管理中配置需要的数据源,其他用户可在表单中可视化设置表单字段与指定数据库表字段的映射关系,主外键字段关系。
第二步:设置完成后,当用户提交表单或表单通过流程后,表单数据会根据配置的映射关系,自动同步到用户设置的自身业务表中,若需要修改已提交的表单数据,也只需在平台的数据管理模块修改,数据表会自动同步到相应的业务表中。
通过第三方数据同步功能,百分点低代码平台能更好地融入客户已有的信息化体系。
通知消息对接
BPM型低代码平台涉及流程的提交、审核、填写、回退、抄送和催办等一系列动作,每一个动作都需要提醒相关责任人,因此,百分点低代码平台还设置了自身的消息提醒模块。
但在实际使用过程中,可能需要将通知提醒通过原有的统一通知系统送达用户手中,做到通知消息的集中管理,方便用户的信息获取。因此,CleverBuilder消息通知模块采用了可插拔设计,可通过配置、快速修改系统的通知送达方式,后续将对接钉钉和