延续前几期讨论到的有关技术基础及服务导向架构(SOA ;Service-oriented architecture)的优点,本文将介绍服务导向架构的组织应用。当服务导向架构的技术层面越来越受到重视,企业的组织应用可能会是最重要的课题。接下来是在一些率先导入SOA的组织中,正逐渐面临到的议题。
管理上的挑战
SOA在组织上有个极为重要的课题,那就是SOA需要有集中,而且一致的支配管理。但要贯彻SOA的根本之道,就是要和不同的客户分享执行环境服务(runtime services),而资源分享的定义,便是需要支配管理。
想像你建构了一个网路服务,能提供顾客订单状态资讯,谁能被允许使用这项服务?如果有一项服务是外部客户所呼叫要求,当载量增加、效能降低时,谁要负责掏腰包购买新的硬体设备?如果你想更改这项服务,哪些使用者有权表达意见?你可以很容易看到,在IT生命周期中,从资金、需求的定义到支援都是问题。现在,将这些问题延伸到SOA 里每一个共享服务之中,你就能真切的看到支配管理上的挑战。
由于这些理由,SOA首先通常只有在早期已能熟练处理这些问题的组织中才会出现。然而,还是有不少组织的方法能够奏效。以下是一些早期SOA采用者的共同结构:
- ●与架构团队或是架构检验部门分享其企业SOA以及整体应用架构的单一、而且一致的看法。
- ● 分享开发及支援团队来设计、建构以及执行SOA中最普遍的组合。
- ● 分享专案管理部门,协助管理协调需要共同SOA资源的各种专案团队。这些专案团队平常彼此之间也是相互倚赖。
- ● 分享更新控管架构,以协助管理SOA之中变更的需求。
- ● 服务合约的品质具体说明SOA中共享服务的维护服务及可用性。
- ● 投入以上团队的间接或集中资金,而非来自企业的直接资金。
最理想的范例是,企业主能直接参与这些架构,协助组织能高度符合企业需求,以确保SOA能清楚明确,同时也能为大家所共享。这些方法,再再都协助组织成功解决在SOA中矛盾的难题。为了让企业确定能拥有SOA所保证的弹性和速度,他们必须放松一些在IT功能上的控管。
SOA是改善IT生命周期的框架
愿意采用或是早已采用强而有力的管理模式的组织,最能体验改善过后的IT生命周期所带来的好处:
- ●应用程式传输的速度获得改善
- ●弹性及功能性拓展,能符合企业单位的需要
- ●效率获得改善,总体拥有成本也明显降低
在SOA的框架中,典型的开发包含下列几个项目:
- ●创造个别服务(例如,网路服务中的「更新客户订单状态」和「使用者验证」)
- ●将服务置入企业流程(例如,订单的端对端流程)
- ●汇集服务及组合式应用(例如,订单-收款的入口网站)
这个方法究竟能改变且改善IT生命周期到什么程度,尚未有定论,但率先采用SOA的公司举出了下列几项优点,有的著重在速度及灵敏度,有的则是强调效率的提升:
着重企业流程的开发
抽象服务的技术难题。一个企业流程分析师会很自然的从安排好的服务组合密切对照组成企业流程活动的角度来思考。举例来说,订单管理流程也许是由「订单开发」与「信用授权」以及其他由企业流程管理引擎的服务所组成。 IT的语言也开始变得广为大家熟悉。已采用这些流程映射服务方案的组织,都指出在企业与IT之间的互动,更为自然、更具生产力。同时,他们也找到了企业流程架构技巧的全新焦点。
反覆式及互动式的开发
在SOA中,组合式应用程式是以相对较小执行环境服务的松散藕合所组合而成,IT及企业伙伴从设计到布建的过程能较有效率地重复,以期能在相对较短的时间里,协助他们确保所提供的功能可以符合企业需求。
加速生命周期
在规划健全的SOA中,开发团队会利用一般服务的组合来帮他们节省开发周期的宝贵时间,标准化的介面能让整合更容易,并且能够进一步减少布建时间。
分散式且平行的开发
在SOA里,异质的群组能够以一致、而且可预测的架构各自独立作业,借此降低协调的支出。如此能够因为架构上及管理上的监督大幅减少,开发成果因此能够更加分散,并且也可同步产生。
可维护性及可扩展性
协助企业在适应当地需求上拥有更具弹性的能力,同时也能够具有特定服务组合的维护力量。再者,这种区隔能使提供的服务更容易修改及扩充。优良的SOA应该要能适应改变。
(作者为BEA WebLogic Integration产品管理总监)