购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

3.4 面向服务计算的目的和优势

在将面向服务持续应用于软件程序设计时,一系列战略目标和优势(见图3-26)共同代表了我们所期望实现的目标状态。理解这些目标和优势是非常有益的,因为它们可以为我们提供连续不断的总体背景和理由,以维持我们长期实现面向服务的投入。

下面将描述这些战略目标和优势。

图3-26 七大确认目标相互关联并且可以进一步划分为两组:策略目标和效果优势。提高组织业务敏捷性、提高投资回报率和减少IT成本是实现剩余四个目标的具体优势

3.4.1 增强本征互操作性

互操作性指的是数据的共享。软件程序的互操作性越高,它们之间的信息交换越容易。不具备互操作性的软件程序需要集成。因此,集成可以看作实现互操作性的过程。面向服务的目标是在服务中建立天然的互操作性,以减少集成需求(见图3-27)。如3.3节中所述,集成作为一个概念在面向服务的环境中开始消逝。

互操作性是靠一致的应用设计原则和设计标准特别培育的。这样就建立了一种环境,其中将不同项目在不同时间产生的服务重复地组装在一起成为各种组合配置以帮助自动化实现一系列业务任务。

本征互操作性代表了面向服务的基本目标,为实现其他战略目标和优势奠定了基础。契约标准化、可扩展性、行为可预测性和可靠性只是促进互操作性所需的一些设计特性,所有这些都可以通过本书中记录的面向服务原则来诠释。

8个面向服务原则,每个均以某种方式支持或有助于互操作性。以下是几个示例:

·标准化服务契约——标准化服务契约,以保证相关互操作性的基线测量与数据模型协调。

·服务松耦合——降低服务耦合程度并通过降低各个服务与其他服务的依赖性而促进互操作性,因此对不同服务消费者的调用更加开放。

·服务抽象——关于服务的抽象细节限制了对服务契约的所有互操作,底层服务逻辑的独立发展增加了互操作性的长期一致性。

图3-27 服务被设计为本质上可互操作的,而不管何时、为何目的被交付。在这个示例中,项目团队A和B提供的发票和时间表服务的本征互操作性导致它们可以被项目团队C组合成一个新的服务组合

·服务可重用性——设计服务重用意味着服务和许多潜在的服务消费者之间需要高层次的互操作性。

·服务自治——提高服务的个体自治性,其行为变得更加一致可预测,增加其重用潜力,从而实现可达到的互操作性水平。

·服务无状态——通过强调无状态设计,服务的可用性和可扩展性增加,它们可以更频繁、更可靠地进行互操作。

·服务可发现性——可发现性只是允许服务更容易地定位哪些服务与该服务存在潜在的互操作性。

·服务可组合性——最后,为了服务的有效组合,它们必须是可互操作的。可组合成功率直接与服务标准化和跨服务数据交换优化的程度紧密相关。

应用面向服务的基本目标是使互操作性成为自然的副产品,理想状态是将本征互操作性水平确立为常见和预期的服务设计特性。

3.4.2 增强联合

联合IT环境是资源和应用程序联合在一起,同时保持其各自的自主性和自治性。面向服务的目标是在所有适用程度上增加企业的联合视角。通过广泛部署标准化和可组合服务来实现这一点,其中每个服务都封装了企业的一部分并以一致的方式来表达。

为了增强联合,标准化成为每个服务在设计时额外关注的一部分。最终会造成这样一个环境,即企业范围的解决方案逻辑自然协调,而不用关注其底层实现(见图3-28)。

图3-28 三个服务契约建立了一组联合端点,每个端点封装着一个不同的实现

3.4.3 增加供应商多元化选择

供应商多元化是一种能力,指组织必须选择“最佳品种”的供应商产品和技术创新,并在企业内部使其协同工作的能力。供应商多元化环境对组织并不一定有利。然而,有需要时多元化选择却是有益的。要拥有并保留此优势就需要其技术架构不局限于任何一个特定的供应商平台。

这代表了企业的重要状态,因为它为组织提供了持续自由来改变、扩展甚至替换解决方案实现以及技术资源,而不会中断整个联合服务架构。这种程度的自治自主性是极具吸引力的,因为它延长了自动化解决方案的寿命并增加了财务回报。

与主要供应商的SOA平台对齐同时又与其保持中立,并且通过将服务契约定位为贯穿联盟企业的标准化端点,可以抽象专有服务实现细节以建立一致的服务间通信框架。这为组织提供了连续选择,这样就可以根据需要实现企业多元化了(见图3-29)。

图3-29 一个由三个服务组成的服务组合,每个封装着一个不同的供应商自动化环境。若面向服务充分应用到该服务中,则潜在差异无法抑制其组合为有效组合的能力

通过利用基于标准、与供应商无关的Web服务框架进一步支持供应商多元化。因为它们对专有通信没有任何需求,所以服务对供应商平台的依赖也降低了。与其他任何实现介质一样,服务需要通过面向服务来形成和标准化以成为更大服务目录的部分联合。

3.4.4 同步提升业务与技术领域

IT业务需求实现的完满程度常常与业务逻辑表达和解决方案逻辑自动化的精确度相关联。尽管传统上初始应用程序实现是为满足初始需求而设计的,但是随着业务性质和方向的变化,保持应用程序与业务需求一致仍是一个历史性挑战。

