jbpm,即主流的工作流之一,在OA里面是一大重要内容,共占到60%,在大型企业项目中也是经常要用到的主要模块,因此在学习过程中,必须要高度重视起来,以下就是学习内容梳理性的总结。
工作流,即“业务过程的部分或整体在计算机应用环境下的自动化”。它主要解决的是“使在多个参与者之间按照某种预定义的规则传递文档、信息或任务的过程自动进行,从而实现某个预期的业务目标,或者促使此目标的实现”。(百度百科)
工作流,主要就为我们干了两件大事:定义流程、执行流程。
其实工作流图,从宏观上粗略的看待的话,它就是由点和线组成,只不过点和线的意义各不相同而已,因此定义流程时,主要是对点和线的描述,所以要学习工作流,首先要掌握工作流中的点和线
● 线(Transition)分为2种:
1. leavingTransition
离开线
2. arrivingTransition
到达线
● 点(Node)即节点,主要分为7种?:
1. startState
起始节点:任何流程定义必须要有起始节点,且不允许有到达线(arrivingTransition);该节点是一种伪状态节点,即不含实际意义。
2. endState
结束节点:不允许有离开线(leavingTransition);该节点是一种伪状态节点。
3. fork
分支节点:用来定义同步工作流。到达该节点时,会根据分支线(Transition)的数量创建相应的子节点。
4. join
汇合节点:用来定义同步工作流。当所有子节点到达该节点后,会将父节点的令牌指向到下一节点。
5. state
状态节点:表示一种等待状态,工作流进入该节点后会自动暂停。
6. decision
判断节点:完成条件流转的定义,它是一种自动节点。
7. tasknode
任务节点:用来完成任务分配的定义,包含该流程节点涉及到的一个或多个角色/用户。该节点是jbpm中最重要的节点。
● 点(Node)与线(Transition)的关系
一个节点可以有多个离开线,一个节点也可以有多个到达线。点与线共同构成了流程定义。
下节我会总结流程定义、流程实例与执行流程的关系及原理。