【IT168 专稿】
SOA,即面向服务的架构。
SOA的概念
从服务驱动角度看:企业应用是一系列服务通过适当的流程编排或服务编排进行驱动,来满足企业应用的需求。
从开发模式上看:开发分为流程开发和服务开发;在开发或选用适当服务的基础上,以流程编排/服务编排为驱动,满足企业的应用需求。
从分析模式上看:分析分为流程定义、服务识别、和服务定义。一切分析以业务为基础,减少系统分析和业务定义间的模型一致带来的理解差异。
从业务改善上看:通过监控流程的流转效率,为流程/业务改善提供依据。
从数据交换方式上看:提供统一的数据交换平台,通过消息路由和消息寻址,实现统一的数据交换。
从结构模式上看:将服务消费者和服务提供者分离,消费者通过服务寻址来得到需要的服务,服务注册和服务管理将向服务消费者透明。
从管理角度上看:服务注册、服务管理和透明访问,为服务的管理、重用和优化提供了便捷的方式。
搜索引擎的出现改变了传统的信息获取的模式,SOA的架构体系将改变传统软件构件的获取和使用模式,软件集成商和服务提供商的分工将为用户提供更加细致的服务。
从工程发展角度看待SOA
以电子产品的发展过程看:
初始期:大量采用电子管,没有模块化的概念。
中期:集成块的产生,简化了产品的构成,增强了产品的可维护性。
目前:可寻址、热插拔技术的发展日趋成熟,改变了以前通过单一功能齐全的电子产品提供服务的模式,由各项功能简单、专业的产品的集成在一起,提供负责应用成为一种可能,人们可以根据自己的需要选择、更新某一单一功能的电子产品来改善自己的需求。
软件开发方法的发展:
初始期:面向过程的结构化开发,没有对象的概念。
中期:面向对象的开发过程的产生和组件化开发的应用,为基于构建的开发提供了可能。
目前:SOA概念的引入,将控制(流程)、模块(服务)、数据传输(MB)进行了分割。对服务引入了可寻址、可管理的概念,为软件的工程化开发奠定了体系上的基础。