一种业务流程配置化生成与受控执行方法及系统与流程

摘要: 本发明涉及业务流程管理及数据处理,尤其涉及一种业务流程配置化生成与受控执行方法及系统。背景技术:1、随着线上服务平台逐渐向多业务场景和多项目复用方向发展,同一应...
一种业务流程配置化生成与受控执行方法及系统与流程

本发明涉及业务流程管理及数据处理,尤其涉及一种业务流程配置化生成与受控执行方法及系统。

背景技术:

1、随着线上服务平台逐渐向多业务场景和多项目复用方向发展,同一应用通常需要根据不同项目的服务内容、用户角色、数据状态及业务阶段提供不同的业务流程。为了降低针对不同项目重复开发的工作量,现有系统通常采用配置化方式描述服务项目、业务节点、数据内容和交互动作,并由终端根据配置结果完成相应的业务处理。随着业务类型和配置内容增加,业务流程中涉及的数据、权限、状态、动作以及终端版本等因素之间的关联关系也随之增多,不同配置内容还可能由不同人员或不同环节分别维护。

2、现有配置化业务流程在生成、发布和终端运行之间往往缺少统一的一致性约束,部分配置错误只有在终端实际加载或执行到对应业务节点时才会暴露。例如,业务节点引用的数据与实际输入不匹配、业务动作不满足当前权限或状态条件、配置所依赖的功能在当前终端版本中不可用等情况,均可能导致业务流程无法按照预期继续执行。尤其在业务流程持续更新、终端版本并存的情况下,配置内容与终端实际执行条件之间更容易出现不一致。因此,如何提高配置化业务流程与终端实际执行条件之间的一致性,并在流程投入运行前识别影响流程执行的配置异常,是现有技术有待解决的问题。

技术实现思路

1、为了克服现有技术的缺陷,本发明所要解决的技术问题在于提出一种业务流程配置化生成与受控执行方法及系统,采用以下技术方案:

2、一方面,本发明提供一种业务流程配置化生成与受控执行方法,包括:

3、s1:业务流程生成端获取业务服务配置数据,按稳定业务节点标识归并属于同一业务节点的配置项,生成记录节点顺序及节点进入条件的业务节点清单;

4、s2:业务流程生成端获取与业务执行终端对应的运行时能力目录,根据业务节点清单和运行时能力目录确定各业务节点关联的已编译能力及依赖等级,生成数据绑定清单、动作清单、状态清单和能力依赖清单,并与业务节点清单封装为业务服务流程模板包;

5、s3:业务流程生成端根据业务服务流程模板包中各清单的引用关系建立引用图,执行引用完整性、数据模式兼容性、动作执行条件及运行时版本兼容性校验,存在阻断级错误时停止发布;

6、s4:业务执行终端获取经校验的业务服务流程模板包、用户上下文和业务对象状态,根据业务节点清单中的节点进入条件、用户上下文及业务对象状态确定候选可执行业务节点;

7、s5:业务执行终端生成有序业务服务执行计划,将候选可执行业务节点的能力标识与运行时能力目录匹配;能力不可用时按依赖等级执行流程回退或节点跳过,能力可用时将对应业务节点及其动作意图与预编译业务处理器的关联写入上述执行计划;

8、s6:响应上述执行计划中的业务动作触发,根据上述关联确定预编译业务处理器,校验参数、用户权限及业务对象状态,通过后调用上述处理器,根据执行结果更新业务对象状态,并依据更新后的业务对象状态和节点进入条件确定后续可执行业务节点。

9、作进一步改进的,在步骤s2中,上述业务服务流程模板包还包括状态转换清单,上述状态转换清单中的状态转换记录包括源业务状态、动作意图标识和目标业务状态。

10、在步骤s3中,以业务状态为状态节点、以状态转换记录为有向边建立业务状态转换图,并根据动作清单和运行时能力目录校验各状态转换记录对应的动作意图是否对应已登记的动作处理能力。未建立对应关系时,将该状态转换记录确定为无效转换并产生阻断级错误。

11、作进一步改进的,在步骤s3中,上述动作清单中的动作记录还包括参数模式、权限条件和业务状态条件。

12、针对未被确定为无效转换的状态转换记录,根据上述参数模式、权限条件和业务状态条件执行组合校验,将通过组合校验的状态转换记录构成可执行状态转换图。

13、当业务状态具有进入路径、未被配置为流程结束状态且不存在后续可执行状态转换时,将该业务状态确定为异常终止状态并产生阻断级错误。

14、作进一步改进的,在步骤s3中,上述业务节点清单中的业务节点记录还包括支付依赖标识。

