驰骋工作流引擎JFlow与activiti的对比 -总结

JFlow工作流项目集成案例_Java开源项目 RuoYi v4.1.0 RuoYi平台简介 RuoYi是一个后台管理系统,基于经典技术组合(Spring Boot、Apache Shiro、MyBatis、Thymeleaf)主要目的让开发者注重专注业务,降低技术难度,从而节省人力成本,缩短项目周期,提高软件安全质量。 JFlow工作流 驰骋工作流引擎研发与2003年,具有.net与java两个版本,这两个版本代码结构,数据库结构,设计思想,功能组成, 操作手册,完全... 阅读详情

 

 

共同点:

  1. 嵌入式的工作流引擎,降低集群复杂性。
  2. 严格而灵活的流程版本控制
  3. 支持多种数据库
  4. 支持多种流程设计模式
  5. 成熟度高的开源工作流,具有可靠的稳定性和性能。

 

区别:

  1. 流程定义方式:

ACTIVITI :采用xml的方式,通过拼字符串的方式完成,所以流程定义时的结果不直观、不方便。

JFLOW:拥有自己的流程设计器和表单设计器,画布性质的,所见即所得。包括流程运转条件、方向条件等。

  1. 面向使用对象:

ACTIVITI :由于设计方式,只能面向流程开发人员。

JFLOW:既面向流程开发人员又面向业务人员,即使不会编程,也可以进行流程设计。

  1. 节点类型:

ACTIVITI :开始节点、结束节点、自动节点、任务节点、fork分支、join联合等多种节点。通过多种节点的配合以及事件等使用,组成流程。

并且,开始节点必须有一个向外的流向。

JFLOW:普通节点、分流节点、子线程节点、合流节点。

开始节点属于普通节点,可以做为一个单节点的流程,没有流向。

结束节点由CC自动判断定义。

CC中的循环是通过方向条件判断,同步、聚合等是由合流节点。

  1. 对复杂流程的支持:

ACTIVITI :不适合非常复杂的流程,他只是提供了一套丰富的工作流模型,可以让你去做任何事情,即便违反工作流规范。

JFLOW:通过节点运行规则、方向条件、丰富的事件、运行模式和表单解决方案,完全满足复杂的流程运转,对任何情况,都是可控的。

  1. 对历史数据的挖掘:

ACTIVITI :对历史数据的支持不是很好,比如,子任务不能写入历史之类。当然,通过修改代码与BUG,也是可以实现的。

JFLOW:具有轨迹功能,即对某一个流程运行产生数据的保存,流程运行中,可以查看相关节点的处理信息与流程数据,流程结束后也可以。

表单集成

因为activiti 仅仅是一个流程引擎,所以无可比性,这里不做对比。仅仅说明表单引擎与流程引擎在业务系统中的应用。

 

表单引擎与流程引擎的关系

我们把BPM系统比喻一部汽车,那么车的控制系统,就象流程引擎,比如:刹车、油门、离合、方向灯,就是车的控制系统。车的车厢就是表单,而货物就是数据。

 

我们研究汽车不能把车的控制系统与车的拉货分开讨论的。

工作流程在运行的过程中,他的主要目的就是协调各个部门,人员,岗位处理业务 流水线化。

流程在运动过程中,需要操纵表单数据的分合,或者需要读取表单数据进行方向转向、流程业务处理的控制工作。

 

最简单的请假流程-根据表单的请假天数来判断流程的分支

 

 

可以方便的可视化的设计方向条件

 

 

流程引擎操纵表单引擎的一个案例

比如:在JFlow的分合流里, 如下流程:

 

项目经理下达任务填写节点:

 

每个销售人员填写数据节点表单:

 

数据汇总节点(数据汇总):

 

JFlow认为一个流程引擎与表单引擎就是

 

 

对多种表单的支持

简洁明快的CCForm

 

 

 

 

Word文档支持

 

Excel表单的支持

 

 

 

表单树的支持

 

 

 

 

符合中国特色个性化JFlow功能

如果使用符合中国特色的流程引擎,有些牵强,因为一些规则,在国外也需要用到,只是国外的开发者,不想把他们抽象出来。

在国内的开发者,与实施人员要求个性化定制要求比较高,一起需要基于设置开发,所以这对流程引擎的设计者对业务规则的抽象要求提出更高的水平。

并不能说每个属性设置都属于中国特色,以下以几个功能来说明该问题,为什么activti没有涉及到这些功能,因为他们对流程引擎的发展定位不同。

 

流程属性

流程属性是控制整个流程的规则的设置。

比如单据编号生成规则,

每个流程属性,都是从实际也规则走

JFlow提供了丰富的流程属性定义规则,让我们开发

 

 

多种接受人规则

 

接受人员投递路径自动记忆

 

发起前置导航

 

 

节点属性

 

方向条件可视化配置

以表单字段

以SQL表达式

以定义参数

