如何使SOA计划获得成功

日期: 2009-08-27 来源:TechTarget中国 英文

  虽然对于SOA的前途肯定有许多观点,但是,现实是SOA仍然非常有活力。SOA在节省成本、提高生产率以及消除信息和应用程序竖井等方面的作用这些核心的概念并没有消失。然而,随着SOA日益成为计算环境的一部分,SOA这个词汇可能会发展成为其它的东西。

  最近的对话引起了一个机会,让我们重新定义和重新思考我们建设、管理和扩展基础设施的方法以便使SOA真正地与业务目标一致。正如数百个成功地部署SOA的案例证明的那样,最有效和最节省成本的实施SOA的方法就是通过治理。

  不过,在不理解业务目标的情况下简单地应用治理是妨碍效率的。关键的问题是要找到治理在SOA旅途中的什么地方、什么时候和什么点上是最重要的。

  根据收集到的各种规模的企业的经验,采用下面介绍的闯过“8个关口”的全部做法或者部分做法已经被证明是执行一个成功的治理流程的关键。在建立和部署一个SOA的时候,闯过下面简单介绍的8个关口是决定成败的关键。

  第一关:定义业务要求

  在这个阶段,许多机构不知不觉地建立了一个不现实的预期或者在其业务和IT部门负责人之间造成了混乱。在第一关,重点应该放在确定业务目标和要求上,明确说明技术部门如何支持这些目标的执行。

  除了描绘业务目标、相关的要求和关键的性能指标之外,在关键的利益相关者之间建立共识是不必可少的,要共同建立一些指标和衡量标准,验证或者指导在每一个阶段的努力。

  接下来,虽然这对于每一个人来说都是显而易见的,但是,重要的是在业务价值和投资回报、拥有总成本以及上市时间等金融好处方面不要讲缩写字和行话。一些最成功的SOA项目的领导人在向业务部门领导做解释时几乎不用SOA这个词。

  第二关:在解决方案架构中建立一致性

  对于正在实施许多IT项目的大型企业来说,不同的开发团队使用不同的方法解决不同的业务难题是不可避免的。虽然这可能为创建一个最佳做法库做出贡献,但是,这种做法常常会导致混乱、多余的努力以及增加与重复的软件许可证和分配人员有关的成本。这还会增加复杂性,从而导致减少基础设施的可靠性、稳定性和互操作性。

  在把重点放在定义业务要求方面的第一种方法的基础上,第二关就是要明确说明和一致同意在服务的建立过程中必须遵守的标准、政策和最佳做法。这些标准包括参考架构、平台标准、软件使用标准和再利用政策。

  第三关:服务识别和技术规范

  第三关的简单解释是:去你要去的地方,你必须知道你去过哪里。在这个阶段,重点是找到现有的服务并且从技术和业务的角度确定这些服务对于这个机构的价值。

  许多机构对于他们揭开基础设施的盖子时发现的东西感到意外并且详细登记他们实际上拥有的东西。在这个过程的这一点上,他们经常发现冗余的服务和与执行业务流程不一致的方法。一种支持自动治理的方法和提供早期发现的这些潜在的障碍的治理战略将显著缩短部署阶段,同时加快实现投资回报。

  第四关:服务设计

  经过记录和评估阶段,第四关的重点是服务设计,就是利用现有的东西并且描绘出如何在整个机构范围内创建服务。这个服务设计阶段提供有关架构具体细节的指南,验证正在执行所有的设计政策和标准。

  在这一点上,治理能够帮助解决一些问题,如定义服务的方式、确定用于构建这个服务使用的具体技术、确定所有的要求是否已经建立了。此外,治理还有严格检查用户界面以保证它为客户、合作伙伴和其他利益相关者保持以业务为中心的重点。

  重要的是指出第四关没有提出架构和执行开发方面的改变,因为它要求企业采用和强制执行一致的设计方式。毕竟不一致的设计方法会导致不一致的结果,有可能使业务面临风险。

  第五关:服务建立

  有趣的是许多设计师和开发人员在第五关中错误地开始自己的SOA计划。这个阶段是建立服务任务最繁重的阶段。

  正如你从以前的方法中学到的那样,没有明确定义业务要求,不理解已经有了什么和采用什么方法向前发展,盲目地进入创建阶段将被证明是没有效率的。重要的是要认识到JBOWS(只有一些Web服务)和SOA的之间的区别。

  在服务建设阶段,重点应该放在验证这个开发努力是否符合政策、最佳做法以及解决方案架构和服务设计阶段指定的标准。

  当治理是这个基础设施的一部分的时候,它能够保证持续不断地检查新的服务。理想的情况是这将通过一个自动的流程完成。这个自动的流程能够不间断地跟踪开发工件的来源并且在整个生命周期内跟踪这个服务的质量。通过掌握与这个工件有关的信息,再利用的潜力将成倍提高,因为一直有这个服务质量的审计跟踪。这样,在这些工件应用之前就可以检查它们遵守政策的情况。

  第六关:服务测试

  在部署之前,服务需要进行测试,这是SOA治理在验证遵守政策或者拦截潜在的使用或者再利用的错误代码中发挥重要作用的地方。

  虽然有许多可用的测试工具并且设计师和开发人员已经在使用这些工具,但是,对于部署这些服务还有一些具体的规程应该进行测试。

  具体地说,这个服务测试需要包括:一个自动的构建环境,允许更迅速地改变测试的软件;一个负荷/应力测试工具以便测试无功能的要求、技术规范、创建和测试数据负荷;一个测试管理报告工具,让管理层随时了解测试状况。

  第七关:服务认证和部署

  随着终点线看得越来越清楚,第七关的目标是把这个服务移植到生产环境,同时最大限度减少客户机关机时间和对业务的影响。实际上,你是在业务仍在运行并且保持对客户、合作伙伴和员工的透明度的同时改造这个业务。

  正如你可能猜到的那样,如果这个过程用人工完成,这个过程将可能出现错误。这是自动化治理的价值闪光的地方。自动化治理能够保证准确和快速地部署正确版本的服务,同时保持进行最终的认证检查以验证遵守政策和标准的状况。

  第八关:服务活力

  显然,重要的是根据现实世界的结果定期评估和更新治理流程、程序、政策和标准。这个服务活力阶段检查正在运行的整个服务质量,特别是在SOA普及和不断增加新的服务的时候。

  第八种方法向IT和业务决策者提供一个透明的可见性以衡量SOA的效果和有效性,并且提前发现什么地方和什么时候需要改变。

  结论

  虽然一些机构也许把治理看作是一种不必要的和耗费时间的“要做的事情”,但是,避开这个重要的因素造成的影响可能是灾难性的。重要的是需要指出自动治理的出现有助于理顺软件开发声明周期,同时使软件开发成为整个流程不可分割的一部分。

  不过,成功的自动化治理还没有出现。它必须是有意的和有重点的并且需要定义明确任务和责任的领导。自动化的治理必须实现深思熟虑的和一致的强制执行的政策和程序。自动化治理必须支持建立一些控制方法,反应和支持机构的任务和文化。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

相关推荐

  • 谁知道阿里云河南服务中心是干什么的?

    一直接到阿里云服务中心的电话,说是阿里云的授权中心,主要提供阿里云的区域服务的?请问其他地方也有阿里云的服务中 […]

  • 事件驱动框架和SOA在空军的应用

    空军正在利用SOA来改善数据共享,并实时跟踪战机,美国空军机动司令部的Michael Marek解释了企业可从中学习的经验。

  • 揭秘New Relic APM技术细节

    New Relic应性能管理(APM)套件主要用于Web软件开发。它允许用户在面向服务的架构(SOA)上跟踪关键事务性能,并且支持代码级别的可见性来评估特定代码段和SQL语句对性能的影响

  • 仅凭SOA和云无法解决业务数据管理风险问题

    SOA和云可以是某些恼人问题高效的解决方案;这一点我们已经知道了。但是也要记住它们并不是所有事情的直接答案,特别是当你的问题是业务数据管理风险,而不是技术问题时。