NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

Nova Bonita——Bonita 4.0 发布

  • 2008-10-14
  • 本文字数:2976 字

    阅读完需:约 10 分钟

经过两年的开发,Bonita 项目组发布 Bonita 4.0 (也就是 Nova Bonita)。Bonita 4.0 基于 PVM 技术,可作为一个轻量级的 BPM 产品部署,运行在 JSE 和 JEE 平台上。Nova Bonita 为 BPM 的开发和执行环境提供了一个集成的图形化环境,其中包括三个模块:

  • Nova Bonita 运行时模块:Nova Bonita 流程引擎。可以通过提供 BPM 服务的丰富 API 对流程进行部署、执行和监控。
  • Nova Bonita 控制台:一个 Web 2.0 图形界面,在 BPM 部署、执行和监控阶段提升用户体验。
  • Nova Bonita 设计器:BPM 开发环境允许对流程、与已有系统集成的 BPM 连接器进行图形化定义。

最终的发版说明里提到:

版本 4.0 对 4.0RC3 的运行时模块进行了细微的功能增强(部署单个 XPDL 文件,活动多实例清理,日志级别调整,迭代和子流程重构,包级别和流程级别的版本化……),对设计器和控制台则进行了重大的改进和新功能添加。

InfoQ 借此机会向 Bull 的 BPM 主管 Miguel Valdes 问了几个问题,问题涉及最新版本和 Bonita 对 BPM 市场的想法。

InfoQ:Tom Baeyens(JBoss jBPM)曾描述,流程虚拟机对需要嵌入式工作流的应用来说是很理想的——对 Bonita 的用户来说,你是不是也这样认为?

肯定是的,这就是我们两年前决定建立流程虚拟机技术的原因。Bonita 4.0 现在可以嵌入到任何已有的应用中(作为 BPM 库),也可以作为传统的 BPM 服务器进行远程部署。

从这个意义上讲,Bonita 4.0 配备了一个 Eclipse 插件,可以轻松地开发 BPM 流程和相关的 Java 连接器。这个插件可以很容易地添加到开发人员的 Eclipse 开发环境中,来加速 BPM 应用的开发。Bonita 4.0 还提供了一个强大的、符合 Web 2.0 的 BPM 控制台来提升用户体验,所以说它不仅仅是针对开发人员和技术架构师的。

InfoQ:你们是否对 Bonita 4.0 如何支持工作流模式倡议的各种观点做出了评估?

我们在 Bonita 4.0 中还没有重新评估工作流模式支持,但我要说,我们在该版本中已经改进了这一点。在 4.0 中实现了 v3 中可用的主要概念和功能,除此之 外,Bonita 4.0 还进行了从无到有的重新构建。此外,我们还增加了对新功能和模式的支持(即活动的多实例)。

InfoQ:“基于模式的开源 BPM 系统评估报告”(InfoQ先前报导过)的作者提到,开源工作流产品一般更适合于开发人员,而非最终用户。你对此有什么看法呢?你觉得 Bonita 4.0 中新的设计器和控制台是否使它更易于被业务分析师理解呢?

正如 Gartner 在它们最近的 BPM Magic Quadrant 调查中指出的一样,一个成功的 BPM 部署会涉及不同的用户和不同的用户配置。不同的用户配置中包括业务分析师。这一思想与 Bonita 4.0 背后的新技术会加强这些不同用户配置间的合作。Bonita 4.0 发布的第一目标人群是开发人员和技术架构师,而分析师工具在后续版本中才会推出。

我们的下一步动作是成为针对最终用户的 BPM 开发 Studio(同时涵盖非技术用户配置和技术用户配置)。带有特定视图的简单 BPM 编辑器(“按 Visio/PowerPoint 的风格”)允许用户间的“重复”。那些视图不会特定于“每个用户配置”的基础之上(分析师、架构师、开发人员),但却基于“每个功能”(建模、执行)。主要视图(建模)将基于一个简单的“方框”和“箭头”面板,允许“方框”生成描述和文档信息。

InfoQ:你能给我们介绍一下 Bonita 4.0 中流程和包的版本化这一新特性吗?

