写点什么

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:003724
用户头像

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

关注

评论

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

ARTS打卡 第31周

引花眠

微服务 ARTS 打卡计划

中国科学家突破区块链核心技术

CECBC

区块链

JUnit速查手册

jiangling500

Java JUnit

深入 Python 解释器源码,我终于搞明白了字符串驻留的原理!

Python猫

Python 编程

记一次有意思的微信视频号直播

小匚

产品经理

工作学习累了?试试 GitHub 上的那些简单易学的游戏项目吧!

JackTian

GitHub 开源 游戏 2月春节不断更

翻译:《实用的Python编程》01_03_Numbers

codists

Python

第四章作业

Deborah

《我们脑中挥之不去的问题》 - 卓克科普(3)

石云升

读书笔记 科普 2月春节不断更

保持模块的兼容性

Rayjun

go modules Go 语言

Elasticsearch Mapping Index索引

escray

elastic 七日更 死磕Elasticsearch 60天通过Elastic认证考试 2月春节不断更

ElasticSearch.02 - 安装

insight

elasticsearch 2月春节不断更

今日出门

Nydia

松耦合

sinsy

设计模式 RabbitMQ

【LeetCode】最大连续1的个数Java题解

Albert

算法 LeetCode 2月春节不断更

Flink集群部署:Standalone部署

正向成长

11. 用别人写好的代码,完成我的工作,剩下的时间去摸鱼

梦想橡皮擦

Python 2月春节不断更 python入门

华为 MPLS的数据转发流程

艺博东

华为

日记 2021年2月15日(周一)

Changing Lin

2月春节不断更

什么是MySQL数据库?看这一篇干货文章就够了!

我是哪吒

学习 程序员 后端 MySQ 2月春节不断更

面向对象设计原则

引花眠

面向对象设计原则

week12-homework

J

年终述职PPT(996一年,怎么会什么都没干!)

鲁米

年终总结

Elasticsearch dynamic mapping

escray

elastic 七日更 死磕Elasticsearch 60天通过Elastic认证考试 2月春节不断更

数字资产助力未来十年打赢数字经济战

CECBC

数字经济

Idea应用启动时WEB-INF/lib无效标记问题处理

程序员架构进阶

Java IntelliJ IDEA 七日更 2月春节不断更

【译文】工作六年后,我对软件开发的认知转变

Zhendong

程序员 软件开发

程序员成长第八篇:做好测试工作

石云升

程序员 测试 2月春节不断更

公路交通区块链技术的痛点问题和典型场景应用

CECBC

区块链

机器学习笔记之:

Nydia

诊所数字化从预约开始

boshi

数字化医疗 七日更 线上预约

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