什么是工作流引擎

一个简单的例子:一辆汽车,外观很漂亮,但是如果发动机有问题,那就变成了一个摆设,势必会bug不断。

而应用系统的拓展性就好比汽车的引擎转速,别人的百公里加速只要10s,而你的则需要一个小时(业务流程变动需要更长时间的程序修改),孰优孰劣,一目了然。而如果引擎再动不动就熄火(程序逻辑死循环),那这样的车谁还会叫好呢?

开发一个优秀的软件系统,系统界面是最基础的部分,数据库之间的信息交换是必备条件,而根据业务需求开发出符合实际的程序逻辑,并在一定程度上保证其稳定性、易维护性才是根本。稳定性自不必说,易维护性则要保证模块化和结构化,这样可以在业务流程发生变化,例如决策权的改变、组织结构的变动时产生的全新业务逻辑,而工作流引擎解决的就是这个问题。

服务架构

面向服务的体系结构,是一个组件模型,它将应用程序的不同功能单元通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。工作流引擎使得构建在各种这样的系统中的服务,可以以一种统一和通用的方式进行交互。

市面上主流几大工作流引擎

jBpm

jBpm是一个灵活可扩展的工作流管理系统。

1、jBPM3是一个完整的工作流系统实现,面向开发人员,目的在于简化对组织核心流程进行支撑的软件创建,不支持标准。

2、jBPM4引入PVM,使其拥有更强大的扩展性,同时增加BPMS特性,这些特性包括了对BPMN的支持、面向业务人员的Web建模器和简单统计分析功能的加入。

3、jBPM5基于原先的Drools Flow,支持BPMN,通过与Drools的合并支持BAM,通过内容仓库增加对流程可视化的支持。

Werkflow

Werkflow是一个灵活可扩展的基于流程和状态的工作流引擎。它的目标是满足可以想象的所有工作流程,从企业级的业务流程到小范围的用户交互流程。通过使用可插拔和分层结构,可以方便地容纳各种工作流语义。

雀书

雀书是一个工作流引擎。原先的设计是为了填补市场上可视化设计工作流引擎的空白。它有一些不同于其它工作流系统的特点:

1、一站式。提交需求—>确定产品方案—>评审—>开发—>测试—>验收—>上线都可由一人完成。

2、可视化。以最直观最高效的表达方式,实现页面绘制、流程编排、数据呈现上的可视化,管理员用户通过拖拽和选择等方式,就可以实现整个应用的搭建。

3、自动化。当用户定义完自身的页面逻辑以及数据后,自动帮用户完成整个运行环境的部署。

Open Business Engine

Open Business Engine是一个开放源码的Java工作流引擎,支持WfMC规范,包括接口1(XPDL)、接口2/3(WAPI)和接口5。OBE为活动的运行提供了一个可控的集中环境。OBE主要基于J2EE实现。

ObjectWeb Bonita

Bonita 是一个符合WfMC规范、灵活的协同工作流系统。 对于各种动作如流程概念建模、定义、实例化、流程控制和用户交互等提供了全面的集成图形工具。 100% 基于浏览器、使用SOAP和XML数据绑定技术的Web Services封装了已有的工作流业务方法并将它们以基于J2EE的Web Service形式发布。基于活动预测模型的第三代工作流引擎。

Bigbross Bossa

速度非常快、轻量级的引擎,使用富有表达能力的Petri网定义工作流,不要求关系数据库,使用简单,能和Java应用集成。事实上,它是按嵌入式设计的。