以当前操作员组织机构     

 

 

 

Java四大开源工作流引擎深度对比:Shark、osworkflow、jbpm与jflow的技术选型指南 本文深度对比了Java四大开源工作流引擎Shark、osworkflow、jbpm与jflow的核心特性与适用场景。Shark严格遵循XPDL标准,适合跨系统集成;osworkflow轻量灵活,基于状态机模型;jbpm功能全面,适合复杂业务流程;jflow开箱即用,贴合国内OA场景。文章为企业级项目技术选型提供了实战指南。 阅读详情

相关推荐

驰骋工作流引擎JFlow与activiti的对比之3种基于状态的模式

延迟选择(Deferred Choice) 流程中某个点可以有多个分支进行选择。不是基于简单的数据或者决定就可以很明显地作出选择,而是会向系统或者执行环境提供多种可选择的分支;但是又不同于AND-Split模式,延迟选择只能选择一个分支执行,一旦选择了其中第一个分支,那么其他分支就会被撤销。这种延迟一直会持续到第一个选择分支开始实际运行。 例子:收到的一批商品运送到各个部门,到底选择什么样的运行...

zhmengjuan的博客 691

第一章 若依-JFlow的配置与启动

Ruoyi是一款开源的后台管理admin框架,JFlow 是一款经典的纯国产全开源的工作流引擎,该版本是两者的完美结合。本文主要介绍了Ruoyi-JFlow框架的下载、配置与启动

iCode504的博客 5049

驰骋工作流引擎JFlow与activiti的对比之4种高级分支同步模式

多重选择(Multiple Choice) 在流程中,当一个活动完成后,有多个分支进行选择,可以选择执行其中的一个或者N个分支。 例子:比如去世博园玩,在门口检票后,可以选择A-E个片区中的N个进行观光。 ACTIVITI 中的支持情况: 1.JPDL方式不支持先定义好这里的几种,然后根据条件去筛选其中的几种进行,但是ACTIVITI.4之后支持一种叫foreach的节点,允许我们在运行...

zhmengjuan的博客 826

驰骋工作流引擎JFlow与activiti的对比之5种基本控制流模式的对比

前言 为了更好的说明activiti 与jflow的两款工作流引擎的特点与区别,我们按照如下几个方面做一次全面的、客观的对比。       首先activiti是国外的一款开源的工作流程引擎,在国际上影响比较深远与广泛,解决了BPM领域的很多问题,值得我们赞赏。他的boss是jbpm的前身。       JFlow是济南驰骋公司开放的一款工作流程引擎,JFlow的前身是CCFlow,ccfl...

zhmengjuan的博客 2916

基于STM32 HAL库的L298N四驱电机PWM调速与方向控制实战

本文详细介绍了基于STM32 HAL库驱动L298N电机控制板实现四驱小车PWM调速与方向控制的实战方法。涵盖硬件连接、GPIO与定时器配置、PWM生成、方向控制逻辑及电源管理等核心内容,并提供代码优化与常见问题解决方案,帮助开发者快速实现高效稳定的电机控制。

jump7的博客 221

营销反作弊之 异常行为分析模型(一),附带python代码

通过对用户行为进行深入的分析,识别出与常规模式不符的异常行为,可以有效检测并阻止虚假广告点击、刷单、点击欺诈等欺诈行为。本文将详细探讨营销反欺诈中异常行为分析的方法,介绍如何通过数据采集、清洗、行为建模与异常检测,准确识别潜在的欺诈行为,并提供 Python 实现代码示例。**监督学习 (Supervised Learning):**在标注数据的帮助下,训练机器学习模型使其能预测未知数据的结果。营销反欺诈异常行为分析的整体流程涉及多个环节,确保通过对用户行为的深入分析,及时识别潜在的欺诈行为。

viviwiky的博客 1230

驰骋工作流引擎JFlow与activiti的对比之4种包含多实例的模式

无同步的多实例(MIwithout) 在流程中,一个活动可以激活多个实例,每个实例相互独立,并不需要在后面进行同步。 例子:比如用户购买了N本书,于是后续的支付账单、更新客户可以以本书为单位各自执行。 ACTIVITI 中的支持情况: 支持这种模式,但是不允许在后面进行结束动作。 JFLOW中的支持情况: 分合流与父子流程支持这种模式,分合流上面已经讲过,下面说下父子流程。 ...

zhmengjuan的博客 546

GPU基准测试全攻略:从驱动验证到深度学习环境部署

GPU基准测试是评估显卡性能与稳定性的核心方法,其原理在于通过标准化负载程序,对GPU的计算单元、显存和散热系统进行压力测试。这项技术的价值在于,它能科学量化硬件性能,确保软件环境配置正确,为深度学习、科学计算等重负载任务提供稳定基础。在实际应用场景中,无论是新卡验机、排查深度学习环境问题(如“warning: no usable gpu found”报错),还是验证“PyTorch GPU版本安装”后的实际算力,系统的基准测试都是不可或缺的工程实践环节。通过结合通用计算测试与深度学习框架验证,用户可以提前