面向服务在多个层次上促进了抽象化。应用功能抽象最有效的手段之一是建立准确封装和代表业务模型的服务层。这样做的话,一般预先存在的业务逻辑(业务实体、业务流程)可以作为已实现的形式存在于物理服务中。

这是通过结合结构化分析和建模过程来实现的,并且需要业务主题专家实际参与服务的实际定义(如4.4.5节所述)。由此产生的服务设计能够使自动化技术与商务智能达到前所未有的一致(见图3-30)。

此外,将服务设计为本征可互操作直接有助于业务变化。业务流程为响应各种因素(业务气候、新策略、新优先级等)而增加,服务也被重新配置重新组合,以反映业务逻辑变化。这就促使了面向服务的技术架构与业务本身一起演进。

3.4.5 提高投资回报率

衡量自动化解决方案投资回报率(ROI)是决定应用程序或系统实际成本效益的关键因素。回报越大,组织从解决方案中获益越多。然而,回报率越低,自动化解决方案成本吞噬的企业预算和盈利就越多。

图3-30 以业务为中心的功能上下文服务经仔细建模以表达和封装相应的业务模型与逻辑

由于所需应用程序逻辑的性质复杂性提升,且由于不断增长的非联合集成架构难以维护和发展,一般的IT部门代表了组织运营预算的绝大部分。对于许多组织来说,IT所需的财务开销是主要关注的问题,因为经常会出现财务开销持续增长却无相应业务价值增长的现象。

面向服务倡导不可知解决方案逻辑的创建,它对任何一个目的都是不可知的,因此对于多种目的是有用的。这种多用途或可重用逻辑充分利用了服务本征可互操作的性质。不可知服务具备更高的可重用潜力,通过重复组装不可知服务,组装成不同的组合来实现。因此,任何一个不可知服务都能够发现自己在自动化不同的业务流程中被多次重用,作为不同面向服务解决方案的一部分。

考虑到这一优势,组织往往会为每个解决方案逻辑投入额外的前期费用和工作量,将其定位为IT资产,以实现可重复的长期财务回报。如图3-31所示,强调增加的投资回报率通常会超过传统上作为过去重用计划的那部分回报。这与以下事实有很大关系:面向服务旨在将重用作为大多数服务的普遍和第二特征。

图3-31 用于计算SOA项目的ROI公式类型示例。更多投资在初始交付,目的是从随后增加的重用中获益

重要的是要承认这个目标不仅仅与传统上软件重用带来的优势有关。久经考验的商业产品设计技术被整合并与现有企业应用交付方法混合,形成一组独特的面向服务分析和设计过程的基础(如第二部分所述)。

3.4.6 提高组织的业务敏捷性

在组织层面,敏捷性指的是组织能够对变化做出反应的效率。提高组织敏捷性对企业尤其是私营机构非常具有吸引力。能够更快地适应行业变化并超越竞争对手具有巨大的战略意义。

IT部门有时可能被认为是瓶颈,需要太多的时间或资源来满足新的或不断变化的业务需求,这就阻碍了期望的响应性。这是敏捷开发方法越来越受欢迎的原因之一,因为它们提供了一种更快速地解决即时、战略性关注的方法。

面向服务就像是为建立广泛组织的敏捷性而量身定做的。当在整个企业中应用面向服务时,可以促使高度标准化和可重用服务的创建,并且服务对父业务流程和特定应用环境不可知。

由于服务目录由越来越多的不可知服务组成,其整体解决方案逻辑增加的百分比不属于任何一个应用程序环境。相反,因为这些服务被定位为可重用IT资产,所以它们可以被重复地组成不同的配置。因此,自动化新的或变更的业务流程所需的时间和精力相应降低,因为现在完成开发项目花费的自定义开发工作量显著变少(见图3-32)。

在项目交付中这种根本性转变的最终结果是提高响应速度和缩短上市时间,这些都转化为提高组织敏捷性。

图3-32 交付时间表是基于需要构建的“纯新”解决方案逻辑百分比来规划的。尽管在本示例中只需要35%的新逻辑,但时间减少了大约50%,因为仍然需要大量的工作来合并目录中现有的可重用服务

注意

组织敏捷性表示组织在提供服务和填充服务目录时努力工作的目标状态。待大量服务到位,组织就会受益于提升的响应能力。与使用传统项目交付方法构建相应数量的解决方案逻辑相比,建模和设计这些服务所需的流程需要更多的前期成本和投入。

因此,重要的是要认识到面向服务的战略重点是建立一个高度灵活的企业。这与具备多个战术焦点的敏捷开发方法截然不同。

3.4.7 减少IT成本

始终如一地应用面向服务能够给IT企业带来诸多好处,例如,减少浪费和冗余,缩小规模和运营成本(见图3-33),以及减少与其治理和演进相关的开销。这样企业可以通过大幅提高效率和成本效益来惠及组织。

图3-33 若要经营一个典型的自动化企业,并完全使用定制、规范化服务重新开发,其整体规模将大幅缩减,从而减少运营范围

实质上,实现前述目标可以创建一个更精简、更敏捷的IT部门,这对于组织来说算不上是负担,而更像其战略目标的贡献者。

总而言之,将面向服务设计原则一致应用到每个服务中并最终构成更大的服务目录,是实现面向服务计算目标和优势的核心要求(见图3-34)。 fkPptjnO3IuI+aScBaFv7LfGMu0FTWEJlrQWCrBdSt0ZJ4smqtqU6Lfv0GUzZN2o

点击中间区域
呼出菜单
上一章
目录
下一章
×