15、对于具有支付依赖标识的服务项目,判断上述可执行状态转换图中是否存在由订单已创建状态至支付已完成状态的第一可达路径,以及由支付已完成状态至服务可执行状态的第二可达路径。

16、任一可达路径不存在时产生阻断级错误。

17、作进一步改进的,在步骤s2中,上述动作清单中的动作记录包括动作意图标识、参数模式、权限条件和处理器能力标识,上述处理器能力标识对应运行时能力目录中登记的动作处理能力。

18、在步骤s5中,以上述处理器能力标识作为匹配键,将动作意图关联至业务执行终端中的预编译业务处理器。

19、作进一步改进的,在步骤s6中,根据参数模式校验动作参数,根据用户上下文校验权限条件,并根据业务对象状态校验动作执行条件。

20、当动作意图为支付动作时,根据处理器能力标识确定预编译的共享支付处理器,由上述共享支付处理器根据订单数据获取支付参数并调用支付能力,根据支付执行结果更新支付状态和订单状态。

21、作进一步改进的,在步骤s2中,上述能力依赖等级包括必需能力和可选能力,在步骤s2中,能力依赖等级包括必需能力和可选能力,能力依赖清单还记录各能力对应的最低运行时版本和回退能力,业务服务流程模板包还记录前一兼容版本和标准模板标识。

22、在步骤s5中,必需能力不可用时选择与当前运行时版本兼容的前一兼容版本,不存在兼容版本时采用标准模板。可选能力不可用时采用回退能力或跳过对应业务节点。

23、本发明另一方面提供一种业务流程配置化生成与受控执行系统,包括业务流程生成端、流程服务端、业务数据服务端和业务执行终端。

24、上述业务流程生成端包括依次连接的配置归并模块、流程模板生成模块和跨清单校验模块。上述流程服务端包括流程模板版本存储模块和项目模板关联模块。

25、上述业务执行终端包括模板包客户端、执行计划生成模块、动作意图分发模块、回退控制模块和运行时能力目录存储单元,运行时能力目录存储单元存储运行时能力目录。

26、上述业务流程生成端与流程服务端连接,上述流程服务端和业务数据服务端分别与业务执行终端连接。

27、执行计划生成模块分别与模板包客户端、运行时能力目录存储单元和动作意图分发模块连接,回退控制模块分别与模板包客户端、执行计划生成模块和运行时能力目录存储单元连接。

28、作进一步改进的,还包括软件构建模块、运行时能力目录生成模块和能力目录同步模块。

29、上述运行时能力目录生成模块读取软件构建模块中登记的预编译业务处理器、数据适配器和状态处理器的注册信息,生成与运行时版本对应的运行时能力目录。

30、能力目录同步模块与目标运行时版本对应的运行时能力目录提供给业务流程生成端,并同步至业务执行终端的运行时能力目录存储单元。

31、作进一步改进的,上述流程模板版本存储模块以不可变版本保存业务服务流程模板包,并记录兼容运行时范围和前一兼容版本。

32、上述业务执行终端还包括与模板包客户端连接的本地验证缓存。

33、上述回退控制模块在当前业务服务流程模板包完整性校验失败时调用本地验证缓存中已通过完整性校验的业务服务流程模板包,在必需能力不兼容时,控制模板包客户端取得对应兼容版本的业务服务流程模板包。

34、与现有技术相比,本发明的有益效果是:

35、其一,本发明根据业务服务配置数据形成业务节点清单,并结合与业务执行终端对应的运行时能力目录确定业务节点关联的已编译能力,将业务节点清单及相关清单封装为业务服务流程模板包,在发布前进行跨清单一致性校验,并在终端侧根据节点进入条件、业务对象状态及运行时能力匹配结果形成有序业务服务执行计划。由此使业务流程配置与终端实际具备的执行能力在发布和运行两个阶段建立对应关系,减少配置内容与终端执行条件不一致而导致的流程异常。

36、其二,通过状态转换记录建立业务状态转换图,并对状态转换对应的动作处理能力及执行条件进行校验,形成可执行状态转换图。对于具有支付依赖的服务项目,进一步校验订单已创建状态至支付已完成状态以及支付已完成状态至服务可执行状态之间的可达关系,可以在流程发布前发现缺少有效执行能力、异常终止或者必要业务状态衔接缺失的流程配置。

37、其三,通过处理器能力标识将动作意图与业务执行终端中的预编译业务处理器建立关联,并在业务动作触发时结合参数、用户权限和业务对象状态进行校验,使业务流程配置中的动作只能通过终端既有的处理能力执行,从而降低动作配置与终端执行逻辑、权限条件或业务状态不匹配造成的执行风险。