weixin_30080745的博客 342

驰骋工作流引擎JFlow与activiti的对比之2种结构化模式

任意循环(Arbitrary Cycles) ACTIVITI : 某一个或多个活动可以反复执行。 例子:用户买了瓶汽水,拿到汽水后,中了一瓶,又去兑换了一瓶汽水,如果又中了,再去兑换一瓶汽水…. JFLOW: 完全是条件判断,在表单中增加一个审核组件,就可以把每次校验的信息,写入里面,完整的显示出来整个轨迹。   隐式终止(Implicit Termination) ACTI...

zhmengjuan的博客 640

SolidWorks与Python二次开发实战:从宏录制到自动化脚本

本文详细介绍了利用Python对SolidWorks进行二次开发的实战方法。通过宏录制获取操作指令,再将其转换为Python脚本,工程师可以高效实现建模、出图等重复任务的自动化,显著提升设计效率。文章涵盖了环境搭建、代码转换、调试技巧及完整实战案例,为工程师提供了从入门到精通的完整路径。

weixin_29082143的博客 944

Python电商网站全站爬虫实战:以京东为例的数据采集与分析

随着电子商务的蓬勃发展,电商数据已成为市场研究、竞争分析和消费者行为研究的重要资源。本文详细介绍了如何使用Python最新技术栈构建一个高效的电商网站全站爬虫,以京东为例实现商品数据的自动化采集。文章涵盖了爬虫的法律与伦理考量、技术选型、反爬虫策略应对、分布式架构设计以及数据存储方案,并提供了完整的代码实现。本爬虫系统采用Scrapy-Redis分布式框架、Selenium动态渲染、智能代理轮换和机器学习验证码识别等先进技术,能够稳定高效地抓取京东全站商品数据,为电子商务研究提供数据支持。关键词。

2201_76125261的博客 413

驰骋工作流引擎JFlow与activiti的对比之2种取消模式

1. 取消模式(Cancel Activity) 就是将某个活动取消。 JFLOW中,类似与删除流程操作相同。 不能删除:不允许删除。 逻辑删除:仅仅将此流程标记为删除状态,数据仍然存在节点表单与流程报表中。 记录日志方式删除:删除节点表单、流程报表数据,并记录备案。 彻底删除:彻底清除该流程的所有数据,包括该工作实例的节点表单数据、流程报表数据、轨迹数据、退回、移交操作信息。 让用户决定删除方式...

weixin_34268579的博客 231

提示词编写:从新手到专家的进阶之路

本文旨在为提示词编写者提供一条从新手到专家的进阶之路。我们将详细探讨提示词编写的背景与意义、基础与进阶技巧、实战应用以及最佳实践。通过逐步深入的分析与实操,读者将掌握提示词编写的核心要点,提高编写效率和作品质量。提示词是用于引导人工智能生成文本的关键词或短语,它包含了作者想要传达的主题、情感和细节。随着人工智能技术的普及,自动化写作工具逐渐应用于各行各业。为了提高写作效率,项目团队决定开发一款基于人工智能的自动化写作工具。成功开发了一款自动化写作工具,生成文本质量较高。

AI天才研究院 1085

驰骋工作流引擎JFlow与activiti对 比 之5种基本控制流模式的对比

为什么80%的码农都做不了架构师?>>> ...

weixin_34072857的博客 319

基于Simulink的新能源汽车热管理系统设计与仿真详细介绍

新能源汽车(如纯电动汽车和混合动力汽车)的热管理系统是确保电池、电机和电控系统高效运行的关键。通过合理设计热管理系统,可以提高车辆的续航里程、延长电池寿命并提升整体性能。以下是如何在 MATLAB 和 Simulink 中设计并仿真一个新能源汽车热管理系统的详细步骤。通过上述步骤,我们成功设计并实现了基于 Simulink 的新能源汽车热管理系统。该系统能够根据目标温度和实际反馈,通过 PID 控制器或模糊控制器调整冷却液流量、风扇转速等参数,实现对电池、电机和车内的精确温度控制。

xiaoheshang_123的博客 383

深入浅出块I/O子系统(四)请求处理过程

BIO请求处理的流程 函数scsi_request_fn()代码(摘自文件drivers/scsi/scsi_lib.c) (1)static void scsi_request_fn(struct request_queue *q) (2)int scsi_dispatch_cmd(struct scsi_cmnd *cmd) { host->hostt->queuecommand(host, cmd) } (3)struct sas_internal *i sas_queuec

sinat_37817094的博客 1347
上一篇: 驰骋工作流携手山东金义,实施落地上海光大银行
下一篇: ccflow工作流引擎设计系列01 流程元素设计
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

驰骋低代码、工作流、表单引擎

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值