流程图是描述业务流程的一种图形化的表述方式,widely用于各种业务流程的分析和优化。Flowable是一个开源的工作流引擎,用于设计和执行业务流程。本文以Flowable 6.6.0版本的流程图组件为例,对其中的一些关键术语进行详细的解读。
一、流程定义(Process Definition)
流程定义是对一个业务流程运行规则和流程顺序的描述,是流程图的静态部分。它包含流程的全部信息,如任务、网关、事件等组件以及它们之间的关系,是流程实例执行的基础。
二、流程实例(Process Instance)
流程实例是流程定义的运行时表现,是流程图动态部分。当一个流程定义被启动后,就会产生一个该流程定义的实例。多个实例可以并行执行,每一个实例都拥有独立的数据和状态。
三、任务(Task)
任务是流程中一个原子工作单元,由某个参与者来完成,比如填写表单、审批等。完成任务后,流程才能向下继续执行。一个流程定义中可以包含多个任务。
四、用户任务(User Task)
用户任务专门指需要人工干预的任务,需要指派给某个人来完成,不会自动执行。
五、服务任务(Service Task)
服务任务是系统自动执行的任务,用于调用某个服务或执行某个操作,不需要人工处理。
六、排他网关(Exclusive Gateway)
排他网关用于判断流程走向。当流程执行到此,会根据判断条件选择其中一个分支继续执行下去。
七、并行网关(Parallel Gateway)
并行网关用于创建并行分支,使得流程能够同时以多条路径继续推进,从而提高流程执行效率。
八、汇合网关(Inclusive Gateway)
汇合网关将并行分支汇聚到一起,多条路径会汇成一条继续向下执行。通常与并行网关配对使用。
九、结束事件(End Event)
结束事件表示流程执行终止。当流程执行到一个结束事件后,该实例结束。
十、顺序流(Sequence Flow)
顺序流用于连接流程中各个组件,定义流程的执行路径和顺序。它们用箭头表示执行方向。
通过对Flowable流程图组件的这些关键术语解析,可以更好地理解流程图的语义,帮助我们正确地设计业务流程。