百分点大数据技术团队:低代码平台实践

编者按 :近两年来,低代码逐步出现在人们的视野中,特别是伴随着我国政府、企业的数字化转型,一些专注于数字化转型的厂商在集聚了相当的势能之后,大力推动了低代码的发展和行业普及。据市场调查显示,2020年

编者按 :近两年来,低代码逐步出现在人们的视野中,特别是伴随着我国政府、企业的数字化转型,一些专注于数字化转型的厂商在集聚了相当的势能之后,大力推动了低代码的发展和行业普及。据市场调查显示,2020年,国内低代码平台市场规模已达到18.5亿左右,正处于高速增长期。 在疫情期间,对无纸化办公、信息采集的需求更加迫切,也催生了大量低代码运用的场景,如居民健康信息采集、出行上报等。随着国内厂商的大力投入、低代码技术的日趋成熟,以及行业经验的积累,越来越多的运用场景将会被挖掘,未来的低代码市场将会维持较高的增长。 本文中,百分点大数据技术团队介绍了低代码相关的内容,包括低代码的概念、核心本领技术路线及运用场景等,以及百分点低代码平台的建设实践与特点。一、低代码平台概述低代码开发平台(low-code development platform,简称LCDP),是指通过提供可视化编程组件以及软件全生命周期管理本领,大大降低开发者开发代码量、开发难度和维护成本的开发者生产力工具。需要注意的是,这里开发者的界说不同于传统的软件开发者,低代码由于其出色的可视化本领,大大地降低了开发一款运用的门槛,一个没有任何编程基础的公司职员也可以作为低代码平台的开发者。从低代码的概念中,我们可以总结出低代码平台需要具备的三大核心本领:1. 全栈可视化编程全栈可视化编程的重点有两方面,第一是可视化,可视化不仅包括编程过程中,通过托拉拽组件和配置完成运用编写的操纵,也包括了平台提供的所见即所得的本领;第二是全栈,传统的IDE也有部分是支持可视化开发本领的,但是低代码平台更强调的是全栈,是整个软件开发中的界面、数据、逻辑,以及系统运维全部可视化。2. 全生命周期管理作为一个一站式运用管理平台,低代码支持运用的完整生命周期管理,从运用的设计阶段开始,经历开发、建立、测试、部署,以及上线后的运维。3. 低代码扩展本领低代码开发平台在部分场景下仍然离不开代码,因此平台必须支持在必要的情况下通过少量代码来应对运用需求的灵活扩展,例如添加自界说的组件、允许用户定制CSS样式、专用加密规则和非标准需求等。 二、技术路线及运用场景根据低代码的技术设计和适用场景,可以将低代码路线分为零代码平台和低代码平台:百分点大数据技术团队:低代码平台实践随着企业发展,为减少交易部门之间频繁的连接需求,提高交易效率,低代码平台作为一款软件开发工具,可覆盖大多数领域和众多行业的不同运用场景,根据场景类型可分为通用性交易场景、企业个性化定制场景和企业细分交易运用场景。百分点大数据技术团队:低代码平台实践这里以“请假申请”为例,介绍如何用低代码进行开发,请假申请四步走如下所示:Step1:建立表单百分点大数据技术团队:低代码平台实践Step2:建立过程百分点大数据技术团队:低代码平台实践Step3:提交申请百分点大数据技术团队:低代码平台实践Step4:申请审批百分点大数据技术团队:低代码平台实践三、百分点低代码平台实践百分点低代码平台,产品名:Clever Builder,选取的是BPM过程表单型路线。我们选择BPM型低代码平台,主要出于以下几点考虑:BPM的产品成熟度较高,在OA,CRM等领域有非常丰富的运用场景,且场景通用性、可复制性较强。公司服务的客户主要集中在政府应急、公共安全等领域,这些领域所需的快速、可靠、多变十分契合BPM型低代码平台。1. 百分点低代码平台技术架构百分点低代码平台的技术架构如下:百分点大数据技术团队:低代码平台实践整个低代码平台主要有三大本领。(1)可视化表单、过程建立本领Clever Builder采用了自研的表单可视化和过程图绘制可视化引擎。在表单方面,组件可分为:常用组件:文本、数字、日期、单多选、图片、文件等相关组件。高级组件:关联表单数据、组织架构、成员等高级组件。平台会在接下来的版本中,根据客户的需求,增加更多类型的组件支持。过程引擎方面,Clever Builder共含有三类交易节点,一类分支节点。三类节点分别为:审批节点、抄送节点、填写节点。一类分支节点,是指互斥分支节点,在分支节点的条件分支中,平台支持设置复杂的过滤条件,从而实现灵活的交易条件配置。通过对可视化表单和过程建立引擎的使用,用户可以通过平台建立出贴合实际交易的过程表单,实现所“建”即所得。(2)过程流转和版本管理本领作为一个BPM低代码平台,过程的正确流转是非常关键的基础本领,百分点低代码平台通过自界说的数据格式转换引擎,将用户可视化界说的过程,转化为完全符合BPMN2.0标准的可施行格式进行过程的施行,保证了过程的准确流转。同时,过程引擎也会将过程的每一步施行记录下来,为用户提供清晰的过程施行记录。(3)连接第三方系统本领低代码平台服务的客户大部分都拥有自己的OA系统和相关数据库,因此,若想要真正发挥平台的价值,必定需要灵活连接第三方系统的本领。百分点低代码平台提供了三部分连接第三方系统的本领,它们分别是组织架构连接、数据连接和通知消息连接。组织架构连接Clever Builder支持连接第三方系统的组织架构和用户,可同时支持自身组织架构用户体系和第三方系统用户体系,基于其高兼容性的组织架构和用户数据结构设计,在有需要的情况下,还可快速定制化开发针对某一第三方系统的组织架构连接。数据连接本领由于用户设计表单的数据结构的不确定性,BPM型低代码平台大部分会将表单数据存放于类似于MongoDB的NoSQL数据库,以方便数据的存储和系统查询等操纵。Clever Builder出于以上两点考虑,用户提交的表单数据也保存在MongoDB中。但是这会带来一些问题:首先,表单数据是非结构化的,这将为后续数据的可视化统计带来不便。其次,有大量企业用户本身是拥有自身的交易数据表的,他们更希望将收集到的数据保存到其指定的交易表中,若低代码平台只支持自身数据表的数据写入,将会导致数据孤岛。这里着重介绍一下平台的数据连接本领和步骤。第一步:组织管理员可在系统管理中配置需要的数据源,其他用户可在表单中可视化设置表单字段与指定数据库表字段的映射关系,主外键字段关系。第二步:设置完成后,当用户提交表单或表单通过过程后,表单数据会根据配置的映射关系,自动同步到用户设置的自身交易表中,若需要修改已提交的表单数据,也只需在平台的数据管理模块修改,数据表会自动同步到相应的交易表中。通过第三方数据同步功能,百分点低代码平台能更好地融入客户已有的信息化体系。通知消息连接BPM型低代码平台涉及过程的提交、审核、填写、回退、抄送和催办等一系列动作,每一个动作都需要提醒相关责任人,因此,百分点低代码平台还设置了自身的消息提醒模块。但在实际使用过程中,可能需要将通知提醒通过原有的统一通知系统送达用户手中,做到通知消息的集中管理,方便用户的信息获取。因此,Clever Builder消息通知模块采用了可插拔设计,可通过配置、快速修改系统的通知送达方式,后续将连接钉钉和微信的相关消息通知本领,若客户有需要,也可在短时间内实现连接客户的通知中心。2. 过程引擎介绍Clever Builder进行过程结构的转换,以及过程的流转,都离不开平台中最核心的引擎之一——过程引擎。过程引擎承担了将用户可视化设置的过程转化为可施行的数据结构,并进行流转的职责。现今市面上已存在多种开源的过程引擎,为了保证过程引擎的规范性和可移植性,业界对过程引擎的结构界说了一些通用的规则:BPMN2.0。那么,什么是BPMN2.0,它又界说了哪些内容呢?交易过程模型注解(Business Process Modeling Notation -BPMN)是交易过程模型的一种标准图形注解。这个标准是由对象管理组(Object ManagementGroup-OMG)维护的。BPMN规范的2.0版本,当前已处于最终阶段了,计划不久就会完成,允许在BPMN的图形和元素中添加精确的技术细节,同时制定BPMN元素的施行语法。通过使用XML语言来指定交易过程的可施行语法,BPMN规范已演变为交易过程的语言,可以施行在任何兼容BPMN2的过程引擎中,同时依然可以使用强大的图形注解。它的优点在于:标准全面,可以涵盖过程中所有的内容。通用,只要是符合BPMN2.0语法的过程引擎,就可以施行生成的标准XML交易过程。下面我们对BPMN2.0标准的XML标签进行简单的说明。百分点大数据技术团队:低代码平台实践以上图的简单过程为例,来看一下对应的BPMN标准的XML格式。开始标签startEvent标签:开始节点标签,用于标识一个过程的开始。<startEvent  id=”startevent” name=”开始节点”>  </startEvent>1. 用户任务标签userTask标签:用户任务标签,是过程中需要人员参与的节点,不会自动通过,用于审批、填写等操纵,其中assignee属性标识了节点责任人信息。<userTask  id=”usertask3″ name=”人事部” flow:assignee=”毕竞”>  </userTask>  <userTask  id=”usertask1″ name=”部门领导”,flow:assignee=”罗方晋”>  </userTask>  <userTask  id=”usertask2″ name=”中心负责人” flow:assignee=”王一一”>  </userTask>2. 排他网关exclusiveGateway标签:排他网关,排他网关就是过程中的分支节点,用于建立分支,过程只会选择其中一条分支进行。<exclusiveGateway  id=”exclusivegateway1″ name=”Exclusive Gateway”>  </exclusiveGateway>3. 结束标签endEvent标签:结束标签,用于标识过程的结束。<endEvent  id=”endevent” name=”End”></endEvent>4. 连接线标签sequenceFlow标签:连接线标签,其中sourceRef属性标识了连接线连接的上一节点,targetRef属性标识了连接线连接的下一节点。连接线子标签conditionExpression用于标识该条连接线上的过滤条件。 这些标签可以准确的描述一个过程:<sequenceFlow  id=”flow4″ sourceRef=”exclusivegateway1″  targetRef=”usertask2″>       <conditionExpression  xsi:type=”tFormalExpression”>  <![CDATA[${((belongOperatorUtil.ToArray(“[\”\”]”,com_1b9386ed47629c65f)))}]]>  </conditionExpression>  </sequenceFlow>Clever Builder的过程引擎,完全符合BPMN2.0标准,因此具有很好的扩展性和兼容性。下面详细介绍Clever Builder过程的建立和流转过程。(1)过程发布在介绍发布的过程之前,我们需要先介绍几个概念:模板模板是指用户通过可视化界说形成的交易过程描述,它界说了过程的起始、结束、节点、连接线和其他内容。过程界说模板在用户进行发布操纵后,会生成相应的过程界说,过程界说完全继承了模板对于交易过程的描述,每一次的发布操纵都会为指定模板生成一个过程界说。若模板若作出了修改,新发布的过程界说也会随之变化。过程实例用户实际发起一个过程时,会生成对应过程界说的过程实例,它除了包含对应过程界说的内容外,还含有用户提交的数据、过程节点责任人和过程流转信息等内容。弄明白了上面的内容,我们可以更好地理解过程的发布过程。百分点大数据技术团队:低代码平台实践在过程发布的过程中,过程的描述数据格式进行了一次转换。百分点大数据技术团队:低代码平台实践首先,用户通过可视化方式建立的过程在数据库中以FlowNode、FlowEdge分为点和线的格式保存,该结构的优点在于前端建立展示过程图较为方便。当用户点击发布按钮时,过程将通过调用格式转换工具,将过程中的节点、线、条件等信息封装为一个对象,并进行相应的可施行测试。若测试通过,则会用对象生成一个完全符合BPMN2.0标准的XML格式文件。(2)过程流转过程引擎的流转简化过程如下:百分点大数据技术团队:低代码平台实践我们可以将其简化为三大部分:过程对象解析器上图中蓝色的部分为过程对象解析器,它在接收到过程实例的启动命令时,负责将XML格式的过程模板转化为可施行的Process内存对象,方便后续施行操纵。流转推进器图中绿色的部分为过程推进器。过程推进器维护了一个操纵栈,操纵栈中压入了所有待施行操纵,这些操纵可能是需要施行一段脚本,可能是需要解析一个表达式,它会将栈顶的操纵取出,判断具体如何施行,并在该操纵施行完成后,判断是否有待施行的下一步操纵,若有下一步操纵,将会有一条操纵被压入栈中。命令施行器图中橙色部分为命令施行器。命令施行器主要负责施行过程推进器中取出的操纵,它包含了多个拦截器,包括引擎的施行拦截器和用户自界说的拦截器等,它们将会在操纵施行时进行操纵的处理和施行。通过三大部分的配合,过程即可完成流转。3. 百分点低代码平台的优势市面上的低代码平台越来越多,那么百分点低代码平台相较于其他产品有什么优势,又有什么特点呢?相较于某些头部BPM型低代码平台,百分点低代码平台具有更好的开放本领。除了能够集成第三方系统的用户、组织架构,以及消息通知等本领,还支持和客户数据库进行连接,将表单数据连接到客户的交易数据库,从而能更好地融入客户的信息化系统中去,让客户能更好地“用起来”。目前,百分点低代码平台已在为某国家级信息服务平台提供服务,为该平台快速搭建了数十个分类信息录入运用,有效地支撑了该平台的日常运转。结语随着国内产业数字化转型和国家新基建的推进,会有越来越多的企业交易进行数字化升级,按需打造运用软件成为主流趋势。而低代码平台剥离了专业交易知识,转而通过平台提供一种让企业自己积累和分享专业知识及交易经验的标准和本领,对软件厂商来说降低了实施的成本,对企业来说提升自己的掌控力和交易响应本领,这是一个巨大的进步。大量国内外软件厂商和创业公司进入这一领域并开始服务越来越多的客户也充分证明了这种趋势。在后续的产品迭代中,百分点低代码平台将结合自身特点,深入与钉钉和企业微信的集成,借助更大的平台,探索市场。同时,将持续加强自身的平台本领和交易系统连接本领,更好地为客户创造价值。百分点科技产品团队抓住行业发展的机遇,结合自身产品优势,不断完善低代码平台本领,积极践行公司”用数据智能推动社会进步“的使命。

原创文章,作者:百分点科技,如若转载,请注明出处:https://www.iaiol.com/news/33954

(0)
上一篇 2022年1月11日 上午9:43
下一篇 2022年1月11日 上午9:45

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注