流程引擎系统、业务处理方法及装置与流程

文档序号:18475059发布日期:2019-08-20 20:54阅读:314来源:国知局
流程引擎系统、业务处理方法及装置与流程

本发明涉及业务处理技术领域,具体涉及一种流程引擎系统、业务处理方法及装置。



背景技术:

目前流程引擎系统主要有jbpm(javabusinessprocessmanagement,业务流程管理),还有其他自主规范的流程引擎,比如国内的workflow等。这些产品大都基于java语言,优点是配置灵活,缺点是流程与数据绑定在一起,代码无法复用,每个流程节点需要单独开发代码,与最大化复用代码的编程原则不符,在基于流程引擎建立业务逻辑时效率较低。



技术实现要素:

为此,本发明实施例提供一种流程引擎系统、业务处理方法及装置,以解决现有技术中代码无法复用的问题。

为了实现上述目的,本发明实施例提供如下技术方案:

根据本发明实施例的第一方面,提供一种流程引擎系统,包括:流程模板模块、驱动引擎模块及数据库;所述流程模板模块,用于确定当前业务执行逻辑所使用的业务流程模板;所述驱动引擎模块,用于提供当前业务执行逻辑下的基础逻辑框架;所述数据库,用于保存各种业务模板及业务实例;其中,业务流程模板与业务数据之间是相互解耦的。

进一步地,还包括:流程实例模块;所述流程实例模块,用于确定当前业务执行逻辑下的流程实例。

进一步地,还包括:统一接口;所述统一接口,用于读取各种类型的业务数据。

进一步地,还包括:配置界面模块;所述配置界面模块,用于根据用户的操作指令,指定需要使用的业务流程模板。

进一步地,还包括:绘制界面模块;所述绘制界面模块,用于根据当前业务执行逻辑所使用的业务流程模板以及当前业务执行逻辑的执行进度,绘制当前业务执行逻辑的执行进度图。

根据本发明实施例的第一方面,提供一种基于上述第一方面中任一种可能的实现方式所提供的流程引擎系统的业务处理方法,包括:

获取待处理的业务数据;

基于流程引擎系统提供的业务流程模板,对所述业务数据进行处理,所述业务流程模板包含业务执行逻辑,所述业务数据与所述业务流程模板之间是相互解耦的。

进一步地,所述业务流程模板是基于所述业务执行逻辑对应的应用场景所确定的。

进一步地,所述业务流程模板是基于所述业务执行逻辑对应的应用场景所确定的。

根据本发明实施例的第三方面,提供一种业务处理装置,包括:

获取模块,用于获取待处理的业务数据;

业务处理模块,用于基于流程引擎系统提供的业务流程模板,对所述业务数据进行处理,所述业务流程模板包含业务执行逻辑,所述业务数据与所述业务流程模板之间是相互解耦的。

根据本发明实施例的第四方面,提供了一种电子设备,包括:

至少一个处理器;以及

与处理器通信连接的至少一个存储器,其中:

存储器存储有可被处理器执行的程序指令,处理器调用程序指令能够执行第二方面的各种可能的实现方式中任一种可能的实现方式所提供的业务处理。

本发明实施例具有如下优点:由于业务数据是作为独立的存在,不与业务流程产生耦合,业务流程作为业务对象,只关注使用者的操作步骤、权限等问题,从而可最大化的复用代码。

附图说明

为了更清楚地说明本发明的实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是示例性的,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图引伸获得其它的实施附图。

本说明书所绘示的结构、比例、大小等,均仅用以配合说明书所揭示的内容,以供熟悉此技术的人士了解与阅读,并非用以限定本发明可实施的限定条件,故不具技术上的实质意义,任何结构的修饰、比例关系的改变或大小的调整,在不影响本发明所能产生的功效及所能达成的目的下,均应仍落在本发明所揭示的技术内容得能涵盖的范围内。

图1为本发明实施例提供的一种流程引擎系统的结构示意图;

图2为本发明实施例提供的一种流程引擎系统的整体框架示意图;

图3为本发明实施例提供的一种业务处理方法的流程示意图;

图4为本发明实施例提供的一种请假审批的业务流程示意图;

图5为本发明实施例提供的一种业务处理装置的整体结构示意图;

图6为本发明实施例提供的一种电子设备的结构示意图。

具体实施方式

以下由特定的具体实施例说明本发明的实施方式,熟悉此技术的人士可由本说明书所揭露的内容轻易地了解本发明的其他优点及功效,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

目前流程引擎系统主要有jbpm,还有其他自主规范的流程引擎,比如国内的workflow等。这些产品大都基于java语言,优点是配置灵活,缺点是流程与数据绑定在一起,代码无法复用,每个流程节点需要单独开发代码,与最大化复用代码的编程原则不符,在基于流程引擎建立业务逻辑时效率较低。

针对上述情形,如图1所述,示出了本发明具体实施例一种流程引擎系统的结构示意图,包括:流程模板模块1、驱动引擎模块2及数据库3;所述流程模板模块1,用于确定当前业务执行逻辑所使用的业务流程模板;所述驱动引擎模块2,用于提供当前业务执行逻辑下的基础逻辑框架;所述数据库3,用于保存各种业务模板及业务实例;其中,业务流程模板与业务数据之间是相互解耦的。

