论文部分内容阅读
面向服务的软件架构已逐渐成为计算机领域内的研究热点,本文所研究的是其中的一个问题--服务约束。服务并不仅仅是简单的程序调用,它也包含了丰富的语义信息。同一个服务在不同的环境或者场景下使用会有不同的限制,而且服务和服务自身的关系间也可能存在相互之间的限制,这些都是服务约束。随着服务发现、服务组合等领域研究的深入,研究者迫切需要一套能较好的反映不同服务语义信息之间、服务语义信息和服务运行环境之间相互关系的机制,而这些恰好是服务约束研究的内容。所以服务约束的研究对服务发现、服务组合等领域的工作有很大的帮助,而后者正是前者的缘起和推动力。目前在服务约束领域的研究工作还有很多需要改进的地方,还没有研究者较为完整、成熟地建立服务约束框架结构。本文先从分析服务的描述模型开始入手,提出对现有服务模型的改进以更好的支持服务约束描述的需要。然后尝试从分析服务约束本身开始,探讨服务约束的可能场景,并结合服务约束可能使用的约束语言给出服务约束以及相应的约束验证框架。最后从简化服务约束定义着眼,解析服务约束的多种可能框架,从中抽取出对应的服务约束范式,使用约束范式自动化的定义服务约束。本文的主要工作包括以下几个方面:
(1)服务描述模型的分析
针对当前服务描述中存在的问题,提出了对现有服务描述标准的改进,通过增加语义信息的属性来表述需要的语义信息。同时将相似的服务抽象成为服务模板,在模版中记录一类服务的共有特征。
(2)服务约束特征和技术的研究
在上述服务描述模型的基础上,结合对服务间可能关系的分析,提出完整的服务约束框架结构。文中使用对象约束语言来表述服务约束,分析了它与其它类似语言的优劣,给出了对应的服务约束验证流程。
(3)基于模式(Pattern)的服务约束定义
在前面工作的基础上,通过分析服务约束的语义结构,从服务约束中抽取出最基本的语义信息单位和一些包含语义框架信息的范式。相同的模式只要变换语义信息单位的取值就能表述不同的约束语义。使用者可以使用模式来定义服务约束,并让模式自动生成需要的服务约束语句。