本文通过描述如何使用 Clips and Tacks 教程构建和部署业务流程以及如何配置业务仪表板来监视此流程,向您介绍了 IBM® WebSphere® 业务流程管理。
引言
本文描述了“Clips and Tacks:IBM 业务流程管理 (BPM) 系列产品入门”教程,本教程将带您完成构建和部署业务流程并配置业务仪表板对其进行监视的流程。您可以自己完成全部教程示例,也可以仅在您感兴趣的领域中使用提供的解决方案,或将提供的解决方案与您感兴趣的产品结合使用。无论采用哪种方式,您最终都将得到使用最新的 V6.1 功能(如 Lotus® 表单)的完整 BPM 示例,并能使用 WebSphere Business Monitor 仪表板对该示例进行监视。
本教程中用到的 IBM BPM 产品和组件包括:
- WebSphere Business Modeler Advanced V6.1:WebSphere Business Modeler(以下称为 Modeler)为您提供了功能强大的业务流程建模、模拟、分析和报告功能,可帮助优化您的业务流程的性能。在本教程中,您将学习如何对业务流程建模,如何创建业务规则,以及如何创建使用 Lotus 表单的人工任务。Lotus 表单将在业务客户端中提供用户界面。您将了解到业务项(也称为业务对象)是如何从表单中自动创建出来的。在 Modeler 中,您还可以指定希望监视的业务流程。
- WebSphere Integration Developer 和 WebSphere Process Server V6.1。集成开发人员使用 WebSphere Integration Developer(以下称为 Integration Developer)来利用以下各项组装业务解决方案:业务流程、Java™ 组件、业务规则组件、状态机组件和人工任务。Integration Developer 中的可视化工具仅需要最少的基础实现技能和知识。此产品中还包括测试、调试和部署工具。在本教程中,您将导入在 Modeler 中创建的模型并完成集成开发。您将把完整的项目部署到 Integration Developer 和 WebSphere Process Server 单元测试环境中。
- WebSphere Process Server V6.1:WebSphere Process Server(以下称 Process Server)提供了一个集成平台,该平台带有充分聚合、基于标准的业务流程引擎,并使用功能强大的 WebSphere Application Server。在本教程中,您将从 Integration Developer 中嵌入式测试环境中访问服务器。
- WebSphere Business Monitor Development Toolkit V6.1:利用此工具包,您可以添加 Modeler 中提供的监视规范的实现。此实现称为监视模型。监视模型的很大一部分都是从此流程中生成的。您将使用一个向导实现剩余部分,然后使用指向-点击功能将监视模型转换为 J2EE 运行时构件。然后,将 J2EE 构件部署到 WebSphere Business Monitor 中来监视业务流程。
- WebSphere Business Monitor V6.1:WebSphere Business Monitor(以下称为 Monitor)用于监视业务活动。它让您能够度量业务性能,监视当前正在运行和已完成的流程,以及报告业务操作。它提供了识别业务问题,纠正异常和更改流程所需的信息,改进了流程效率从而提高了业务竞争力。可以将 Monitor 收集到的数据导入到 Modeler 中来改进模拟结果。此反馈循环支持基于实际数据的连续流程改进。在本教程中,您将部署监视模型并创建一个仪表板来实时监视业务流程的性能。可以从 Integration Developer 中的嵌入式测试服务器访问 Monitor 运行时
- Lotus Forms Designer:Forms Designer 是随 Modeler 一起提供的,用于将 Lotus 表单与 BPM 解决方案相集成。在本教程中,您将把 Lotus 表单导入 Modeler 中,以用于流程中的人工活动。
- Lotus Forms Viewer 和 Lotus Forms Server:Forms Viewer 和 Forms Server 是随 Modeler 和 Integration Developer 一起提供的,用于将 Lotus 表单与 BPM 解决方案相集成。
图 1 显示了一组相关的产品,这些产品按定义 IBM 的 BPM 方法的各阶段进行分组。
图 1. IBM 的 BPM 产品套件
WebSphere Enterprise Service Bus 和 WebSphere Service Registry and Repository 并非本教程的一部分,但是作为补充在上面列出。
本教程中的示例业务流程概述
Clips and Tacks 是一家虚构的办公用品公司。在我们的示例业务场景中,Clips and Tacks 处理办公用品订单并发货给客户。处理订单的步骤如下:
- 业务流程在提交办公用品订单时开始。
- 业务规则对订单中的数据进行评估,然后确定订单是可以自动被批准还是需要人工批准。如果总购买价格为 750.00 美元或更少,则订单可以自动被批准,否则将发送给审核人员进行审核。
- 对于可自动被批准的订单,系统会对客户帐户进行检查以确定帐户的信誉是否良好。如果信誉良好,系统将把订单发送给发货部门;否则,将把订单发送给审核人员进行审核。
- 如果订单得到审核人员批准,将被发送给发货部门;否则,订单将被取消,并会向客户发送通知。
- 准备发货的订单都会被给出一个装箱单号,这些装箱单号将发送给客户。
为流程建立模型
您将使用 Modeler 为 Clips and Tacks 订单处理流程建立模型。您将了解如何
- 手动创建业务项,以及如何通过将 Lotus 表单导入建模项目中创建业务项。业务项类似于数据结构,用于保存不同任务之间的数据交换。Lotus 表单是基于 XML 的电子表格,业务客户端用户可以在其中输入或查看数据,就像使用纸质表格一样。
- 创建人工任务并将 Lotus 表单附加到这些任务中。人工任务表示业务流程中的人工活动。在业务流程中,Lotus 表单会提供给审核人员,以便审核人员可以从此表单中输入或使用数据。
- 实现业务规则。您将创建包括规则条件、规则操作和规则参数的业务规则模板。在使用 Integration Developer 时可以使用规则模板轻松地构建规则。
- 创建和连接各种任务。您将创建简单的任务、简单的决策、合并元素、人工任务和业务规则任务,并将这些任务连接在一起构成一个业务流程。
- 实现决策分支条件。决策分支有一个输入和两个输出。可以将其看作是一种 if-then-else 构造。决策元素对输入业务项中的条件进行评估,然后根据评估结果选择是执行 Yes 分支还是 No 分支。
- 通过为业务度量选择监视数据值,指定应监视业务流程中的哪些数据值。您将构建的监视模型将跟踪在 Modeler 中选定的监视数据值。
- 指定对 Clips and Tacks 极为重要的关键性能指标 (KPI)。
- 导出模型。在完成建模之后,您将需要导出此模型以继续在 Integration Developer 中进行开发。
图 2 显示了您将在本教程中构建的流程图。
图 2. 流程图
开发构件
您将使用 Integration Developer 从 Modeler 中创建的导入模型中创建可部署的构件。您将通过以下工作来完成流程的集成开发:
- 创建规则。您将从 Business Modeler 中创建的模板中创建一种操作规则和另外一种规则。
- 创建内联调用人工任务。内联 表示此人工任务是业务流程组件的一部分,而不是一个独立的组件。调用任务 表示它可以启动业务流程。其他类型的人工任务有待办 任务和协作 任务。待办 任务是从业务流程调用的,而协作 任务表示人员之间的协作。
- 为剩余的组件创建简单的 Java 实现。
- 自动生成业务流程的用户界面。您将生成 Lotus 表单业务客户端,以便 Lotus 表单能够向流程参与者进行显示。
图 3 显示了该示例的组装关系图。在本图中,OrderHandlingFuture1 是业务流程组件,CheckOrderhandlingPolicyforAutomaticApproval 是业务规则组件,CheckCustomerAccountStatus 及其余两个组件是 Java 组件。
图 3. 组装关系图
创建监视模型
监视模型描述标准、聚合度量和 KPI、它们对传入事件的依赖性、保证业务操作的条件(业务状况)、报告此类条件并可能触发业务操作的出站事件,以及业务分析。在 Modeler 中,您可以指定要监视的内容并对 KPI 建模。您将使用监视模型编辑器(Monitor Development Toolkit 的一部分)通过执行以下操作来完成监视模型的定义:
- 在业务流程中打开事件。监视模型通过处理业务流程执行时生成的实时事件,从而跟踪业务流程的性能。
- 从实现的业务流程生成监视模型,然后选择将哪些度量模板用于此流程。度量模板是传统流程度量(如,流程持续时间)的既定实现。
- 将实现的业务流程中的监视模型与在 Modeler 中生成的监视模型合并在一起。可以将此视为将高层次的监视规范与低层次的监视实现合并在一起。
监视模型包含监视详细信息模型、KPI 模型、多维模型、可视模型和事件模型。
- 监视详细信息模型:监视详细信息模型包含监视上下文定义,这些定义是入站事件定义(即,事件订阅),出站事件定义(即,要发送的事件),以及标准、秒表、计数器和触发器的定义的容器。监视上下文表示您要监视的内容,在本例中,上下文是指订单处理。在本教程中,您将使用名为 OrderHandling (Future1) 的单一监视上下文。
- KPI 模型:KPI 模型定义 KPI 上下文,这些上下文将 KPI 与关联的触发器和事件组织在一起。若要基于 KPI 相对于其目标或范围的值发送出站事件,请在 KPI 上下文中创建触发器和出站事件。在本教程中,您将使用 Template KPI Context 作为 KPI 上下文。您将监视的 KPI 之一是平均流程持续时间 (Average Process Duration),当平均流程持续时间超过 3 天时会生成一个出站事件。
- 多维模型:多维模型用于业务分析。在您定义监视上下文时,系统将自动创建关联数据立方定义。在 Dimensional Model 页中,您可以向数据立方中添加度量、维度和维度级别。在本教程中,您将添加 Location 和 Order Status 作为维度。
- 可视模型:您可以将可伸缩向量图 (SVG) 图表与任何监视上下文或 KPI 上下文关联在一起。然后,可以在监视模型编辑器中为这些图表加注释,以便这些图表能在运行时在 Monitor 仪表板上自动更新。每个图表都与一组形状和一组操作关联在一起,这些操作说明了将在何时以怎样的方式基于度量值(在监视上下文中)或 KPI(在 KPI 上下文中)对图表进行修改。这些操作包括基于相应的值进行颜色更改和文本显示,以及从图表的特定区域建立超链接,以便用户可以导航到其他图表。在本教程中,您将添加两个可视模型——一个用于业务流程,另一个用于 KPI。
- 事件模型:事件模型是监视模型的一部分,包含对监视模型中用到的所有事件定义元素的引用。事件模型引用您在监视详细信息模型或 KPI 模型中用作入站或出站事件类型的每个事件定义。它还包括对用于描述各事件部分的结构的任何模式的引用。您将创建的事件定义之一是 ShippedPercentage.cbe。
部署项目并运行业务客户端
在您创建了一个业务流程之后,系统将自动创建一个业务客户端(通过 UI 生成)和一个监视模型,下一步是将生成的项目部署到 Integration Developer 单元测试环境中并在其中执行这些项目。此过程是通过填写办公用品订单执行的。可从生成的基于 Web 的 UI(业务客户端)访问此订单。图 4 显示了生成的用户界面。
图 4. 生成的用户界面
业务用户客户端包含用于业务流程中的所有人工任务的人工接口。可以单击 New 选项卡通过填写订单来启动新的业务流程实例。可以使用 Status 选项卡查看任何正在运行的进程的状态。Open 和 Claimed 选项卡表示用户的 To-Do (待办事项) 列表。通过单击 Open 选项卡可以查看所有等待人工输入(或操作)的任务。若要处理任一正在等待的任务,只需选择并声明它即可。已声明选项卡上列出了所有已声明的任务。
在本教程中,您将创建 Lotus 表单客户端。当您单击 New 选项卡时,您将看到图 5 中所示的 Lotus 表单。
图 5. Lotus 表单
在表单中输入数据,然后通过提交表单启动业务流程。在流程中执行了自动任务之后,人工任务将排入队列等待用户处理(To-Do 列表)。通过单击 Open 访问 To-Do 列表。
配置业务仪表板
业务仪表板是一个网页,其中包含业务性能信息、警报、用户操作、流程数据和业务分析。您可以通过将视图从面板中拖放到仪表板上对仪表板进行个性化处理。您可以将以下视图任意多次添加到仪表板中。可以将每个视图配置为显示不同的信息。
- KPI:KPI 是增强或削弱对业务成功至关重要的活动的性能的可量化度量。这些度量对您业务的多个关键方面进行了细分,因此可以了解这些关键方面对业务成果做出了怎样的贡献。在本教程中,您将监视许多 KPI,包括平均流程持续时间。
- 实例:您可以使用实例来查看选定监视上下文及其度量的实例。在本教程中,您将查看 OrderHandling (Future1) 流程的所有实例。
- 关系图:可视模型是包含可视化功能的监视模型的一部分。每个可视化功能都包含一个 Monitor 仪表板中所示的 SVG 关系图。在本教程中,您将添加两个关系图,一个用于流程,另一个用于 KPI。
- 警报:当系统检测到某个业务状况时,可能会向一个或多个指定用户的 Alert 视图中发送一个警报。在本教程中,您将接收到以下两个警报:“Percentage of Shipped Order < 85%”和“Average Process Duration > 3 days”。
- 报告:使用仪表板上的报告显示与时间轴相关的性能报告。使用报告可帮助您分析属于某个立方的数字业务度量的历史值,立方是在线分析处理所需的数据的多维表示形式。
- 维度:使用维度,您能够以图表和表格的形式显示多维业务性能数据,通过这些图表和表格您可以深入地了解性能详细信息。
- 人工任务:Human Tasks 显示人工任务实例。通过向仪表板中添加人工任务,您可以监视示例中的所有人工活动。
当您处于 Dashboard 窗口中时,可以通过单击 Getting Started 选项卡然后进行浏览,了解上述示例中显示的所有视图的概况。您还可以查看 Utilities 选项卡,从该选项卡中您可以实时添加 KPI。此外,您还可以导出监视数据值,然后将这些值导入到 Modeler 中完成反馈循环。下图显示了您将创建的仪表板的一部分。
图 6. 示例仪表板
使用仪表板
业务性能管理仪表板用于查看公司的财务和运营数据。仪表板在一种近实时环境中运转,用于监视业务状况,让用户能够使用适当的操作管理此状况。仪表板显示的是业务的性能,而不是 IT 事件。在本教程中,您将监视 KPI,如平均流程持续时间和已发送订单百分比。当平均流程持续时间超过 3 天,已发送订单百分比低于 85% 时,您将收到警报。使用仪表板可为业务用户提供业务运行状态和性能的实时视图。他们可以监视任何度量或 KPI,如某些商品的销售额或当月的总销售额。您可以导出监视的数据值,然后再将这些值导回 Modeler 中以用实时数据改进模拟,从而持续改进业务流程。
总结
本文向您介绍了Clips and Tacks 教程,该教程介绍了如何使用 IBM BPM 产品对使用 Lotus 表单的业务流程进行建模,如何为该流程指定业务度量,如何组装可部署的业务流程,如何生成业务客户端,以及如何构建监视模型。本教程中介绍的大多数流程都是使用点击式、拖放式操作生成的或自动生成的。本教程还向您介绍了如何部署构件,如何运行业务客户端以执行业务流程,如何启动 Lotus 表单,以及如何创建和使用业务仪表板。
使用 IBM BPM 产品,您可以轻松地协调、管理和监视您的业务流程、人工活动和业务活动。可以从业务仪表板中查看性能,也可以让环境通过向您的仪表板、PDA、电子邮件或电话上发送警报向您通报业务状况。
要获得有关如何构建示例的分步操作说明,请参阅 Clips and Tacks 教程。本教程包括针对本文中每一部分(如流程模型、监视模型等)的完整解决方案。
注意:您还可以通过执行以下操作从 WebSphere Integration Developer 中访问 Clips and Tacks 教程和其他在线示例:
- 选择 Help => Samples / Tutorials (WebSphere Integration Developer)。
- 选择 Online Samples 旁边的 Retrieve 获得可用示例的列表。
作者简介
Johny Mathew 是负责 IBM 业务流程管理 (BPM) 系列产品的架构师。在此之前,他担任过 Tivoli® 产品的架构师和设计人员,以及 Communication Server 产品的首席程序员和开发人员。Johny 获得了纽约大学授予的电气工程(计算机网络)博士学位。您可以通过 [email protected] 与 Johny 联系。
Billy Rowe 是重点负责 IBM BPM 系列产品中的 BPM 策略和合作伙伴集成的高级架构师和管理人员。Billy 曾在 IBM 中担任过各种职务,如开发人员、架构师和顾问。您可以通过 [email protected] 与 Billy 联系。
原文地址:http://www.ibm.com/developerworks/cn/websphere/library/techarticles/0804_mathew/0804_mathew.html
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/14789789/viewspace-416163/,如需转载,请注明出处,否则将追究法律责任。