面向服务的软件架构SOA及其支撑技术

2018-03-22 01:31李肖克
电子技术与软件工程 2018年1期

随着Web service日新月异的发展,现基于服务软件架构的SOA也成为炙手可热的话题。信息化的浪潮也带了SOA的迅速发展,本文以此为契机,研究SOA出现的背景,引入SOA。接着对SOA展开介绍,提出了基于MDA和AM的SOA元模型,以期实现企业IT资产的最大化作用。

【关键词】SOA MDA AM 支撑技术

从信息化变迁来看,软件的本质决定了其复杂性。为了应对这个难题,科学家设计了许多程序和方法来解决这一难题。比如模块化设计等方法,但见效甚微,只是一定程度上减小了复杂性,并未彻底解决这一难题。现SOA如雪中的木炭,为这一难题的解决带来了黎明的曙光。

1 面向服务的架构

从传统的服务的分布式计算方式来看,CORBA和DCOM并不是新奇的技术,其具有一定弊端。

(1)各方是紧凑耦合的,并非松散结合。换而言之,分布计算连接的两端都必须遵循同样API。

(2)各个软件架构是专属的,其具有唯一性。

而面向服务的软件架构SOA则避免了以上不足,各个软件架构是基于标准的,在此也是松散耦合的。SOA为企业带来了巨大的灵活性,还包括三个参与者之间的关系:

(1)服务提供者,其从通常意义上看有定义良好的接口,覆盖对内的和对外的。其服务之间通过简单、精确定义接口进行通讯,不涉及底层编程接口和通讯模型。而且此接口的定义是平台和语言中立的,带来的好处是,通过服务提供者可以注册服务。

(2)服务消费者,在我们需要某项服务之时,我们可以提前通过查询服务目录的方式得到与服务有关的描述信息,从而可以动态绑定到这一服务。从而带来了与服务消费者相投明的方式调用了相关服务。

(3)服务目录,作为服务消费者与服务提供者二者之间连接的桥梁。一方面,服务提供者通过它来完成注册服务,另一方面服务消费者通过他查询相关服务信息,能更加方便、快捷、透明地调用服务。

2 SOA的原则

SOA区别之前的架构,本质上是其业务敏捷性的体现。为了实现这种敏捷性,SOA需要体现以下原则:

(1)业务驱动服务,服务驱动技术;

(2)业务敏捷性是基本的业务需求;

(3)良好的SOA处于不断地变迁下。

3 基于SOA的解决方案的特性

抛开以往的安全性和加密小等日常服务架构性能,基于SOA的解决方案的特性加入了很多其他的元素:

(1)从对象上看,服务的客户不应该知道服务具体实现的细节;

(2)从位置上看,服务的位置应该对客户保持透明,然而并非一直如此,只有在运行时客户才需要知道服务的位置;

(3)从协调性上看,软件应该保持和其它平台上的其它软件互操作;

(4)从时序性上看,多版本的服务软件应该能实现被同时访问。

4 SOA的基础:MDA和敏捷方法

SOA整个架构都必须满足业务敏捷需求,因为,其中任何的瓶颈都会影响到整个系统的灵活性。从软件工程领域的发展前景来看,现有架构上的和方法学上的两大趋势生生不息。尽管二者实现方法和路径迥异,但是它们对SOA的实现都是大有好处。

从外部看来,似乎MDA和AM是相反的。从需求端来看,因为MDA假定存在固定的需求,而与其不同的是AM并无固定需求,采用迭代方法,其面对的是千变万化的需求。从模型的选定来看,MDA以正式模型为中心,而AM恰恰相反,它是从各种方法中,选出相应元素从而结合成相应的架构。

5 SOA的4+1视图方法

图1展示了SOA的视图场景,图中的外围展现了架构的不同方式,而最中心的是用例视图,相交于其他的四个试图。最为关键的是,它在架构中扮演了一个特殊的角色。一方面从系统专家角度观察,部署视图通过映射的方法,传到底层平台和相关的硬件。另一方面,從程序员角度观察,实现视图则详细阐述了软件代码的组织。而至于过程试图大多是用于业务分析,既能很好地解决了软件的运行问题,也能提高工作的效率。而逻辑视图则展示出用户的功能需求。纵观SOA的系统实践,架构是通过用例图试图建立用户与用户提供者的联系,从而架起了二者沟通的桥梁。

从图1视图的研究来看,虽然当前存在支持的中间平台,研究者对于软件开发和维护也做了不少的研究工作,但开发依然缺少方法学基础理论,更加缺乏完备的模型驱动理论。本文在此同时提出基于的模型驱动快速开发架构SMRDA,既能弥补现有方法的不足,也能为异构系统的交互提供比较满意的解决之道。通过SMRDA,企业不但可以发布自己的信息供其他服务需求者查询,同时也可以查询到特定的描述信息并且绑定到该服务上,真正实现解决自己所需。

参考文献

[1]宋旭东,王雪萍,刘晓冰.基于与MDA与web服务的企业应用集成研究[J].计算机应用研究,2009,31(08).

[2]于笑丰,胡军,李宣东等.面向的模型驱动开发方法[J].计算机科学,2006,33(04).

[3]王昆昆,邹书蓉.利用改进的研究[M].信息工程学院学报,2007,2(02).

[4]叶宇风.基于以的企业应用集成研究[J].微电子学与计算机,2006,23(03).

[5]陈涨婕.一种面向服务的体系结构参考模型[J].计算机学报,2016,2(03).

作者简介

李肖克(1987-),男,初级工程师,大学本科学历。研究方向为软件研发。

覃旺(1990-),男,壮族,初级工程师,大学本科学历。

作者单位

中国电子科技集团公司第三十四研究所 广西壮族自治区桂林市 541000