这是我们(东方易维)工作流产品设计过程中采取的设计:
一、流程实例的状态
状态分为5种:实例化、执行中、挂起、手工结束、正常结束。
状态的变迁如下图:
二、节点实例的状态
状态分为5种:实例化、执行中、挂起、手工结束、正常结束。
状态的变迁如下图:
三、具体节点的状态
细分:
A、人工节点、等待节点
这两个节点被触发后存在一个执行等待的过程,所以可以被用户直接挂起和手工结束。人工节点的挂起意味着所有未完成工作项的挂起,同时相应时间服务的时间计算的挂起。手工结束会使流程跳过该节点(所有工作项手工结束),继续往后流转。
B、开始节点、结束节点、分支节点、自动节点
这些节点的特点在于被触发后立刻执行和流转,所以不会存在挂起和手工结束的状态。
C、并发节点、汇聚节点
并发节点和汇聚节点不存在挂起的状态,同时不能被用户直接手工结束,它们的状态受流程实例状态和相关节点实例状态的影响。
并发节点和汇聚节点的情况复杂一些,分模式讨论
图1
1、同步汇聚(图1)
根据情况触发节点0、节点1