介绍不同的开箱即用的BPM和ODM集成功能

本系列的 第 1 部分 重点介绍了 SOA 服务层中与 BPM 分离的决策服务,并使用了一种具有有限载荷的粗粒度接口。这样做的目的在于实现可重用性,避免让 BPM 使用者将所有数据都发送给决策服务。BPM 和 BRMS 的信息模型不同;BPM 充当工作流编排层,没有承载与它使用的服务相同的结构和定义。决策服务是一个可重用的服务,不是为单个使用者而设计的。BPM 仍然是一个使用者,因此需要将 IBM Business Process Manager (IBM BPM) 与 IBM ">Operational Decision Manager (IBM ODM) 集成在一起。本文将介绍不同的产品集成功能,并提供有关使用它们的时机的一些条件。架构师需要评估其功能需求和非功能需求,选择最佳的解决方案。

从 2010 年 6 月开始,IBM BPM 和 IBM ODM(以前的 ILOG JRules)提供了开箱即用的集成功能,实现了顺利的集成。但是,在实现这些集成之前,需要考虑一些约束条件。最重要的约束条件与两个产品所需的信息模型密切相关。在 第 1 部分 中可以看到,业务流程管理变量可处理流程活动之间的信息,使用 coach 向人们提供信息或从人们那里获取数据。大部分时间,决策服务需要采用一种不同的数据模型,这种模型使用面向对象的分析方法根据域模型调整而来,添加了实用程序方法和算法操作,获得了一个比 BPM 所用图表更复杂的数据图表。该模型的目的在于更有效地执行规则,改善规则创作体验。IBM BPM 流程应用程序使用 JavaScript 变量在流程活动之间传递数据,BPM Advance Integration Service (AIS) 使用一个服务数据对象来管理数据,ODM 将本机使用 XML,甚至会使用 OPJO 类。还需要使用数据映射和技术映射。

在过去三年中我们看到,从流程中外部化规则处理的需求更高,两个最常见的需求是数据验证和富决策活动。数据验证规则常常埋藏于屏幕逻辑内,但也需要验证在流程中收集的所有数据,然后才能将它们保存到后端系统。富决策活动包括知识和主题专家会制定数据决策所用的每个人类任务。人们常常将流程流路由规则(网关节点)视为要外部化到 BPMS 中的规则,但是,事实上这是一种很少见的使用情形。其中大部分路由规则都很简单,表示有限数量的规则,在本质上是静态的。在 IBM BPM 中使用 JavaScript 实现这种路由逻辑要简单和快捷得多。对于数据验证,需求可分离为以下两类:

在将数据输入
表单中后立即验证它,以在同一个 coach 中获得错误消息。 在所有数据收集活动结束时,用户会在业务数据提交到后端或下游流程时验证数据。系统会将一个错误列表报告给用户,以便能够修复数据。

图 1 显示了一个业务流程定义示例,演示了数据输入活动和后面的正式数据验证步骤,这个步骤建模为嵌套的服务。

图 1. 含有数据验证调用的人类服务

对于 coach 中的数据验证,目前的常见方法是在 coach 中使用 JavaScript 实现结构规则或业务规则,约束数据模型或用户界面。以下示例可通过在 coach 中向小部件控件添加逻辑来实现。

如果损失类型为汽车事故,则需要选择一辆被保险的汽车,而且还必须提供事故位置地址。 如果损失类型为火灾,那么至少需要选择一种被保险的财产。

在 Coach Designer 内,开发人员可以使用其他字段上的条件控制元素可视性。图 2 在索赔类型上将一个条件定义为 accident,以显示一个相应的字段。

图 2. 使用其他字段值控制可视性