4.0 中,我们能让用户有针对流程版本化的大量灵活性。最终用户可以部署、利用同一流程的两个或更多版本。一旦部署了一个新的版本,新实例就会接管,而进行中的实例则会使用先前的版本完成它们的执行任务。

在后面的版本中,我们将允许运行实例从一个版本自动迁移到另一个版本。此功能将在流程虚拟机级别添加,而且要求应用管理审批。自动迁移不能 100% 地覆盖用例,但我们对至少 70% 的用例有用还是有信心的(两个版本之间的大部分更新关注于活动和迁移的添加 / 删除操作)。

除了流程级别的版本化,Bonita 4.0 还在资源库 / 包级别提供版本化支持。资源库或包能包含一或多个流程定义,因此也可以版本化。

InfoQ:Bonita 继续提供强有力的 XPDL 支持。XPDL 的现状如何?你是否了解到 XPDL 有大量的市场需求呢?

好问题。Bonita 从其初期开始就一直对 XPDL 提供标准的支持。该标准在过去的几年里一直在发展,以涵盖像流程、流程通信、事件支持这些尚缺的功能,特别是它已成为绘制 BPMN 符号的语法。请注意,前十名商业 BPM 供应商中有七家都支持 XPDL。

我不会参与“什么是最好的 BPM 标准”这一争论,因为我真的认为这并不是用户关心的问题。用户只是寻求功能、性能、部署、稳定性……而有时一些供应商却忽略的这一点:-) 标准确实很重要,作为供应商,你也必须遵循这些标准,但这却不是主要的差异化。

这是我们决定创建流程虚拟机(PVM)技术的原因之一。除了其它关键的功能外,PVM 允许支持多个标准。我们已经在 Bonita 4.0 中添加了对 XPDL 的支持,我们很快会在 Orchestra 4.0 中发布 BPEL 2.0 扩展(同样由 Bonita 团队开发),JBoss 目前也在增加对 JPDL 的支持。

PVM 技术是语言无关的,我认为这一点很棒,尤其是如果在今后几年里出现新的标准!

InfoQ:商业供应商 Intalio 最近撰稿说 BPEL 已经“赢得了标准之战”。你对此有何看法?

这仅仅是一个“哗众取宠”的帖子。我始终认为,如果有不同的流程语言,这可能意味着其中的每一个都针对某一特定的需求。不过在处理 BPM 时,我并不认为 BPEL 是促进业务人员和技术人员之间合作最好的流程语言,主要是因为 BPEL 创建时并没有考虑这一点,而它是为了编排 Web Services 才创建的。

跟其它供应商一样,Intalio 将 BPMN+BPEL 推为 BPM 的“解决方案”。他们在复杂的转换上花费了大量的时间和金钱,却不能满足 100% 的用例(它仅仅是尝试用 Intalio BPMN 设计器定义一个非结构化的图,并浏览下生成的 BPEL 文件:-))

另一个明显的例子是使用 BPMN 与 BPEL 和 BPEL4People 扩展来处理人类交互的复杂性。你认为对最终用户来说,通过将功能步骤分解为多个技术步骤,在流程中定义一个用户交互步骤(又名任务)是不是清晰的呢?

如果你使用 Intalio 编辑器,这就是确实发生的:你必须将流程中的一个功能步骤(一个任务)分解为四个不同的步骤:其中两个在“可执行池”中定义(其中一个会生成 BPEL 代码),另外两个在“非可执行池”中定义。你认为这种方法对用户友好吗?来吧,伙计!

InfoQ:你认为 BPM 在 SOA 中扮演什么角色?

这个时候 BPEL 对我来说更有意义。在一个基于 SOA 的架构中,可以利用独立的 BPEL 引擎由 BPEL 流程处理服务编排,或者在一个 ESB 解决方案的上下文中处理服务编排。这将是 Orchestra 4.0 的首要目标。

BPM 不仅仅是 SOA 的关键一部分。还有许多应用,其中纯粹的 BPM 方法仍然要比仅仅在应用中编写代码有用,这是 Bonita 4.0 的主要目标。

InfoQ:以后有在 Bonita 中集成规则引擎功能的计划吗?

有。规则引擎已可以插入到 Bonita 4.0 中。角色 / 组、用户、IS 连接器(Hooks)之间的映射(Bonita Mappers)可以与规则引擎交互。在下一个版本中,我们会集成规则引擎来提供这一功能的开箱即用。

