Holosofx —— 源自拉丁语holo(意为整体)和希腊语sophic(意为智慧)—— 成立于 目的是帮助公司以整体的方式理解和管理他们的业务流程在 年 月IBM 收购了 Holosofx 来扩展其 WebSphere Business Integration PlatformHolosofx 产品提高了客户设计监视和改进业务流程的能力 特别是Holosofx 的主要应用是在连续业务流程管理(Continuous Business Process ManagementCBPM)领域这是成功的业界领先的公司用来管理其业务流程的一个概念本文简要分析了 IBM Holosofx 体系结构和环境并解释了开发人员如何利用 Holosofx 简化业务流程的改进和管理 用 Holosofx 进行成功通信 不同的应用程序通过业务流程集成进行交互和交换数据的必要性是 BB 成功合并的关键在进行总体过程集成的过程中企业必须使用完整的业务解决方案简单而无缝地发现集成和管理与业务相关的数据要实现这一点业务部门必须与 IT 专家紧密合作来获得最优的解决方案 —— 可以满足业务要求并增强过程的性能 不过如何让 IT 和业务专家共同完成这项任务一直是一项挑战开发人焙退堑囊滴裢滤挡煌挠镅裕褂貌煌氖跤铮⑶揖哂胁煌闹侗尘啊R滴袷褂玫氖且滴窳鞒棠P停?IT 使用的是 UML (Unified Modeling Language) 模型UML 和 BPM 模型之间的集成和转换可以保证良好的通信避免因通信错误而导致的成本同时还能减少完成项目的时间 需要一种缩小语言差异的工具来确保成功通信IBM Holosofx for Business Process Management 通过提供了一个公共工作区以促进业务与 IT 专家之间的通信Holosofx Workbench 和 UML Transformer Modeler 中的工作区可以使企业将必要的业务内容转换为 IT 内容而且还提供了 IT 内容到业务内容的转换 图 一个公共工作区Holosofx 概述 IBM Holosofx Business Process Management (BPM) 软件包包括三个组件它们是作为单独的模块运行的 IBM Holosofx Workbench 用于建模和分析Holosofx Workbench 以 Business Modeler 作为核心并以 UML Transformer (Modeler)Xform Designer 和 XML Mapper 作为扩展 IBM Holosofx Monitor 用于实时监视过程 IBM Holosofx Workbench Server 用于通过 intra/Internet 共享过程信息 Holosofx 软件包采用多功能方式实现 CBPM 创建 Holosofx Workbench 为现有过程建模用模型创建模拟分析和选择优化的新过程设计 协作 Holosofx Workbench Server 被用来通过 Web 共享过程模型信息并提供访问和版本控制的安全存储 自动化 Holosofx Workbench 将业务流程模型转换为可以直接导出为 MQSeries Workflow 的格式 管理 BPM Monitor 用于监视正在进行的项目并采取修正行动此外实际过程 metrics 回答模型场景中的如果如何的问题并改进过程 Holosofx 集成策略 使软件开发人员和业务专家可以通过建模定义业务需求并描述系统目标 使开发人员可以用 UML 为业务软件系统建模 使开发人员可以将 UML 模型中包含的相关信息映射回 BPM 过程模型 使开发人员和业务专家可以在 UML 模型和 BPM 业务流程模型之间转换公共元素 这种全面的集成策略对业务和 IT 都有好处例如将 UML 模型映射到业务流程模型元素提高了 UML 模型和 BPM 过程模型的可维护性可跟蹤性和可伸缩性只要目标系统的 UML 模型反映了更改或其他需求那么就可以很容易地更改目标业务软件系统来适应这些更改 在另一方面将业务流程元素映射为 UML 模型元素的能力节省了时间和成本并将错误降至最低映射还使业务专家能够输入软件系统的分析和设计并验证系统的业务需求 Holosofx Workbench 和 UML Transformer 在这三个组件中Holosofx Workbench 是支持 CBPM 工作的关键Workbench 是基于 Windows 的桌面应用程序它符合 Activity Decision Flow DiagramLines of VisibilityPartner Interface ProcessUMLWorkflow Process Definition Language (WPDL) 和 XML 的建模运行时交换等方面的标准Workbench 与 Rational RoseXMIMQSeries Workflow/build time/FDLUML TransformerHolosofx Workbench Server 和 Holosofx Monitor 相互作用它通过一个脱机导入/导出交互过程将 Flow Definition Language (FDL) 文件导出到 IBM WebSphere MQ Workflow 运行时环境 (在下一版本导出 Modeler以支持 IBM CrossWorlds) 图 Holosofx WorkbenchHolosofx Workbench 的关键是其 UML TransformerUML Transformer 通过为开发人员提供一个可以使用的坚实基础来支持开发过程它捕获从概念到完成的设计生存周期例如使用类图(Class diagram)将 IT 设计元素映射到业务流程模型的元素以帮助开发人员在过程建模的同时发展 IT 元素IT/业务流程模型映射功能使过程模型和 UML 模型都具有可跟蹤性模型会显示主要过程轮廓和功能需求直至实际构成了结构下面软件产物的元素 UML Transformer 使开发人员可以实现以下操作 产生清晰的开发计划 链接 UML 模型与 BPM 过程模型 在 UML 中用 种不同视图 (visualdiagram) 建立业务软件系统模型ClassUse CaseSequenceCollaborationState 和 Activity 在 UML 模型和 BPM 业务流程模型之间转换公共元素 用序列和协作图 (Sequence and Collaboration diagram) 查看系统对象对象中的消息和系统的逻辑流程 在业务建模和分析中开发人员可以利用的一个重要功能是 Business Modeler 导入/导出 FDL 和 XML 模式的功能内藏的 UML Transformer 允许软件开发人员在 UML 模型中指定自己业务应用程序并将这些应用程序链接到过程模型而 Xform Designer 可以动态设计所需要的表单和用户界面屏幕 最后开发小组可以用这个模型验证代码是否满足需求以及是否可以从这段代码跟蹤需求 链接 IT 和业务世界 业务流程模型以及 UML Transformer Activity 和 Use Case 图表都模拟了业务环境但它们使用了两种不同的概念而且它们注重的内容和相关元素是不同的UML 模型的重点是软件系统成分和组件而 BPM 过程模型的重点是业务目标和如何实现这些目标不过UML 模型和业务流程模型确实有共同的元素Holosofx Workbench(利用 UML Transformer)具有处理这些公共元素并在两种应用程序之间转换这些元素的能力 使用 Holosofx Workbench 和 UML Transformer可以在以下元素之间进行数据转换 BPM 数据结构 (Data Structure) 与 UML 类 (Classe) BPM Process Model (ADF Diagram) 与 UML Use Case 及其 Activity Diagram BPM Tasks 与 UML Use Cases 和参与者 图 转换数据的屏幕快照BPM 业务流程模型通常包括大量的人工和自动过程人工和自动系统以及过程表明了软件系统需要哪些功能(映射为 UML Use Case)来支持业务流程例如在 UML 方法中功能软件元素被链接到 Use Case而该用例又被链接属于一个或者多个业务流程模型的特定任务随着软件的发展和成熟每个软件元素和功能的业务评价都可以从业务流程模型中分离出来或者上溯至业务流程模型 在 Holosofx Workbench 中任务描述了该流程模型并且定义了如何完成工作谁做这个工作需要哪些资源和/或应用程序完成工作以及完成工作所需要的资格如果任务细节定义了一个软件应用程序的全部或者部分功能那么整个任务的属性将在描述这个应用程序时变得明确 模型转换的例子 对过程的用例部分进行建模 在我们的样本用例中业务活动是打包客户的订单业务用户将可能在一个更大的过程中用到它如完成销售订单虽然他们有必要的知识创建用例但是他们一般不具备 UML 模型的知识因此业务用户的普遍起点就是在 Workbench 中建立完成销售订单模型完成创建之后他们就可以与开发人员一起检查该用例并验证其需求下图显示了 Holosofx Workbench 中过程模型的用例部分 图 用例过程模型将过程模型导出到 XML 开发人员再使用 Workbench 中的功能将过程模型转换为 UML Activity 图表但实际上该转换是通过将过程模型导出为表示前述过程模型的 XML 文件来完成的下图显示了从 Holosofx Workbench 过程模型中导出的 XML 文件 图 过程模型 XML 文件将 XML 文件导入到 UML Transformer 创建了 XML 文件并将其从 Workbench 导出之后开发人员就可以将该文件导入到 UML Transformer 中在这里它变成了 UML 图表下图显示 |