JBPM基于Spring系统工作流平台整合2------整合原理
声明:该文系作者原创,如您用于商业用途或者论文发表,请您一定要通知作者本人同意方可引用。
前提:首先本文的整合指的范围比较大,不仅指系统和JBPM之间的整合,而是对于系统适应不同工作流产品(遵循WFMC标准)的快速整合。
工作流平台
1、IBM的Flowmark/MQ Series
2、微软的Workflow Designer for Exchange
3、JBPM-jboss
4、OsWorkFlow-opensymphony
5、普元EOS
6、协同SynchroFlow
7、其它
WFMC定义的流程模型
WFMC描述的通用工作流程产品结构
工作流基本概念
工作流(workflow):工作流就是业务流程的计算机化或自动化
工作流系统(workflow management systems (WFMS)):定义、创建、执行工作流的系统,通过软件定义、创建工作流并管理其执行
WFMC:是由约300家成员参加的组织,基于参考模型定义了一系列的标准。参考模型用例(use case)的形式描述了工作流系统和其他相关部分之间的关系。XPDL是WFMC制定的描述业务流程控制流(control flow )的XML格式规范
BPM:Business Process Management 业务流程管理
工作流引擎(engine) :核心组件,负责生成流程运行时的各种实例及数据,以及监视和管理流程的运行
流程定义(process definition) :预先定义的业务逻辑,对一个流程抽象的对象化定义,工作流的流程的完整定义,包括节点和节点之间的走向等关键信息。通常以xml格式提供
流程实例(process instance) :业务的实际流转过程
节点(node):对流程中的过程环节/行为的抽象对象化定义
参与者(actor) :任务的参与者(可能是人也可能是角色或是组织等)
任务(task) :业务逻辑上,会呈现给参与者处理的元素
任务实例(task instance) :业务实际流转过程中,生成的需要参与者进行参与的实际内容
流转(transition) :连接业务逻辑不同节点的桥梁,也是业务实例进行流转的依据。描述流程中从一个结点到另一个结点的状态转换过程,因此一个转向一定有一个源结点和一个目标结点
工作列表(worklist):根据实际应用的需求,需要展示给参与者的任务实例列表
使用工作流什么
通常来说,作为工作流中间件平台来说,其功能覆盖面较广,但对于整合来说,我们使用的主要如下:
1、流程模型的定义和管理;
2、流程引擎的使用,通俗来说,也就是工单从一个节点到另一个节点的扭转,并且保证运行到正确的节点;
系统和JBPM整合思想
基于spring,以接口方式通过系统工作流中间层调用方式实现扭转。以JPDL模型中的EVENTS方式调用系统接口。统一数据库,事务交由系统统一托管。