到达 SOA 质量管理的道路
服务复用是在 SOA 实现中促使成本节约和业务灵活性的关键因素之一。然而,如果一个服务被许多复合的业务应用程序使用的话,那么对该服务的高质量和性能的需求将比今天许多纵向集成的应用程序要更大。另外,复用的承诺承担了潜在的风险:违反安全性或法规遵循政策的服务、妨碍其他服务操作的服务,等等。需要平衡风险与服务复用的价值,而该过程已经作为 SOA 质量管理了。
以前,测试是瀑布式发布计划的最终阶段,在软件开发过程最后进行。现在,SOA 高质量的要求需要团队必须针对性能、复用、法规遵循、安全性,等等对他们根据业务需求所构架、构建、部署,及管理的东西进行验证 —— 在 SOA 实现生命周期地每个阶段。验证 SOA 的意思是在服务层和复合应用程序层对组件进行测试。它还意味着处理与遍布不同部门、不同实践,或者也许是全球分布的团队合作中所固有的控制问题。
SOA 计划从而推动了软件开发过程中的质量管理演进,如图 3 所示。
图 3:从软件测试到业务驱动的质量管理
从传统软件测试到业务驱动的质量管理的这一加速趋势是业务/IT 协作中前进的下一个步骤。在该环境中,软件测试仍旧非常重要,但是它只是跨整个 SOA 环境管理质量的,优化业务灵活性并降低整体成本的一个部分。
SOA 质量管理:服务生命周期管理的一个方面
SOA 质量管理是服务生命周期管理的一个重要方面 —— 它反映了解决跨多个 SOA 服务实现的服务质量多个方面的需要。IBM 专注于交付端到端的 SOA 质量管理,从建模到组装、部署和管理。SOA 质量管理所涉及的远远多于传统的软件开发和测试。它围绕着所有的方式,业务和 IT 组织可以以这些方式在服务方面,以及从概念到服务和复合业务应用程序的运行终结的生命周期方面进行合作。
IBM SOA 质量管理交付的重要能力包括:
通过工具和最佳实践,在 SOA 生命周期中,引起对质量管理的关注
通过对业务服务进行是否遵循业务和法规需求的功能及性能测试,来确保业务敏捷性
通过流线化并消除过程冗余,优化并自动化跨业务过程的工作流。
图 4 例举出 SOA 质量管理活动如何通知 SOA 服务生命周期管理的。