写点什么

Alfresco 发布 Activiti 项目——基于 Apache 2 许可的 BPM 引擎

  • 2010-05-25
  • 本文字数:1205 字

    阅读完需:约 4 分钟

本周一,知名的企业内容管理(ECM)系统提供商 Alfresco Software 发布了开源的业务流程管理(BPM)项目—— Activiti ,该项目由 jBPM 创建者,前 JBoss jBPM 领导与 BPM 权威 Tom Baeyens 主持大局。前 jBPM 团队成员 Joram Barrez 此前也加入了该项目,成为 Activiti 的核心开发人员。长久以来,Alfresco 一直将 jBPM 嵌入到其产品当中,今后也将继续对其提供支持。最后,Alfresco 将在今后的产品发布中将 Activiti 纳入进来。

Activiti 是个全新、基于 Apache 2 许可的开源项目,提供了轻量级、嵌入式的 BPM 引擎并支持 BPMN 2.0 。在当今 BPM 市场中存在太多的规范,但没有一个能够解决 BPM 引擎或是工作流引擎所遇到全部问题。BPEL 最为人诟病之处在于限制太大,如果运行时模型需要构建非常复杂的流程时 BPEL 就帮不上什么忙了。更令人感到困惑的是,BPMN 1.0 出来后指定了一整套符号集来描述流程,但却没有说明执行语义,这与 BPEL 别无二致。很多厂商表示要构建能与 BPEL 进行双向转换的 BPMN 工具,但这是不可能的,因为 BPMN 中的很多东西都无法在 BPEL 中描述。

很多引擎都提供了其他选择,比如 jBPM。jBPM 提供了一个叫做 jPDL 的简单、私有的 XML 语法,可以手工编写该 XML 文件并嵌入到应用当中。

Activiti 采取的是另一种方式,它使用了 BPMN 2.0,后者定义了执行语义和可视化的流程描述。这为业务分析师和工程师们提供了一种标准、直观、双向的环境来解决流程的运行时展示问题。与 jBPM(事实上,包括任何优秀的工程项目)一样,Activiti 将流程模型从语言中解耦出来,这样就可以在该模型之上使用其他流程语言了。与 jBPM 不同的是,Activiti 并没有使用私有格式,因为私有格式还需要转换为 BPMN 2.0,而这一点容易给人造成困扰,它使用 BPMN 2.0 作为原生格式。

Activiti 还带有一个可视化的建模器(叫做 Acitviti Modeler),可以对非常复杂的图形建模。BPMN 2.0 使用起来也非常简洁和方便。虽说有些地方要比 jPDL 繁琐,但 Activiti 在 schema 中引入了“快捷方式”来解决这个问题。这些”快捷方式“最终能转换为合法的 BPMN 2.0,因此并不会表现出私有扩展的迹象。

Activiti 是轻量级的,能够轻松集成到现有应用当中,这与 Spring 框架的目标不谋而合。除了本身支持 BPMN 2.0 之外,我们还可以推测出该工作流引擎其他的应用场景:Spring Web Flow 根据网页导航描述工作流、Spring Batch 将工作流用于成批处理管道、Spring Integration 根据事件”推测“流程状态,诸如此类。SpringSource 已经任命 Spring Batch 项目的领导 Dave Syer 代表 Spring 社区参与到 Activiti 团队中,旨在将 BPMN 带给 Spring 用户。

想要尝试 Activiti 的用户可以看看这个 10 分钟上手指南,如果想要深入了解 Activiti 请翻阅 Activiti 用户指南。目前该项目是独立运作的——作为 Alfresco 的一部分,但很快就将创建自己的社区

查看英文原文: Alfresco Announces Activiti Project, an Apache 2 Licensed BPM Engine

2010-05-25 04:003751
用户头像

发布了 88 篇内容, 共 270.6 次阅读, 收获喜欢 9 次。

关注

评论

发布
暂无评论
发现更多内容

Img、net & page新展望:连接感知

云小梦

JavaScript html 网络 用户体验 连接感知

SpringBoot + Mybatis + Druid + PageHelper在多数据源下如何配置并实现分页

北游学Java

Java mybatis spring Boot Starter

音视频开发经验之路【三】吐血干货,直播首屏耗时400ms以下的优化实践

鱼哥

音视频

MySQL主从架构原理

无心

MySQL

框架是教科书,但是思考架构更有价值

吴脑的键客

架构师 知识图谱

金三试水Java社招,历经“阿里+字节+bigo”等5家面经

Java架构师迁哥

Java 并发基础(一):synchronized 锁同步

看山

Java Java并发 并发编程

力扣(LeetCode)刷题,简单+中等题(第26期)

不脱发的程序猿

面试 LeetCode 28天写作 算法面经 3月日更

用栈、回溯算法设计迷宫程序

不脱发的程序猿

回溯算法 28天写作 3月日更 迷宫程序

刘华:看板那么好,为什么都成了摆设?

刘华Kenneth

架构 敏捷 精益 看板

使用 Typescript 的一些注意事项

浩浩子

智能时代的TCL之舞

脑极体

加密解密之 crypto-js 知识

浩浩子

Redis 作为缓存是如何工作的

escray

redis 学习 极客时间 3月日更 Redis 核心技术与实战

第八章作业—张红珊

zzz

操作系统的内存管理(中)

鲁米

操作系统 内存管理

深圳应用区块链提升政务服务效能调查

CECBC

电子发票

推荐引擎概述

跳蚤

shell学习

我是程序员小贱

3月日更

2021拼多多(Java岗)面经最新分享

比伯

Java 编程 架构 面试 计算机

MySQL 锁

无心

MySQL

位运算符在 JS 中的妙用

浩浩子

区块链列入数字经济重点产业 机构预测其大规模应用将加速

CECBC

数字经济

ARTS-week 4

steve_lee

一个视频带你编译自己的Android系统!

刘望舒

android Android进阶

在公司九年被裁是谁的问题?

石云升

离职 28天写作 职场经验 3月日更

是时候下载Android11系统源码和内核源码了~

刘望舒

android Android进阶

我对PageRank 算法的理解

跳蚤

如何学习数据结构与算法

C语言与CPP编程

数据结构 算法

『BATcoder』都2021年了,是时候安装Ubuntu了!

刘望舒

android Android进阶

你真的知道基于区块链的「云计算」是什么吗?

CECBC

云计算

Alfresco发布Activiti项目——基于Apache 2许可的BPM引擎_Java_Josh Long_InfoQ精选文章