共同点:

1. 嵌入式的工作流引擎,降低集群复杂性。

2. 严格而灵活的流程版本控制

3. 支持多种数据库

4. 支持多种流程设计模式

5. 成熟度高的开源工作流,具有可靠的稳定性和性能。

区别:

1. 流程定义方式:

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

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

2. 面向使用对象:

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

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

3. 节点类型:

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

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

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

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

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

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

4. 对复杂流程的支持:

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

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

5. 对历史数据的挖掘:

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

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

表单集成

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

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

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

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

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

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

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

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


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

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

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

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

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

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

对多种表单的支持

简洁明快的CCForm


Word文档支持


Excel表单的支持


表单树的支持


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

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

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

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

流程属性

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

比如单据编号生成规则,

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

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


多种接受人规则

驰骋工作流引擎JFlow与activiti的对比 -总结的更多相关文章

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

    1. 取消模式(Cancel Activity) 就是将某个活动取消. JFLOW中,类似与删除流程操作相同. 不能删除:不允许删除. 逻辑删除:仅仅将此流程标记为删除状态,数据仍然存在节点表单与流程 ...

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

    1. 无同步的多实例(MIwithout) 在流程中,一个活动可以激活多个实例,每个实例相互独立,并不需要在后面进行同步. 例子:比如用户购买了N本书,于是后续的支付账单.更新客户可以以本书为单位各自 ...

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

    1. 任意循环(Arbitrary Cycles) ACTIVITI : 某一个或多个活动可以反复执行. 例子:用户买了瓶汽水,拿到汽水后,中了一瓶,又去兑换了一瓶汽水,如果又中了,再去兑换一瓶汽水- ...

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

    多重选择(Multiple Choice) 在流程中,当一个活动完成后,有多个分支进行选择,可以选择执行其中的一个或者N个分支. 例子:比如去世博园玩,在门口检票后,可以选择A-E个片区中的N个进行观 ...

  5. 工作流引擎JFlow与activiti 对比分析(一)5种基本控制流模式的对比

    为了更好的说明activiti 与jflow的两款工作流引擎的特点与区别,我们按照如下几个方面做一次全面的.客观的对比. 首先activiti是国外的一款开源的工作流程引擎,在国际上影响比较深远与广泛 ...

  6. 驰骋工作流引擎 -CCBPM如何自动升级

    关键词:工作流引擎自动升级   工作流自动升级升级步骤设置1,CCBPM把更新分成三类, 应用程序代码更新.数据表结构更新.数据更新.2,CCBPM在您登录流程设计器时自动判断当前的版本与数据库版本是 ...

  7. java工作流引擎Jflow父子流程demo

    关键字 驰骋工作流引擎 流程快速开发平台 workflow ccflow jflow  .net开源工作流 定义 一个流程A的一个节点,因工作的需要调起另外的流程B,A就叫父流程,B就叫子流程.如果流 ...

  8. 驰骋工作流引擎与jFinal集成版本2.0

    驰骋工作流引擎与jFinal集成版本2.0 发布说明 关键字: 驰骋工作流程快速开发平台 工作流程管理系统java工作流引擎. 使用协议:GPL. 关于JFinal: https://www.jfin ...

  9. java工作流引擎Jflow流程事件和流程节点事件设置

    流程实例的引入和设置 关键词: 开源工作流引擎  Java工作流开发  .net开源工作流引擎   流程事件 工作流节点事件 应用场景: 在一些复杂的业务逻辑流程中需要在某个节点或者是流程结束后做一些 ...

随机推荐

  1. Lesson 26 The best art critics

    Text I am an art student and I paint a lot of pictures. Manay people pretend that they understand mo ...

  2. Go语言数组和切片的原理

    目录 数组 创建 访问和赋值 切片 结构 初始化 访问 追加 拷贝 总结 数组和切片是 Go 语言中常见的数据结构,很多刚刚使用 Go 的开发者往往会混淆这两个概念,数组作为最常见的集合在编程语言中是 ...

  3. [Swift]LeetCode84. 柱状图中最大的矩形 | Largest Rectangle in Histogram

    Given n non-negative integers representing the histogram's bar height where the width of each bar is ...

  4. [Swift]LeetCode899. 有序队列 | Orderly Queue

    A string S of lowercase letters is given.  Then, we may make any number of moves. In each move, we c ...

  5. PHP实现登录注册

    一.首先实现一个PHP的简单登录注册的话 我们要简单的与后端定义一下接口和传输数据的方式 并且我们要有一个phpStudy服务器. 第一步:当我们点击注册按钮的时候数据库要接收到客户端请求的数据  第 ...

  6. 【jpa】spring data jpa 配置使用

    1.spring data jpa 简单介绍 jpa是用于对象持久化的API,jpa是一种规范,而其他的ORM框架(hibernate,topLink等)是其实现,所以jpa可以使用不同的实现方式,修 ...

  7. JVM内存知识备忘

    又是一篇备忘... 主要记录一些知识,进行一些资源的汇总. 先来群里liufor大大提供的两张图,清晰易懂: Dockerized Java https://www.youtube.com/watch ...

  8. Gin框架源码解析

    Gin框架源码解析 Gin框架是golang的一个常用的web框架,最近一个项目中需要使用到它,所以对这个框架进行了学习.gin包非常短小精悍,不过主要包含的路由,中间件,日志都有了.我们可以追着代码 ...

  9. Zara带你快速入门WPF(4)---Command与功能区控件

    前言:许多数据驱动的应用程序都包含菜单和工具栏或功能区控件,允许用户控制操作,在WPF中,也可以使用功能区控件,所以这里介绍菜单和功能区控件. 一.菜单控件 在WPF中,菜单很容易使用Menu和Men ...

  10. NodeJs安装步骤与淘宝镜像

    dir 列目录 lscd 路径 切换路径 cdmd 文件夹名 创建一个空文件夹 mdC: 切换盘符 cls 清屏 clear ping ip/网址 网络测试ipconfig -all 查看网络连接信息 ...