需要说明的是,本发明实施例本身是解决用户的业务问题,其本质是业务操作流程。每个流程的输入与输出以数据的形式表现,可以理解为数据是业务流程的副作用,有时是业务操作的目的,但本质还是以业务流程为核心的,用户只需要按照流程做事就行了,具体产生的数据是操作结果的抽象,并不是用户层面需要关心的问题。现有的流程引擎需要对数据进行编程技术方面的扩充(比如用数据状态对应各个流程节点),才能与流程绑定起来,实现流转。或者,为每个节点开发单独的代码以实现业务处理,使得开发工作变得极为复杂,产生大量冗余代码。

而在本发明实施例中,数据完全表示业务操作的输入或输出对象,不包含任何状态、权限等的数据,也就是说数据是纯净的业务数据。比如,一个文件就是一个文件,除了文件内容、存放位置等数据本身的信息外,不包含状态、权限、操作人等流程相关的信息。这样一来,针对数据的操作,就可以提供单独的接口,这些接口仅仅与数据本身相关,不用为不同的流程、不同的权限、不同的用户编写不同的代码,从而实现接口的完全复用。通常提到的数据状态,可以对应流程节点,权限管理对应流程节点,操作人也对应流程节点。

本发明实施例提供的流程引擎系统,由于业务数据是作为独立的存在,不与业务流程产生耦合,业务流程作为业务对象,只关注使用者的操作步骤、权限等问题,从而可最大化的复用代码。

在本发明任一上述具体实施例的基础上,提供一种流程引擎系统,还包括:流程实例模块;所述流程实例模块,用于确定当前业务执行逻辑下的流程实例。

在本发明任一上述具体实施例的基础上,提供一种流程引擎系统,该流程引擎系统还包括:统一接口;所述统一接口,用于读取各种类型的业务数据。

在本发明任一上述具体实施例的基础上,提供一种流程引擎系统,该流程引擎系统还包括:配置界面模块;所述配置界面模块,用于根据用户的操作指令,指定需要使用的业务流程模板。

在本发明任一上述具体实施例的基础上,提供一种流程引擎系统,该流程引擎系统还包括:绘制界面模块;所述绘制界面模块,用于根据当前业务执行逻辑所使用的业务流程模板以及当前业务执行逻辑的执行进度,绘制当前业务执行逻辑的执行进度图。另外,结合上述流程引擎系统实施例及实际应用场景,流程引擎系统的整体框架可参考图2。

如图3,示出本发明具体实施例一种基于上述任一流程引擎系统实施例所提供的流程引擎系统的业务处理方法,其对应的整体流程图,该方法包括:s1、获取待处理的业务数据;s2、基于流程引擎系统提供的业务流程模板,对所述业务数据进行处理,所述业务流程模板包含业务执行逻辑,所述业务数据与所述业务流程模板之间是相互解耦的。

本发明实施例提供的业务处理方法,由于业务数据是作为独立的存在,不与业务流程产生耦合,业务流程作为业务对象,只关注使用者的操作步骤、权限等问题,从而可最大化的复用代码。

在本发明任一上述具体实施例的基础上,提供一种业务处理方法,所述业务流程模板是基于所述业务执行逻辑对应的应用场景所确定的。

在本发明任一上述具体实施例的基础上,提供一种业务处理方法,所述应用场景为假条审批场景或购物场景。以假条审批场景为例,假条审批对应的业务流程与业务数据(也即请假条数据)之间的无关性可以由图4体现。

如图5,示出本发明具体实施例一种业务处理装置的整体结构示意图,包括:

获取模块a01,用于获取待处理的业务数据;

业务处理模块a02,用于基于流程引擎系统提供的业务流程模板,对所述业务数据进行处理,所述业务流程模板包含业务执行逻辑,所述业务数据与所述业务流程模板之间是相互解耦的。

本发明实施例提供的装置,由于业务数据是作为独立的存在,不与业务流程产生耦合,业务流程作为业务对象,只关注使用者的操作步骤、权限等问题,从而可最大化的复用代码。

在本发明任一上述具体实施例的基础上,提供一种业务处理装置,所述业务流程模板是基于所述业务执行逻辑对应的应用场景所确定的。

在本发明任一上述具体实施例的基础上,提供一种业务处理装置,所述应用场景为假条审批场景或购物场景。

举个例子如下:

图6示例了一种电子设备的实体结构示意图,如图6所示,该电子设备可以包括:处理器(processor)610、通信接口(communicationsinterface)620、存储器(memory)630和通信总线640,其中,处理器610,通信接口620,存储器630通过通信总线640完成相互间的通信。处理器610可以调用存储器630中的逻辑指令,以执行如下方法:获取待处理的业务数据;基于流程引擎系统提供的业务流程模板,对所述业务数据进行处理,所述业务流程模板包含业务执行逻辑,所述业务数据与所述业务流程模板之间是相互解耦的。

此外,上述的存储器630中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的方法,例如包括:获取待处理的业务数据;基于流程引擎系统提供的业务流程模板,对所述业务数据进行处理,所述业务流程模板包含业务执行逻辑,所述业务数据与所述业务流程模板之间是相互解耦的

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1