APP下载

HTML5技术的流程管理平台的升级改造

2021-04-11北京中电普华信息技术有限公司董爱强

电子世界 2021年6期
关键词:流程图插件引擎

北京中电普华信息技术有限公司 董爱强 王 莹 闫 丹

北京城市排水集团基建管理分公司 王兰帅

针对当前流程管理平台的现状,引入了基于HTML5技术的流程管理平台升级改造的架构体系。首先介绍了流程管理平台的现状、html5技术介绍,引入了基于HTML5技术的流程管理平台的升级改造,论述了其整体设计、关键技术和功能结构设计。该产品在原有流程管理平台的基础上,摆脱对Flash插件的依赖,实现跨浏览器、跨平台的通用流程产品,无需安装插件,开箱即用,更加安全、可靠、稳定,满足业务系统对流程产品的技术需求。

BPM实现了业务流程建模、运行、监控的全生命周期管理,为各类系统、微应用提供流程建模、运行、监控全生命周期体系管理,帮助企业建立标准而规范的业务流程体系,实现流程集约化、标准化。截止到2019年,SG-BPM支撑了包括网上国网、ECP2.0、PMS2.0、ERP集中部等115套业务系统,平均总部流程流转12万笔/日,平均单网省流程流转5万笔/日。国网外,SG-BPM已经在中国商飞、宿迁电厂、蒙西电力等项目上应用。

BPM流程设计器基于Flex技术。Adobe公司宣布2020年底将停止对该技术更新,其合作伙伴苹果、微软、谷歌、Facebook也宣布分阶段停止支持,2020年过后,主流浏览器无法打开BPM设计器,流程建模、运行监控等核心功能将受到影响。同时,由于Flash Player不在维护更新,存在安全漏洞和安全风险。因此,需要尽快对BPM设计器进行技术升级,保证BPM正常使用,更好的支撑泛在电力物联网的建设。

1 HTML5技术

HTML5是标准通用标记语言下的一个应用,也是一种规范,一种标准。它通过标记符号来标记要显示的网页中的各个部分。网页文件本身是一种文本文件,通过在文本文件中添加标记符,可以告诉浏览器如何显示其中的内容(如:文字如何处理,画面如何安排,图片如何显示等)。浏览器按顺序阅读网页文件,然后根据标记符解释和显示其标记的内容,对书写出错的标记将不指出其错误,且不停止其解释执行过程,编制者只能通过显示效果来分析出错原因和出错部位。但需要注意的是,对于不同的浏览器,对同一标记符可能会有不完全相同的解释,因而可能会有不同的显示效果。

技术优势:(1)跨平台性。用H5构建的应用可以兼容PC端与移动端、Windows与Linux、android与IOS。它可以轻易地移植到各种不同的开放平台、应用平台上,打破各自为政的局面。(2)本地存储。基于H5开发的轻应用比本地APP拥有更短的启动时间,更快的联网速度,而且无需下载占用存储空间。(3)无需依赖第三方浏览器插件。这使得用户用很少的流量就可以欣赏到炫酷的效果。

BPM 2.0是业务流程建模符号2.0的缩写。它由Business Process Management Initiative这个非营利协会创建并不断发展。作为一种标识,BPM 2.0是使用一些符号来明确业务流程设计流程图的一套符号规范,它能增进业务建模时的沟通效率。目前BPMN2.0是最新的版本,它用于在BPM上下文中进行布局和可视化的沟通。BPM 2.0的开发目标是创建一种标准,一种用于对业务流程建模的通用语言。是要提供被所有业务用户理解的一套标记语言,包括业务分析者、软件开发者以及业务管理者与监察者。因此,在设计流程图时,使用这种通用的符号,以供其它许多能够使用此国际标准符号的专业人员理解你的流程。这也是BPM符号2.0如此广泛,并被专业人员接受为表示流程的最佳解决方案。

2 基于HTML5技术的流程管理平台的升级改造

2.1 架构

图1 技术原理图

流程虚拟机是一个用来构建和执行流程图的简单的java类库。它充当着各种工作流、流程管理和编制流程语言的基础组件。在B P M提升方面,遵循国际组织B P M I(B u s i n e s s Process Management Initiative)的BPMN2.0标准,在此基础上提出对流程虚拟机的内核改造方案,使其具备快速开发基于BPMN2.0标准的流程图元的能力。