查看上述这些规则,显然它们也需要包含在流程中的最终验证步骤中。数据验证规则的外部实现可供应用程序的其他部分或其他使用者重用。因此,这些约束规则可编码到两个地方:用户界面和 BRMS。事实上,在一些解决方案中,BRMS 可支持两种情形,我们将在本系列的第 3 部分中介绍。另外,由于这些是可执行的规则,所以重要的是不仅要考虑规则的条件,还要考虑操作部分和执行上下文。UI 中的操作是在字段级显示一个错误消息,这会导致 validate data 决策服务拒绝索赔,并在一个列表中累积发现的所有问题。

本文中提供的示例利用了 IBM BPM V8.0.1 Advanced 和 IBM ODM V8.0.1,但所提供的大部分方法都可用于两个产品的 7.5 版。

当在 Process Designer 中设计一个业务流程模型定义时,流程开发人员可使用不同的集成功能与出站服务(比如决策服务)交互。当前的功能包括 Web 服务集成、Java 集成、Advanced Integration Services 和 BPM JRules 决策服务。

基本的索赔处理场景

为了演示本文中提供的不同示例,我们将使用一个针对汽车保险的基本的索赔处理应用程序。该过程首先是一组用于输入索赔数据的 coach,然后第一个系统车道活动将验证索赔,向索赔处理人员(流程参与者)报告任何错误,然后进入资格鉴定和判决步骤流程,这些也属于决策服务。顺利的话,随后将进入索赔支付和索赔备案步骤。我们至少需要考虑两个决策服务:一个用于数据验证,另一个用于判决索赔。规则优势使我们能够在验证中识别大约 100 条规则,在宣布步骤中识别至少 500 条规则。业务流程定义和决策服务的开发可以并行执行,而且大部分时间都需要不同的开发人员技能集:业务流程分析师定义 BPMN 流程定义,而规则分析师(常常是精通知识获取技术和知识表达的知识工程师)处理规则发现、分析和实现。另外,在业务端,流程负责人常常与业务规则负责人不同;例如,索赔处理流程负责人不负责判决规则,这由判决部门负责,风险管理规则也是如此。

两个团队的并行开发需要同步化。信息模型定义和决策服务规范代表两个主要元素,限制了产品之间的集成。

时间: 2024-09-27 19:32:00

介绍不同的开箱即用的BPM和ODM集成功能的相关文章

介绍Windows Azure虚拟机的两个比较有用的配置功能

Windows http://www.aliyun.com/zixun/aggregation/13357.html">Azure虚机提供的两个配置功能我211.html">觉得还不错,一个是为虚机增加磁盘,另外一个是虚机的捕捉功能.第一个可以让用户随心所欲地为虚机上传磁盘或添加硬盘空间, 第二个功能可以让用户创建自己的image库.Windows Azure还支持上传和下载虚机VHD文件由此实现虚机在本地和云中的迁移.下面主要介绍一下第一种和第二种的具体做法: 1. 为虚

ESFramework介绍之(17)―― 支持漫游用户和跨区域功能请求

    对于漫游用户的支持和跨区域功能请求的支持是ESFramework最基本的目的之一(回顾),在详细讲述解决方案之前,先了解一下关于这个问题的上下文.    在我们前面讲述的4层C/S架构中,每个AS负责一块区域.比如上海AS负责处理所有目标城市为上海的功能请求和管理所有在上海AS上注册的用户(比如PDA用户或手机用户).如果一个本是在上海注册的用户出差来到了武汉,最方便的,他会连上武汉的AS,这样对于武汉AS来说,这个用户就是漫游用户了.    如果上海的用户登陆上了上海的AS,但是他需要

介绍IBM DB2 10.1产品版本的基础知识、功能和工具(下)

数据复制工具 DB2 提供两种不同的解决方案供您复制数据到关系型数据库(包括一些非 IBM 数据库)或从关系型数据库复制数据:SQL 复制和 Q 复制.两种方法都可以由 复制中心(一个用于复制设置和维护的独立 GUI)和复制配置命令行处理器 (ASNCLP) 加以配置和维护.在 DB2 10 Express-C 和 Express 版本上没有提供这些工具. SQL 复制的配置更简单一些,且不依赖于其他产品进行同构复制,而 Q 复制最常用于这样的情况,也就是说,需要复制数据库的很大一部分内容,或者

