工作流模式_结构化模式(C4)

2024-04-09 17:38
文章标签 模式 工作 结构化 c4

本文主要是介绍工作流模式_结构化模式(C4),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

[b]两个结构化模式
这两个模式的共同点在于:模式所涉及流程的执行路径是由运行时决定的,而非设计时确定。包括:
[list]
[*] Arbitrary cycles(强制循环模式)
[*] Implicit termination(隐式终止模式)
[/list]

[color=red]WP_10、Arbitrary cycles(强制循环模式)[/color][/b]
描述:在一个流程实例中,有些活动是需要多次执行的。

[img]/upload/attachment/129072/dcda4986-6df6-3e68-a23b-c8b8131b42e9.jpg[/img]
图wp10:强制循环模式
[flash=500,400]http://www.workflowpatterns.com/patterns/control/images/cp10_flash.swf[/flash]
图wp10:强制循环模式(flash)


比如在一个审批流程中,如果经理不审批,则审批发起人需要重新提交审批申请,直到经理审批同意。利用xor_split节点,可以模拟出一条循环流程,在条件无法满足的情况下,循环部分会反复执行,图wp10中,auto活动2、3就是一个循环部分。


[color=red]WP_11、Implicit termination(隐式终止模式)[/color]
描述:在一个流程实例中,当执行完所有的激活的活动之后,该流程实例应该终止。

[img]/upload/attachment/129074/79c901b6-e8c2-3851-a9d9-5e4c7fed128b.jpg[/img]
图wp11:隐式终止模式

[flash=500,400]http://www.workflowpatterns.com/patterns/control/images/cp11_flash.swf[/flash]
图wp11:隐式终止模式(flash)


以上图例是个常见的设计图,有1个起始活动,3个终止活动(对于TW引擎而言,每个流程支持唯一起始活动,n个结束活动),在用流程建模工具设计流程的时候,要求有起始活动和结束活动,即显示告知引擎什么地方结束。TW工作流引擎不支持隐含终止模式,在流程设计的时候必须宣告确定结束的节点。
不过对于多结束活动而言,某个分支已经到达了结束活动,会对流程实例做个查询,没有处于激活或者处于运行态的活动,才会把流程状态也设置为结束,否则只是设置本身的结束活动为结束。

这篇关于工作流模式_结构化模式(C4)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/888806

相关文章

Java设计模式---迭代器模式(Iterator)解读

《Java设计模式---迭代器模式(Iterator)解读》:本文主要介绍Java设计模式---迭代器模式(Iterator),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录1、迭代器(Iterator)1.1、结构1.2、常用方法1.3、本质1、解耦集合与遍历逻辑2、统一

Java 线程安全与 volatile与单例模式问题及解决方案

《Java线程安全与volatile与单例模式问题及解决方案》文章主要讲解线程安全问题的五个成因(调度随机、变量修改、非原子操作、内存可见性、指令重排序)及解决方案,强调使用volatile关键字... 目录什么是线程安全线程安全问题的产生与解决方案线程的调度是随机的多个线程对同一个变量进行修改线程的修改操

SpringBoot集成LiteFlow工作流引擎的完整指南

《SpringBoot集成LiteFlow工作流引擎的完整指南》LiteFlow作为一款国产轻量级规则引擎/流程引擎,以其零学习成本、高可扩展性和极致性能成为微服务架构下的理想选择,本文将详细讲解Sp... 目录一、LiteFlow核心优势二、SpringBoot集成实战三、高级特性应用1. 异步并行执行2

Spring @Scheduled注解及工作原理

《Spring@Scheduled注解及工作原理》Spring的@Scheduled注解用于标记定时任务,无需额外库,需配置@EnableScheduling,设置fixedRate、fixedDe... 目录1.@Scheduled注解定义2.配置 @Scheduled2.1 开启定时任务支持2.2 创建

SpringBoot整合Flowable实现工作流的详细流程

《SpringBoot整合Flowable实现工作流的详细流程》Flowable是一个使用Java编写的轻量级业务流程引擎,Flowable流程引擎可用于部署BPMN2.0流程定义,创建这些流程定义的... 目录1、流程引擎介绍2、创建项目3、画流程图4、开发接口4.1 Java 类梳理4.2 查看流程图4

Redis Cluster模式配置

《RedisCluster模式配置》:本文主要介绍RedisCluster模式配置,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录分片 一、分片的本质与核心价值二、分片实现方案对比 ‌三、分片算法详解1. ‌范围分片(顺序分片)‌2. ‌哈希分片3. ‌虚

LiteFlow轻量级工作流引擎使用示例详解

《LiteFlow轻量级工作流引擎使用示例详解》:本文主要介绍LiteFlow是一个灵活、简洁且轻量的工作流引擎,适合用于中小型项目和微服务架构中的流程编排,本文给大家介绍LiteFlow轻量级工... 目录1. LiteFlow 主要特点2. 工作流定义方式3. LiteFlow 流程示例4. LiteF

SpringBoot集成LiteFlow实现轻量级工作流引擎的详细过程

《SpringBoot集成LiteFlow实现轻量级工作流引擎的详细过程》LiteFlow是一款专注于逻辑驱动流程编排的轻量级框架,它以组件化方式快速构建和执行业务流程,有效解耦复杂业务逻辑,下面给大... 目录一、基础概念1.1 组件(Component)1.2 规则(Rule)1.3 上下文(Conte

详解如何使用Python构建从数据到文档的自动化工作流

《详解如何使用Python构建从数据到文档的自动化工作流》这篇文章将通过真实工作场景拆解,为大家展示如何用Python构建自动化工作流,让工具代替人力完成这些数字苦力活,感兴趣的小伙伴可以跟随小编一起... 目录一、Excel处理:从数据搬运工到智能分析师二、PDF处理:文档工厂的智能生产线三、邮件自动化:

基于Python开发一个有趣的工作时长计算器

《基于Python开发一个有趣的工作时长计算器》随着远程办公和弹性工作制的兴起,个人及团队对于工作时长的准确统计需求日益增长,本文将使用Python和PyQt5打造一个工作时长计算器,感兴趣的小伙伴可... 目录概述功能介绍界面展示php软件使用步骤说明代码详解1.窗口初始化与布局2.工作时长计算核心逻辑3