Werkflow java_几大工作流引擎对比相关推荐

  1. 常见的工作流引擎(osworkflow、jbpm、activiti、flowable、camunda)比较

    参考文章:osworkflow.jbpm.activiti.flowable.camunda开源流程引擎哪个好?_大龄码农有梦想的博客-CSDN博客_流程引擎有哪些 工作流引擎选择(为何使用activ ...

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

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

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

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

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

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

  5. 工作流引擎 Activiti 实战系列

    Activiti整合Spring 一.Activiti与Spring整合开发 1.1 Activiti与Spring整合的配置 1).在pom.xml文件引入坐标 如下 <properties& ...

  6. 驰骋工作流引擎的流程属性-节点属性-前台操作

    1:    工作流引擎功能-流程属性 •    支持客户参与流程:比如在一个erp系统里供应商相对企业来说是外部用户,在一个学校系统里,教师是内部用户,学生是外部用户.ccflow支持外部用户登录参与 ...

  7. 学习笔记之-Activiti7工作流引擎,概述,环境搭建,类关系图,使用Activiti BPMN visualizer,流程变量,组任务 网关,Activiti整合Spring SpringBoot

    本篇学习笔记是观看黑马程序员Activiti7视频而得 Activiti7 一.工作流介绍 1.1 概念 工作流(Workflow),就是通过计算机对业务流程自动化执行管理.它主要解决的是" ...

  8. F2工作流引擎之 工作流运转模型(三)

    1流程单起点单终止模型 单起点:一个流程定义必须有且唯一起点 单结束点:一个流程定义必须有且唯一结束点. 约定:提单与结束是每个流程必须有的活动,且唯一只有一个提单和结束. 2串行模型 描述:串行(S ...

  9. 最近进行的一次技术选型(工作流引擎)及相关知识介绍

    前言 最近有个新项目,需要实现类似工作流引擎的效果,如果不知道是啥,看完本文就懂了. 公司内其实也有些自研的,可能就是不像开源的这些那样,还支持这个那个规范,都是基于需求定制开发的,扩展性稍微差点. ...

  10. 大型OA协同办公系统 - 利用力软工作流引擎实现复杂业务流程

    随着企业的不断发展壮大,员工数量的增多,分工也越来越细,原来粗放型的管理变得越来越低效,有时甚至成了企业发展的瓶颈,这时流程管理的重要性就凸显出来. 流程管理是通过对现有工作流程的梳理和工作流程网络信 ...

最新文章

  1. Java基础知识回顾之四 ----- 集合List、Map和Set
  2. Active Directory 对象授权还原
  3. 解决vue项目eslint校验 Do not use ‘new‘ for side effects 的两种方法
  4. python 解码json数据并在一个OrderdDict中保留其顺序
  5. python实验指导书2018_python实验指导书
  6. 欧拉函数的一道练习题(附加容斥做法)
  7. Host key verification failed.
  8. python中的set和dict_Python中dict和set的用法讲解
  9. mvc html.display,Asp.Net MVC中的Html.DisplayFor()用于项目列表
  10. C#调用存储过程的通用类
  11. C++STL总结笔记(二)——仿函数(函数对象)
  12. 如何从头开始以正确的面向对象方式创建Java Web Framework
  13. eclipse编译hadoop插件
  14. 如何成为架构师?3条有效的实战经验
  15. java 多线程语法_Java基础语法之多线程学习笔记整理
  16. 解决方法-SQLserver建表后更改列,显示不允许保存更改。您所做的更改要求删除并重新创建以下表
  17. cdrx7拼版工具在哪里_CorelDRAW X7标签怎么排版?
  18. Raspberry-Pi-PICO系列--第七篇 创建自己的工程
  19. .reg文件添加、修改、删除注册表的方法
  20. usbip--局域网内共享的USB设备

热门文章

  1. 更改我的网页默认的暴风影音播放器
  2. 第三代oid铺码软件_你好点读笔!自制小达人点读目录册之书名贴铺码
  3. tiff格式转为jpg,tiff转jpg方法
  4. JAVAFX版简易计算器
  5. nagios 飞信通知
  6. 百问 FreeSwitch(整理版)
  7. HTML将广告关闭的JS代码,js实现可关闭的对联对联广告代码广告效果代码
  8. android平板8英寸,8英寸安卓系统 Newpad P10平板电脑评测
  9. [内附完整源码和文档] 基于MySql和JSP的题库管理系统
  10. webservice的几种调用方式