规则支持在迁移情形下也很有用。对于此,Bonita 4.0 目前使用脚本语言,并提供了一个迁移情形的图形化编辑器,但我们还计划增加对规则的支持。

可在这里下载Bonita 4.0,它在LGPL 许可下发布。

查看英文原文: Nova Bonita - Bonita 4.0 Released.

2008-10-14 06:361094
用户头像

发布了 151 篇内容, 共 60.1 次阅读, 收获喜欢 18 次。

关注

评论

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

纯粹+享受,独立开发者成功踏上HarmonyOS“新大陆”

最新动态

Solidity之旅(十)OOP-抽象合约

BSN研习社

基于 Webpack5 Module Federation 的业务解耦实践

快乐非自愿限量之名

Web 技术栈 核心技术栈

Milvus 老友汇|AI、云原生与向量数据库的精彩碰撞回顾!

Zilliz

云原生 Milvus AIGC KubeBlocks

企业用户混合云组网的新方式——SD-WAN

Ogcloud

网络 SD-WAN 混合云 混合云架构 组网

基于 Flink 构建实时数据湖的实践

字节跳动云原生计算

大数据 数据湖 云原生 flink 实战

软件测试/人工智能丨人工智能系统中,大数据模块发挥怎样的作用

测试人

人工智能 软件测试

Kosmos实战系列:MySQL Operator有状态服务的跨AZ集群平滑迁移

畅聊云原生

企业网络新阶段:SD-WAN在云时代的关键作用

Ogcloud

云计算 网络 SD-WAN 云时代 WAN

改进了编排控制并增强了推理的可视性,Agents for Amazon Bedrock 现已上市

亚马逊云科技 (Amazon Web Services)

API re:Invent Amazon Bedrock

E往无前 | get正确使用姿势!腾讯云大数据ES日志场景优化案例回顾

腾讯云大数据

ES

最后一天!龙智DevSecOps研讨会年终专场“如何打好DevOps基础、赋能创新”即将截止报名

龙智—DevSecOps解决方案

软件测试/人工智能丨卷积神经网络,与普通的神经网络有何不同

测试人

人工智能 软件测试

拍卖直播电商平台的终局之战:开发拍品增值服务功能

软件开发-梦幻运营部

深入学习 C++编程,数据结构与算法关系

高端章鱼哥

c++ 数据结构 算法结构

NFT卡牌DAPP质押系统开发丨详情开发

l8l259l3365

AI人工智能与云原生:创新科技的完美结合

EquatorCoco

人工智能 AI 云原生 技术 优化体系

浅析JAVA日志中的几则性能实践与原理解释

阿里技术

Java 原理 性能实践

学习Motoko:开启加密编程世界的全新篇章

TinTinLand

区块链 编程

3分钟搞懂什么是Docker

伤感汤姆布利柏

Docker 镜像

Navicat Premium for Mac v16.3.4中文激活版下载

iMac小白

软件测试/人工智能丨神经网络的概念,它与深度学习是什么关系

测试人

人工智能 软件测试

“2024杭州人工智能展会·杭州智博会”推进人工智能产业创新发展

AIOTE智博会

智博会 人工智能展 智慧城市展 杭州智博会

5个值得推荐的Vue后台管理框架

高端章鱼哥

Vue 后台管理系统

NFT开发:NFT 令牌门控Web3中的变革性品牌体验

区块链软件开发推广运营

dapp开发 区块链开发 链游开发 NFT开发 公链开发

AI浪潮下,大模型如何在音视频领域运用与实践?

阿里云视频云

云计算 视频云

多云网络互通问题怎么解决——SD-WAN

Ogcloud

云计算 网络 多云服务 多云架构 SD-WAN

教你使用Prometheus-Operator进行K8s集群监控

不在线第一只蜗牛

k8s K8s 多集群管理 多集群 集群监控

某公司案例分析

尚思卓越

运维 堡垒机

从“卷智商”到“卷情商”我们能从一场华为海外发布会学到什么?

脑极体

PC

Python内存管理:从入门到精通的完全指南

技术冰糖葫芦

API 接口

Nova Bonita——Bonita 4.0发布_Java_Gavin Terrill_InfoQ精选文章