将IBM Message Broker与IBM BPM相集成

本文介绍 IBM® http://www.aliyun.com/zixun/aggregation/13387.html">WebSphere® Message Broker(下文简称 Message Broker)与 IBM Business Process Manager Standard Edition(下文简称 IBM BPM)的集成.因为 Message Broker V8.0.0.1 将改变创建服务的方式,本文暂且主要关注自底向上的方案.在 Message Broker Fix

使用BPM V8设计并实现一个自定义收件箱和My Team Performance任务列表

使用 IBM Business Process Manager V8 设计并实现一个自定义收件箱和 My Team Performance 任务列表 简介 IBM Business Process Manager (IBM BPM) 提供了一些有用的功能来管理业务流程,包括流程参与者的收件箱.尽管建议您尽可能地使用开箱即用的功能,但在某些情形下,默认的实现可能无法满足您的要求.在这种情况下,您可能需要设计并实现一个自定义收件箱.本文为这种自定义收件箱提供了一种设计方法和示例实现.类似地,默认的

使用IBM Integration Bus V9集成IBM BPM Standard和同步(异步)应用程序

使用 IBM Integration Bus V9 集成 IBM Business Process Manager Standard 和同步(异步)应用程序 简介 IBM IB 提供了与 IBM BPM 的新集成,使得 BPM 用户能够更轻松地访问同步服务.IBM IB 使得 IBM BPM 开发人员能够专注于与人相关的任务,并将连接性问题委托给 IBM IB 开发人员.下文的 同步集成 部分介绍了这一流程. 许多公司也有一些希望从 IBM BPM 业务流程访问的异步应用程序.IBM IB 提供

BPM流程管理软件的创新功能

业务流程管理软件既是一种载体,也是一种应运而生的工具.业务流程管理(BPM)软件是大部分企业的重要工具,有助于企业进行集成和自动化梳理内部流程.随着技术的不断创新不断进步,BPM的功能也随之不断完善.BPM出现的新功能是否为企业进行流程管理带来变化,当中是否存在发展瓶颈.下面介绍BPM软件的五大创新: 第一,智能BPM.由于业务压力不断增大,企业不能循规蹈矩度日,要有所发展必须有所创新.社会化商务.移动应用和云计算的高速发展要求,在企业决策.正常.规则.流程优化等方面有更多的个人智慧参与其中.另

业务流程分析BPA与业务流程管理BPM的误区

在我与最终用户的沟通过程中,我发现人们对业务流程分析(BPA)和业务流程管理(BPM)套件的认识还存在误区.软件供应商所说的业务流程管理(BPM)是广义概念,究竟业务流程分析(BPA)和业务流程管理(BPM)的区别是什么?业务流程管理(BPM)是如何产生的? 早期的业务流程管理(BPM) 在20世纪80年代,企业运用业务流程再造(BPR)理念来改进生产力,提高服务质量和成本效益.为此,企业对其内部流程进行了彻底的革新.由于很多企业使用业务流程再造(BPR)进行了机构重组,所以人们通常认为在这些大

谈谈对BPM的理解

问题描述 谈谈对BPM的理解•BPM的产生缘由近年来,随着计算机技术的发展和互联网时代的到来,我们已经进入了信息时代,也称为数字化时代,在这数字化的时代里,企业的经营管理都受到了极大的挑战.从上世纪90年代起至今,企业的信息化工作开展的如火如荼,相继建立了很多业务系统,同时也给企业带来了巨大的效益.但是,新的问题出现了,业务已经对这些复杂的系统提出更新的需求,即需要实现系统之间整合.EAI(EnterpriseApplicationIntegration)技术风靡一时,成为了各界人士追捧的对象.