论文部分内容阅读
面向服务的计算(Service Oriented Computing,SOC)是目前计算机领域的一个研究热点。采用基于Web服务的SOA(Service Oriented Architecture,SOA)构建Web服务应用(Web Service Application)可较好地解决软件复用性和互操作性问题,具有良好的应用前景。然而,Web服务应用的实用化目前仍面临着许多挑战,其中之一就是系统的维护和管理。由于Web服务应用处于高度开放的Internet环境中,为保证提供的服务质量,提高系统的可靠性和可用性,系统维护通常不能采用传统的停止系统运行的方法来进行,而须代之以动态适配,即在系统运行时刻,根据外界所发生的变更对系统的结构和行为进行适应性调整。
本文旨在研究Web服务应用如何动态适配,其主要工作包括动态适配的实现技术和保证动态适配的一致性和正确性两个方面,具体如下:
1)综述了软件动态适配出现的背景和研究现状,介绍了本文研究工作的思路.软件动态适配研究已在自主计算、面向恢复的计算,软件老化与抗衰、软件自愈等多个领域开展研究,本文研究建立在现有工作的基础上。
2)提出了Web服务应用动态适配的一般性原理,给出了实现Web服务应用动态适配的依据。该原理有机地结合了“关注分离”,“计算的反射”,“软件体系结构”三者,以保证软件具有在运行期间动态适配的能力.
3)提出了Web服务应用动态适配的机制,设计了一种Web服务应用动态适配的框架,表明了实现动态适配的可行途径。该框架是在分析Web服务应用动态适配过程的基础上,参照Web服务应用动态适配的原理设计并实现的,它强调系统结构和行为动态调整的可操作性、灵活性和安全性。其中,采用察看和更改系统结构和行为的反射机制,作为实现系统动态适配的基础;采用软件体系结构刻划系统结构和分析系统的性质,提供保证系统动态适配安全性的依据;引入面向方面的编程(Aspect—oriented programming,AOP)技术,将系统的计算功能和适配功能分开,提高系统的可维护性和适配代码的可重用性。
4)为实现Wleb服务应用动态适配的体系结构,提出了一种基于图的动态体系结构元模型.与现有的动态体系结构模型相比较,基于图的动态体系结构模型将软件体系结构的结构反射和行为反射统一在一个模型中;对连接子及其属性以一等(First class)实体的方式显式地表示,使得对体系结构的重配置过程可以施加约束条件,所有这些都为系统的动态重配置提供了有力的支持。
5)提出了一种描述Web服务应用的体系结构特点的图文法。采用这种体系结构图文法可表达体系结构约束条件,并可用以实现语法制导规则的体系结构一致性检测,从而为系统动态适配的一致性提供保证。 6)提出了一种采用进程代数来刻划Web服务及其组合的语义,并在此基础上检测服务组合的相容性,保证适配操作正确性的方法。与现有工作相比,该方法采用进程代数这一数学工具给出Web服务及其组合的语义,表达能力强;而且,对服务相容性的检测是协议级的,既避免了基调级的检测方法代价过高的问题,又比基调级的检测方法有效。
7)提出了一种采用面向方面的编程技术实现Web服务应用动态适配的方法。与通常的系统适配方法相比,采用AOP方法的动态适配中将适配代码和系统的功能代码分开,进一步提高了系统的可维护性和可配置性,可有效地支持应用系统的在线演化.
最后,在上述工作的基础上,实现了一个具有动态适配能力的实时视频点播原型系统,验证了文中所提出方法的可行性和有效性.