图1所示给出了该技术原理,改造后的流程虚拟机内核提供流程定义模型、流程调度框架、流程图元开发环境以及流程图元开发扩展点。流程定义模型保持不变,通过流程扩展节点的运行期行为,实现流程虚拟机内核对流程的描述建模能力;流程调度框架,使流程可以持续运行或从任意一个点重新切入继续运行;流程图元开发扩展环境及其扩展点,把流程在运行期的关键行为全部抽象出来,与流程的其他模块解耦合,在此基础上采用HTML5技术开发基于BPMN2.0标准的图元,如:人工活动、自动活动等。通过技术改造,构建了独立的流程虚拟机环境,解决了项目级BPM中模块间耦合度高,新增流程图元困难的问题,提高了平台扩展性。

2.2 关键技术特点

2.2.1 流程设计器

Adobe Flash Player目前存在着一个大问题,就是它会导致浏览器运行的效率大幅度降低,而且安全风险很高,问题很大。Adobe计划在2020年淘汰Flash Player,这将是万维网历史上的一个关键点。谷歌正在尽可能顺利地完成Flash Player的过渡,2020年12月之后Chrome将不再支持Flash Player。HTML5可视化可拖拽的流程设计器替换原Flash,满足主流浏览器、安全、稳定、可扩展成为了本课题研究的关键点和难点。

2.2.2 序列化及反序列化

依据BPMN2.0的标准以及原BPM的个性配置,需要对整个流程、图元属性、业务规则等持久化到数据库。同时在编辑流程时,已配置的需要可展现编辑。流程、图元属性、规则等需要大量时间对比和实现成为了本课题研究的关键点和难点。

2.2.3 交互接口

接口是设计器和后台进行数据交互方式,实现动态配置流程、业务操作、业务规则、人工任务等一系列的功能。对原有EOS的交互式接口整理并如何满足新设计器需求成为了本课题研究的关键点和难点。

2.2.4 引擎适应

流程引擎是BPM产品的核心,提供流程解析、流程驱动、流程调度、流程参数管理、流程并发控制、流程动态变更、流程模式控制和流程版本管理、流程定义工具、和流程应用工具、服务调用、接口调用和直接web访问;流程数据如何满足现有引擎,实现流程的正常流转,成为了本课题研究的关键点和难点。

2.3 功能设计

BPM在国网内已经平稳运行支撑了10年,相比于外部BPM产品而言,在国网公司实际应用经验更为丰富,在性能、安全、可靠性方面更加的性能优越和安全可靠,完全符合国网公司的特色需要。经过多年建设,BPM平台包含了流程中心、智能表单、流程引擎、流程设计器、服务编排等核心能力,构建了流程管理生态圈。但是由于BPM流程设计器是基于Flex技术,Adobe公司宣布2020年底将停止对该技术更新,其合作伙伴苹果、微软、谷歌、Facebook也宣布分阶段停止支持,BPM的核心功能将受到影响。为了摆脱对Flash插件的依赖,保证BPM正常使用,所以这次改造重点放在流程设计器、流程引擎、流程表单三部分,改造后使其更高效、便捷,能够实现多场景、一站式的流程全生命周期管理。如图2所示。

图2 功能设计图

结语:以流程引擎为核心,以BPMN2.0规范为标准,调整流程设计器的技术架构,将原有基于Flex技术的流程设计器改造成基于HTML5技术的流程设计器。同时针对流程设计器的改造,需要对流程引擎、流程表单进行适应性改造。通过对流程设计器、流程引擎、流程表单的技术改造,实现跨浏览器、跨平台的通用流程产品,满足业务系统对流程产品的技术需求。通过对流程设计器、流程引擎、流程表单的技术改造,摆脱对Flash插件的依赖,实现跨浏览器、跨平台的通用流程产品,无需安装插件,开箱即用,更加安全、可靠、稳定,满足业务系统对流程产品的技术需求。

猜你喜欢

流程图插件引擎
自编插件完善App Inventor与乐高机器人通信
蓝谷: “涉蓝”新引擎
基于jQUerY的自定义插件开发
专利申请审批流程图
专利申请审批流程图
MapWindowGIS插件机制及应用
无形的引擎
基于Revit MEP的插件制作探讨
基于Cocos2d引擎的PuzzleGame开发
宁海县村级权力清单36条