UML软件工程组织

面向服务的架构(SOA)的推荐方法
作者:Yogish Pai
时代背景

这是一个美好的时代,这是一个糟糕的时代;这是一个面向服务的架构(SOA)的时代,这是一个传统开发方法的时代;这是一个产品已经成熟的时代,这是一个产品逐渐退出市场的时代。这个时代让人乐观,也让人悲观。我们面前有无数的可能。这是IT证明其真正价值的一个极好的机会。

2005年,许多IT主管都一致认为,如下的市场形势使得企业和IT不得不转换执行业务的方式:

  • 全球化浪潮使得企业必须更为灵活才能生存下去。
  • 集约型经济促生了更多的合并,因为即使企业有大量的现金储备,市场的增长却萎靡不振。
  • 业务流程外包保持稳定,并且据估计会以几何指数增长。
目前的IT系统

通常,IT从业务所有者手中接过订单,然后拿出侧重于应用程序或侧重于集成的IT策略。此外,管理和资金模型促使企业和IT涉众竭尽所能去满足特定的业务单元或部门的需求。这种方式导致IT在一个企业或业务单元中部署多个执行相同任务的系统。重复体现在基础架构服务(比如身份验证、单点登录)、数据市场(data marts)以及应用程序(打包的和定制的,比如销售自动化(sales force automation,SFA)和订单管理)上。只需想象一下由于业务流程的改变或者收购造成的调整而引发的对该产品组合的修改将会有多么复杂。

在最好的情况下,随着每个业务单元或部门都实现了自己的解决方案,IT团队使用点对点或EAI方法来集成系统,将应用程序连接到up-stream和down-stream系统。为了跟踪整个业务流程的事务,他们在应用程序中传播一些键值——尽管不一致——并创建多个操作上的数据存储区(每个业务单元一个)以跟踪关键性能指标。

为了提供无缝的用户体验,IT机构会在业务所有者的请求下,构建门户应用程序来连接多个后端应用程序、数据市场和主数据(master data)。虽然从架构的角度来看这种最佳情况解决方案非常有效,但是它极其复杂,且维护成本很高,当企业迫于压力要增加收益而降低成本时,这种方法的维护成本就显得尤其高。

前景

抛开收益、成本和实现不谈,大多数企业和IT主管都同意下面的基本业务原则:他们的业务流程必须能够使他们与竞争者区分开来。对于一些企业来说,区分点是他们处理供应链的方式。而另一些企业则依赖于将新的革新性的产品推向市场的能力。


图1.

但是,企业和IT操作团队的成员获得流程竞争优势的方法往往有很大区别。例如,一些企业操作团队喜欢演示速效方案(quick wins)来验证一种方法,而IT操作团队则宁愿构建基础架构。两个团队的正确答案很可能是一种SOA方法。


图2.

SOA方法

SOA是一种业务操作策略,它利用信息来实现诸如提高总体收益、提高客户满意度以及改进产品质量之类的目标。企业和IT涉众需要相互合作,共同定义策略和路线图,以便实现既定目标。

下面是由实际经验得出的开发SOA路线图的推荐方法:

  • 开发一个鉴别关键性能指标的信息策略。
  • 开发一个包含业务原则、参考架构、路线图、管理和组织、业务获益等等的SOA蓝图。
  • 鉴定速效方案,演示采用SOA的业务获益。

采用SOA需要IT机构鉴定交付业务解决方案所需的服务基础架构。向企业演示速效方案以展示其价值,从而使企业采用这些速效方案,这也也非常重要。因为服务基础架构基于粗粒度、松散耦合和基于标准的服务这些SOA原则,所以它使IT能够保持主动。通过为IT提供全局解决方案,降低应用程序和基础架构复杂性,提高业务服务的重用和服务编排能力,它使IT能够及时响应不断变化的业务需求。总而言之,这种方法使IT机构能够通过自身和业务的转换来应对市场挑战。


图3. 蓝色:业务解决方案,红色:服务基础架构,灰色:业务流程

上图显示了要提供这些解决方案所需的业务解决方案和服务基础架构。最佳实践是在需求的基础上开发服务基础架构。映射服务基础架构的活动是在开发SOA路线图时执行的,这非常重要,因为这种映射使IT能够展示重用的好处,并可以演示开发新业务解决方案或修改现有的业务解决方案的灵活性。下面的例子说明了如何将业务解决方案映射到服务基础架构以便解决当今的典型业务挑战。

业务解决方案

服务基础架构

员工自助服务(ESS)

为员工交付一个执行所有个人管理任务(比如:地址更改、福利登记、申报的时间和费用等等)的门户。

BEA WebLogic Portal
  • 身份验证、授权、单点登录
  • 具有一致性观感的外观和主干
BEA WebLogic Integration
  • 与后端应用程序的集成
  • 执行跨多个系统运行的业务流程
客户单一视图(Single View of the Customer,SVC)

基于客户的角色和信息需求提供一个跨所有业务筒仓的SVC

BEA WebLogic Portal
  • 身份验证、授权、单点登录
  • 具有一致性观感的外观和主干
  • 与商业智能(BI)仪表板的集成
BEA AquaLogic Data Services Platform
  • 聚合来自多个数据源的数据
  • 从源系统抽取数据,并填充操作型数据存储(operational data store,ODS)或数据仓库
  • 利用数据存储之间的简单数据移动
  • 公开共享的数据服务以访问客户信息
BEA AquaLogic Service Bus
  • 从事务系统捕获事件,以填充客户注册库、ODS,同步数据等等
  • 必须有具有150个以上的共享服务的服务基础架构
BEA AquaLogic Service Registry
  • 管理所有的共享业务和数据服务
规章服从

需要业务流程编排

BEA WebLogic Integration
  • 执行业务流程以识别异常(基于外部事件)
  • 对跨整个企业的所有/大部分自动化流程执行核准/拒绝流程

小结

SOA的采用对企业和IT主管来说都不是一件轻松的任务。首先,这需要IT机构能鉴别交付业务解决方案所需的服务基础架构。向企业演示速效方案以展示其价值,从而使企业采用这些速效方案,这也非常重要。因为服务基础架构基于粗粒度、松散耦合和基于标准的服务这些SOA原则,所以它使IT能够保持主动。通过为IT提供全局解决方案,降低应用程序和基础架构复杂性,提高业务服务的重用和服务编制能力,它使IT能够及时响应不断变化的业务需求。总而言之,这种方法使IT机构能够通过自身和业务的转换来应对市场挑战。

 

版权所有:UML软件工程组织