希赛考试网
首页 > 软考 > 系统集成项目管理工程师

flowable工作流原理

希赛网 2023-12-19 12:11:45

随着企业数字化转型的深入,工作流引擎越来越成为企业管理的利器。Flowable作为一款开源的工作流引擎,被越来越多的企业所采用。本文将从多个角度分析Flowable工作流原理。

一、工作流概述

工作流是将业务流程转化为计算机可执行的过程,并通过流程可视化的方式展现给用户。工作流引擎则是实现该计算机可执行过程的工具,它能够将任务分解为多个节点,并制定节点之间的执行顺序及相应的条件,提供任务的分配、办理、节点间的消息通知等全套支持工作流执行的功能。

二、Flowable工作流特点

Flowable 是一个专为Java 解析设计的工作流引擎,提供了属性配置、spring 配置、Java Configuration 多种方式对工作流进行配置;简单易于学习,有良好的中文文档支持,注重集成与扩展;以及社区活跃等特点。

Flowable支持的工作流模式包括顺序流、分支流、并行流、加签流等,支持复杂的流程设计。同时,Flowable工作流支持工作流的监控、管理和运维,可通过Flowable Modeler进行工作流建模,支持将BPMN、DMN、CMMN文件部署到Flowable引擎中运行。

三、Flowable工作流的逻辑结构

Flowable工作流基于Activiti6流程引擎改进而来,具有Activiti6流程引擎的特性和优点。其逻辑结构主要包括以下几个部分:

1.根据BPMN 2.0标准建立流程模型:

模型中包含了整个流程的元素以及元素之间关系的描述,元素包括了节点、边界事件、网关等信息。

2.将模型解析成我们最终要执行的流程实例:

解析的过程中按照节点顺序构建了一个称为Execution的对象,并将流程实例的状态永久化到关系型数据库表中。

3.流程实例状态变化:

根据各类事件节点,处理特定业务逻辑,改变流程实例的状态。这个过程是通过触发事件机制来实现的,同时也是最核心的处理逻辑。

4.流程图的展现:

在整个流程实例状态变化的同时,还要保证流程图的实时展现。一般会将BPMN文件解析后渲染成svg格式。

四、Flowable工作流的执行逻辑

Flowable的工作流引擎主要实现两个核心流程,即流程定义和流程实例。

- 流程定义

流程定义指的是一个BPMN文件,包括了整个流程的元素和流程图的展现。在Flowable中,通过 Flowable Modeler创建一个流程定义,先将模型存储在数据库中,之后可通过deploy 部署在Flowable引擎中。

- 流程实例

流程实例指根据流程定义创建实际的流程对象,并对流程进行启动、执行、管理。在Flowable中,流程实例就是一个特定的流程定义在特定时间执行时的一个对象。

五、Flowable工作流在实践中的应用

Flowable可以作为公司内部业务流程的应用,例如审批流程、请假流程、采购流程和付款流程等。其中,Flowable的表单工具可以帮助业务人员快速构建表单,降低开发和测试的成本。

Flowable也可以用于自动化的场景,比如自动化测试流程。将测试用例转化为Flowable的流程,通过开发自定义代码节点将流程执行结果利用邮件方式发送到目标接受邮箱,从而实现整个自动化流程的无人值守。

扫码咨询 领取资料


软考.png


系统集成项目管理工程师 资料下载
备考资料包大放送!涵盖报考指南、考情深度解析、知识点全面梳理、思维导图等,免费领取,助你备考无忧!
立即下载
系统集成项目管理工程师 历年真题
汇聚经典真题,展现考试脉络。精准覆盖考点,助您深入备考。细致解析,助您查漏补缺。
立即做题

软考资格查询系统

扫一扫,自助查询报考条件