技术开发 频道

SOA案例研究,第8部分:SOA设计

  注意:业务转换分析(Business Transformation Analysis,BTA)和服务设计实现使用 RUP SOMA 业务转换分析方法。

  服务设计使用 IBM Rational Method Composer 包括的 RUP SOMA 方法中捕获的过程。 IBM Rational Software Architect 用于创作和重用服务设计模式和非常好的实践,包括数据和部署建模以及服务组装。

  Ursula 和服务设计团队成员开始进行有关如何使用 BTA 和服务设计的培训。该团队计划使用此方法为将来的 SOA 项目创建服务设计。

  在“用于服务设计的 SOMA”中,我们在“帐户开立项目”的上下文中描述了 SOMA 的核心元素。在本部分,我们将重点介绍业务转换分析 (BTA) 和服务设计实现的关键元素,这些元素利用了 IBM Rational Method Composer 中包括的 RUP SOMA 方法。 BTA 和服务设计实现通过应用自动化的设计工具和流程,以改进设计一致性和缩短上市时间,从而提供正式的说明性 SOA 设计方法。

  图 10 显示了核心 RUP SOMA 用例和参与者。RUP SOMA 利用了“应用基于模式的工程方法”的概念。

  请注意,参与者将带模式的 BTA 和服务设计应用于执行业务转换分析用例,以及包括标识、指定和实现服务的核心 SOMA 用例。

  图 10 核心 RUP SOMA 用例

  图 11 显示了用于 BTA 和服务设计的扩展流程。RUP SOMA 流程步骤显示得非常粗略。更详细的信息在 IBM Rational Method Composer 包括的 RUP SOMA 方法中。

  请注意数据建模、集成服务和部署建模的连锁流程。在此例中,RUP SOMA 流程使用数据建模的结果。集成服务和部署建模主要是 RUP SOMA 的后续流程。管理可重用资产是扩充所有其他流程的基础结构流程。

  IBM 推出的重用管理解决方案基于 IBM Rational Asset Manager,后者用于管理和治理对任何角色和规则有利的几乎任何资产的重用。Rational Asset Manager 可以与 IBM WebSphere 集成在一起。服务注册中心和存储库支持在组织的标准资产重用流程上下文中重用和治理与服务相关的运行时资产。

  图 11 BTA 和服务设计扩展流程关系图

  图 12 显示了 RUP SOMA 中定义的主要活动:

  • 执行业务转换分析:生成用作服务设计输入的业务和业务流程模型。
  • 标识服务:发现候选服务并将其组织为层次结构以便于理解。
  • 指定服务:指定服务的外部视图,并充实服务传递的消息。
  • 实现服务:做出有关服务实现的决策。

  RUP SOMA 流程没有充分强调可靠的需求管理在整个 SOA 设计生命周期中的作用。因此,添加了管理需求流程元素。如图 12 所示,整个生命周期中非常协调地使用了 IBM WebSphere Business Modeler、IBM Rational RequisitePro® 和 IBM Rational Software Architect。

  图 12 用于 BTA 和服务设计的核心 RUP SOMA 流程

  在下面的几个部分中,我们将重点介绍核心 BTA 和服务设计用例的重要参与者、方法与模式、工具和工作产品。

  执行 BTA

  图 13 显示了执行 BTA 流程中的主要活动。BTA 的结果是创建了描述以下内容的工作产品:

  • 业务的静态结构

  创建业务分析模型并执行功能区域分析的活动。

  • 业务的动态特性

  创建业务用例模型,并通过 WebSphere Business Modeler 业务流程实现业务用例。

  BTA 活动可以产生业务体系结构的完整描述。BTA 活动还可以提供与业务相关并且是服务设计的必需输入的模型。服务设计还使用业务规则和业务目标作为服务发现的输入。BTA 还包括集中于那些构件的活动。

  图 13 RUP SOMA——执行 BTA

  标识服务

  图 14 显示了用于标识服务的 RUP SOMA 流程。该流程依赖并行执行的子任务,这些任务用于标识候选服务。同时使用不同的方法可以极大地提高发现完整候选服务集的机会。

  图 14 RUP SOMA——标识服务

  指定服务

  图 15 显示了用于指定服务的 RUP SOMA 流程。该流程用于定义服务的外部视图,以及用于实现服务的子系统和组件的外部视图的设计。在每个抽象级别,描述了接口、接口签名、接口协议和消息。此外,将在总体流程的此部分期间处理更细粒度的元素(例如原子服务)的编排,以实现更抽象的元素(例如组合服务的接口操作)。

  在此级别的设计完成之后,可以使用产品化的 Rational Software Architect 转换来创建可供 IBM WebSphere Integration Developer 使用的项目和内容,包括描述服务接口的 WSDL 文件和描述元素(这些元素用于实现服务)执行的 BPEL。内容为集成开发人员提供了起点,此起点基于解决非功能性以及功能性需求的已架构 IT 解决方案,从而给集成开发人员带来好处。

  图 15 RUP SOMA——指定服务

  实现服务

  图 16 显示了用于实现服务的 RUP SOMA 流程。做出有关使用哪些现有资产来实现服务的决策。

  在使用新组件以实现服务的情况下,将做出有关在总体系统体系结构中的何处使用那些组件的决策。

  图 16 RUP SOMA——实现服务

  用于流程组合的业务服务设计

  注意:用于流程组合的业务服务设计实现演示了使关键业务度量与业务目标保持一致的流程建模和模拟。

  Ursula 从业务分析人员那里了解到需要对帐户验证流程进行流程改进。Ursula 使用 IBM WebSphere Business Modeler 来模拟现有的流程,然后在通过关键度量模拟来实现的流程优化基础上创建了建议的流程。

  当前帐户验证流程

  下面,我们将描述当前帐户验证流程(如第 26 页上的图 17 所示)。帐户协调人员检查客户申请,并研究有关多个不同系统的信息,以确定是否需要信用报告。

  如果不需要信用报告,则客户申请将跳过该流程的大部分内容。如果需要信用报告,则帐户协调人员将向信用调查机构打电话或发送传真,以请求信用报告。由于通信方法(传真或电话)问题,信用调查机构没有为 JKHLE 提供针对其服务的优惠定价。获得多个信用报告非常昂贵并且耗时。

  JKHLE 无法区分高风险和中等风险的客户,从而导致远高于行业平均水平的大量拒绝受理请求。最后,帐户协调人员发出了批准。批准的定价是通过参考一组复杂的纸质手册来确定的。

  当前流程中存在多处流程改进余地。

  • 缺乏单一客户视图和信用流程业务规则导致我们定购了超过需要的信用报告。
  • 手动的信用报告检索流程高度不一致、代价昂贵并且非常耗时。
  • 太多的客户请求被拒绝,导致潜在客户不愉快并导致销售代表不满。
  • 虽然定价和帐户规则相当简单,但是其值更改得非常频繁。由于该过程是手动的,很难实现快速更改。

  图 17 帐户验证(现有)

  预期的帐户验证流程

  Ursula 在 WebSphere Business Modeler 中修改了模拟的帐户验证流程来处理上述流程改进,以创建如图 18 所示的基准。接下来,Ursula 可以通过更改流程中的关键度量或值,从而试着优化该业务流程。这称为流程优化(请参见图 19)。

  优化后的流程具有以下改进:

  • 自动化的完整客户视图减少了需要信用报告的客户数量。
  • 自动化的信用报告显著降低了成本并更加快速。
  • 批准更大比例的客户请求。
  • 基于规则的动态定价,可在业务需求的基础上根据需要进行更改。
  • 平均持续时间变化百分比:加速 97.6%
  • 加权平均利润:增加 84.7%

  图 18 帐户验证(预期)

  图 19 帐户验证——用于优化的流程模拟

  集成开发人员 Jason Smith 根据前面的实现中描述的方法,使用指定的服务和实现的组件组装并组合了该业务流程。

  总结

  了解到 Ursula 已完成了帐户开立项目的设计,Sandy 非常高兴。通过与 IBM 的合作,Ursula 能够将用于服务设计的 SOMA 方法应用于帐户开立服务设计。此外,服务团队学会了如何使用 RUP SOMA 方法来为将来的 SOA 采用创建服务设计。

  帐户开立服务的设计和开发团队发现,用于 SOA 设计场景的 IBM 工具集成良好并且很容易使用。诸如 IBM Rational RequisitePro、Rational Method Composer 和 Rational Software Architect 等工具提供了功能丰富的工具环境,可用于加速创建应用 IBM 方法的服务设计。使用 IBM WebSphere Business Modeler 对于业务服务设计和流程组合非常有帮助。

  总而言之,帐户开立案例研究中对 SOA 设计场景使用了以下 IBM 产品:

  • Rational Method Composer
  • IBM Rational RequisitePro
  • IBM Rational Software Architect

  IBM Rational Software Architect 中包括的产品功能:

  • IBM Rational Application Developer
  • IBM Software Modeler
  • IBM Rational Data Architect
  • IBM WebSphere Business Modeler
  • IBM WebSphere Integration Developer
  • IBM WebSphere Studio Asset Analyzer
0
相关文章