欢迎来到天天文库
浏览记录
ID:13245831
大小:715.50 KB
页数:9页
时间:2018-07-21
《一种服务失配的自动检测方法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、一种服务行为失配的自动检测方法1.技术领域本发明主要针对当前面向服务的计算环境中服务交互协作过程复杂需对服务之间的失配进行自动检测从而实现服务适配的问题,采用π演算的自动推演能力和扩展规则,在产业界和学术界现有的针对服务失配研究的基础上,提出一种服务行为失配的自动检测方法。2.背景技术面向服务的计算与面向服务的软件架构的发展,服务逐渐从简单的功能封装向能够自主适应服务调用对象和网络应用环境的智能化方向发展,服务内部集成了大量基本服务单元并且包含了复杂的业务逻辑和过程约束导致服务之间的交互协同复杂。早期的服务失配检测方法主要侧重于语法和语义层次,缺少对服务交互行为失配问
2、题的研究。语法层次的失配检测主要包括两个方面的内容:其一是检测服务在接口名、参数名、参数类型、参数个数等不一致的情况下的失配;其二是检测因服务的开发语言和运行环境的差异性而引发的失配。语义层次的失配检测主要是检测因服务语义描述的不一致或者服务功能不完全满足系统需求而引发的功能失配。行为层次的检测主要是检测服务交互过程中因接口调用顺序的不一致、传递的消息规格不匹配等引发的失配问题。实现服务行为失配的自动检测需建立在抽象的形式化方法基础上,通过对服务行为进行形式化建模,利用形式化方法的辅助工具来推演模拟服务行为交互过程并进行失配检测。现有的建模服务行为的形式化方法主要有基
3、于有限状态机、自动机、Petri网和进程代数(如CCS,CSP,π演算)等。基于有限状态机、自动机和Petri网的方法在服务行为的描述上采用图形方式较为直观,但当服务行为和服务间的交互过程变得较为复杂时,这种图形刻画的方式容易出现状态空间爆炸,其计算、验证和判定的复杂度也随即增加。进程代数是用来对动态实体进行建模的正式语言,具有严密定义的形式化语义,能够将服务的行为与清晰的操作语义联系起来,并且能对他们的属性进行自动验证。进程代数具有更丰富的协议表示和描述,能对并发系统进行更复杂的分析并支持系统模拟,但存在一个很大的缺点是其本身固有的复杂性。π演算是RobinMiln
4、er 提出的以进程间的移动通信为研究重点的并发理论,与传统的进程代数CCS不同的是,π演算能够对基于构件的开发式系统中的构件间的相关性和交互性进行建模,如局部和全局决策,动态创建新进程,网络拓扑结构的动态重组。因此,π演算非常适合用来建模复杂的动态变化的服务交互行为。本项技术主要在π演算的基本语法和扩展规则基础上,将服务行为模型表达成π演算进程,将服务间的交互行为转化为进程表达式之间的演化推理,在推演的过程中对服务行为失配进行自动检测。π演算的基本语法:进程和名字是Pi演算中的两个基本实体。一个进程t可以被定义成如下形式中的一种:(1)0:空进程,表示不做任何操作的进
5、程,也可由NIL表示;(2):输出前缀表达式,表示进程从通道a发出x之后执行进程P;(3):输入前缀表达式,表示进程从通道a接收x之后执行进程,通道与称为对偶通道,为进程P在进行换名(即将P中的名字x替换成接收的名字u之后的进程。如进程在a通道接收了名字z之后,将执行,即。(4):哑前缀表达式,表示进程无需执行任何动作都就可以执行进程P,表示进程内部动作。输入前缀、输出前缀和哑前缀统称前缀(prefix),即。(1):和式(Summation),表示在进程P和Q之间选择执行一个进程。如进程可以选择在a通道上接收x,然后在b通道上发出y而结束;也可以选择在a通道上发出x
6、之后结束,但如果选择了前者,则后者就无法执行。因此“和”表示的是一种互斥的选择执行关系;(2):并行表达式(Composition),表示P和Q可以并发的独立执行。此外,若P和Q中有一个在某个通道上有发出动作,而另一个在同一个通道上有接收动作,则P和Q之间还可以发生内部同步操作。(3):限制表达式(Restriction),表示进程P对外通道a被限制,即P无法通过通道a与外部进程进行通信,但仍可以在P的内部进行通信。如在进程中,由于通道a被限制,因此该进程无法通过a与外界通信,但可以在内部发生同步通信而变成进程,这是因为之间可以通过通道a发生内部的同步操作而变成空进程
7、。限制表达式还可由或两种不同的形式来表示;(4):匹配表达式(Match),表示如果名字x与y相同,则执行进程P,否则该进程为空进程,不执行任何动作;匹配表达式还可以表示成:;扩展规则(ExpansionLaw):设进程,则P可扩展成如下等价形式:其中表示集合L中的名字全部为受限名;为换名函数。扩展规则的目的是将若干进程并行组合而成的进程转变成若干个进程的和表达式。事实上,和式中任意一个子进程均表示了该并行进程的一个可能的执行方式。3.发明内容本项技术是基于如下假定的:服务在语法层次上如接口名、参数名、参数类型、参数个数等不一致的失配问题和语义层次上
此文档下载收益归作者所有