写点什么

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

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

关注

评论

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

【数据挖掘概论】数据挖掘的简单描述

晴天

8月月更

【K8s入门必看】第三篇 —— K8s必备基础概念大梳理

Albert Edison

Docker Kubernetes 容器 云原生 8月月更

Axure9基本交互操作(一)

乔乔

8月月更

七日算法先导(三)—— 快速排序,插入排序

工程师日月

8月月更

Android条件控制宏编译

桑榆

8月月更

工业物联网 —— 新型数据库的召唤

CnosDB

IoT 时序数据库 开源社区 CnosDB infra

服务器

武师叔

8月月更

目标检测的发展与现状

阿炜小菜鸡

目标检测 8月月更

知识分享|如何设计有效的帮助中心,不妨来看看以下几点

Baklib

那些年,在Linux指令上踩过的坑~

芒果酱

Linux 签约计划第三季

多个平台显示IP属地,必须大力推行互联网实名制

石头IT视角

Nacos配置中心之客户端长轮询

急需上岸的小谢

8月月更

SRv6网络的安全解决方案

穿过生命散发芬芳

8月月更 SRv6

Go 语言快速入门指南:什么是 TLS 安全传输层协议

宇宙之一粟

安全 Go 语言 8月月更

git操作

Jason199

git 8月月更

学生管理系统架构设计

张立奎

正畸MIA微种植体支抗技术中国10周年交流会在沈举办

联营汇聚

基于YOLOV5行人跌倒检测实验

阿炜小菜鸡

8月月更 行人检测

【爬虫+可视化】Python爬取疫情并可视化处理数据(爬虫入门案例)

BROKEN

Python 8月月更

开源一夏 | 基于若依springboot架构实现数据多维统计

六月的雨在InfoQ

开源 8月月更

Service Mesh落地路径

阿泽🧸

Service Mesh 8月月更

数据库治理的探索与实践

阿里巴巴云原生

数据库 阿里云 微服务 云原生

【python小游戏】用python写一款小游戏--贪吃蛇

BROKEN

8月日更 8月月更

头脑风暴:完全背包

HelloWorld杰少

8月月更

什么是内部客户服务?

Geek_da0866

视频目标检测

阿炜小菜鸡

8月月更 视频目标检测

经验分享|盘点企业进行知识管理时的困惑类型

Baklib

C++对象的初始化和清理之构造函数和析构函数分析与实例(一)

CtrlX

c++ 面向对象 后端 代码 8月月更

python绘制一个时间的七段数码管实例基本的七段数码管绘制

BROKEN

8月日更 8月月更

开源一夏 | 云服务器ECS安装Mysql、JDK、RocketMQ

六月的雨在InfoQ

开源 8月月更

手写分布式配置中心(1)

分享干货的你

java; spring-boot SpringCould 签约计划第三季

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