CN101833506A - 具备长事务特征服务接口的验证方法 - Google Patents

具备长事务特征服务接口的验证方法 Download PDF

Info

Publication number
CN101833506A
CN101833506A CN 201010161275 CN201010161275A CN101833506A CN 101833506 A CN101833506 A CN 101833506A CN 201010161275 CN201010161275 CN 201010161275 CN 201010161275 A CN201010161275 A CN 201010161275A CN 101833506 A CN101833506 A CN 101833506A
Authority
CN
China
Prior art keywords
satisfy
state
satisfies
initial state
action
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN 201010161275
Other languages
English (en)
Other versions
CN101833506B (zh
Inventor
王戟
陈振邦
沈锐
张圣栋
沈思琪
樊沛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
National University of Defense Technology
Original Assignee
National University of Defense Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by National University of Defense Technology filed Critical National University of Defense Technology
Priority to CN2010101612755A priority Critical patent/CN101833506B/zh
Publication of CN101833506A publication Critical patent/CN101833506A/zh
Application granted granted Critical
Publication of CN101833506B publication Critical patent/CN101833506B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Hardware Redundancy (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种具备长事务特征服务接口的验证方法,要解决的技术问题是:提出一种针对具备长事务特征服务接口的验证方法来验证服务接口是否满足关键性质,以避免语义层面的验证所面临的状态爆炸问题。技术方案是先使用自动机和函数来定义需要验证的具备长事务特征服务的接口,采用性质构造方法构造具备长事务特征服务接口需要满足的关键性质,根据关键性质的不同形式使用相应的规则进行搜索来验证服务接口,最终得到服务接口是否满足关键性质。本发明可以作为对服务计算中具备事务特征服务的接口进行形式化验证的一种有效手段,能够涵盖服务中补偿和错误处理对应的接口行为,并且避免从语义层面进行验证可能出现的状态爆炸问题。

Description

具备长事务特征服务接口的验证方法
技术领域
本发明涉及服务计算中服务接口的验证方法,尤其是具备长事务特征服务接口的验证方法。
背景技术
Internet给人们的生活带来了巨大的影响,它改变着人们生产、工作、生活和学习的方式,是社会和经济发展的重要推动力。在Internet环境下,由于网络的分布、动态、和异构等特点,使Internet上的软件面临的环境从静态封闭逐步走向开放、动态和多变,软件系统为了适应这样一种发展趋势,将会逐步呈现出柔性、多目标、连续反应等多种形态。面对这种新型的软件形态,传统的软件理论、方法、技术和平台面临一系列挑战。在此背景下,人们开始探索新的软件技术,面向服务计算(Service-Oriented Computing,简称SOC)这种新的计算范型被提出。SOC中使用服务作为构建软件系统的基本元素,在系统交互层面体现为面向服务的体系结构(Service-Oriented Architecture,简称SOA)。
服务接口是SOC中关于某个服务所能够得到的唯一信息,一个服务接口代表了一个服务,其中说明了服务该如何使用、服务所能够提供的保证以及使用服务的前提或代价等方面的信息。准确而且充分的服务接口是保证SOC中服务查找、组合、调用等关键操作质量的重要因素。如何保证服务接口的正确性是面向服务计算中的关键问题。
事务是对物理和抽象的应用状态上的操作集合。如果事务执行过程中某个操作由于某些错误的发生而失败,就需要进行错误处理来进行失败恢复,使系统恢复到之前的状态。由于面向服务的系统处在一个开放的分布式环境中,其中某个事务中的操作涉及到的资源可能由不同的组织掌握和管理,在这种情况下,如果要求在事务执行过程中对所涉及的所有资源进行隔离是不现实的。基于服务的事务与传统事务的差别在于执行时间长,需要在运行时协商来提交事务,并且隔离的要求需要降低。因此,长事务模型更加适合于服务计算的要求。
具备长事务特征服务接口是服务接口中较为特殊的一类,它所代表的服务内部有长事务的特征。为了保证服务接口的正确性,形式化的服务接口验证方法是一种重要手段。当前的服务接口验证方法不能够支持对具备长事务特征服务接口的表示、性质规约和验证,如果使用一般的形式系统直接进行描述,比如状态机、进程描述语言或Petri网,则会过于复杂。此外,在系统语义层面的验证面临状态爆炸问题,从而使验证过程不能够终止。
因此,为了保证具备长事务特征服务接口的正确性,如何对具备长事务特征服务接口进行有效验证是一个重要的问题。
发明内容
本发明要解决的技术问题是:提出一种针对具备长事务特征服务接口的验证方法,可以基于接口模型,通过语法层面的搜索,来验证服务接口是否满足关键性质,以避免语义层面的验证所面临的状态爆炸问题。
解决本发明技术问题所采用的技术方案是:
第一步:使用自动机和函数来定义需要验证的具备长事务特征服务的接口。
在构建接口的过程中会使用到下面一些定义:
1.1接口动作是一个二元组,包括服务接口中的方法名m以及方法调用的一个结果o,表示名字为m的服务方法的一次调用,其结果为o。有两类动作,成功动作表示方法调用不会发生异常,异常动作表示方法调用会发生异常,在发生后需要进行失败恢复。
1.2具备长事务特征服务的接口包含四个部分:(1)给出接口动作调用关系的扩展协议自动机,其中包含可能出现的动作集A,自动机中的状态集合S(S中⊥是返回状态,
Figure GDA0000021079050000021
是异常状态),以及状态的迁移函数
Figure GDA0000021079050000022
给出每个状态可以进行的迁移的协议项和目标状态;(2)给出一个本地动作的正常行为在自动机中起始状态的函数;(3)给出对一个成功动作(也是本地动作)进行补偿在自动机中起始状态的函数;(4)给出对一个异常动作(也是本地动作)的错误处理在自动机中起始状态的函数。
1.3协议项的形式有四种:如果形如a则表示需要引发动作a;如果形如
Figure GDA0000021079050000023
则表示引发动作是在a和b之间的非确定选择;如果形如
Figure GDA0000021079050000024
则表示动作a和b同时被引发,只有两个动作都完成以后协议项才算完成;如果形如则表示动作a和b同时被引发,a或b的完成都可以使协议项完成。
第二步:采用性质构造方法构造具备长事务特征服务接口需要满足的关键性质。
服务接口的关键性质用
Figure GDA0000021079050000031
Figure GDA0000021079050000032
表示,其中D、D1和D2都是接口动作的集合。
Figure GDA0000021079050000033
表示接口动作a引发的接口行为中不会出现D中的动作,
Figure GDA0000021079050000034
表示接口动作a引发的接口行为会出现D2中的动作,并且在出现D2中的动作之前不能够出现D1中的动作。状态s满足某个关键性质表示从s开始的所有接口行为都满足此性质。
第三步:根据关键性质的不同形式,使用相应的规则进行搜索来验证服务接口,最终得到服务接口是否满足关键性质。过程如下:
3.1初始化。置初始的结论集合为空集。
3.2搜索。根据不同的关键性质类型,使用不同的规则进行匹配,如果可以得到新的结论就把新的结论加到结论集合中,有下面几种情况:
3.2.1对形如的性质,a是成功动作,如果能够使用如下第一类规则得到状态s满足
Figure GDA0000021079050000036
就把s满足加入到已经得到的结论集合中:
3.2.11如果状态是返回状态⊥或者异常状态
Figure GDA0000021079050000038
则此状态直接满足
Figure GDA0000021079050000039
3.2.1.2如果状态s可以通过协议项a迁移到s′,则如果动作a不属于D,a的开始状态sa满足
Figure GDA00000210790500000310
并且s′也满足
Figure GDA00000210790500000311
则s满足
Figure GDA00000210790500000312
3.2.1.3如果状态s可以通过协议项a·b迁移到s′,其中a·b可以是非确定选择协议项
Figure GDA00000210790500000313
也可以是并发协议项
Figure GDA00000210790500000314
或者并发选择协议项
Figure GDA00000210790500000315
则如果动作a和动作b都不属于D,a的开始状态sa满足
Figure GDA00000210790500000316
b的开始状态sb满足并且s′也满足
Figure GDA00000210790500000318
则s满足
Figure GDA00000210790500000319
3.2.2对于形如的性质,a是异常动作,则如果能够使用如下第二类规则得到s满足就把s满足加入到已经得到的结论集合中:
3.2.2.1如果状态是返回状态⊥或者异常状态
Figure GDA00000210790500000323
则此状态直接满足
Figure GDA00000210790500000324
3.2.2.2如果状态s可以通过协议项a迁移到s′,则如果动作a不属于D,a的开始状态sa满足s′满足并且a的补偿或错误处理的开始状态s1使用第一类规则可以得到s1满足
Figure GDA0000021079050000041
则s满足
Figure GDA0000021079050000042
3.2.2.3如果状态s可以通过协议项a·b迁移到s′,其中a·b可以是非确定选择协议项
Figure GDA0000021079050000043
也可以是并发协议项或者并发选择协议项则如果动作a和动作b都不属于D,a的开始状态sa满足
Figure GDA0000021079050000046
b的开始状态sb满足
Figure GDA0000021079050000047
s′满足
Figure GDA0000021079050000048
a的补偿或错误处理的开始状态s1使用第一类规则可以得到s1满足
Figure GDA0000021079050000049
并且b的补偿或错误处理的开始状态s2使用第一类规则可以得到s2满足
Figure GDA00000210790500000410
则s满足
Figure GDA00000210790500000411
3.2.3对于形如
Figure GDA00000210790500000412
的性质,a是成功动作,在当前的结论集合中结论成立的前提下,对于扩展协议自动机中的每个状态s,如果能够通过第一类规则得到s满足
Figure GDA00000210790500000413
Figure GDA00000210790500000414
就把s满足
Figure GDA00000210790500000415
加入到已经得到的结论集合中,如果使用如下的第三类规则能够得到s满足
Figure GDA00000210790500000416
就把s满足加入到已经得到的结论集合中:
3.2.3.1如果状态s可以通过协议项a迁移到s′,并且动作a属于D2,则s满足
Figure GDA00000210790500000418
3.2.3.2如果状态s可以通过协议项
Figure GDA00000210790500000419
迁移到s′,并且a和b都属于D2,则s满足
Figure GDA00000210790500000420
3.2.3.3如果状态s可以通过协议项
Figure GDA00000210790500000421
Figure GDA00000210790500000422
迁移到s′,并且a或b属于D2,则s满足
Figure GDA00000210790500000423
3.2.3.4如果状态s可以通过协议项a迁移到s′,则如果动作a不属于D1,并且a的开始状态sa满足则s满足
Figure GDA00000210790500000425
3.2.3.5如果状态s可以通过协议项
Figure GDA00000210790500000426
迁移到s′,则如果动作a和b都不属于D1,a的开始状态sa满足
Figure GDA00000210790500000427
并且b的开始状态sb满足
Figure GDA00000210790500000428
则s满足
Figure GDA00000210790500000429
3.2.3.6如果状态s可以通过协议项
Figure GDA00000210790500000431
迁移到s′,则如果动作a和b都不属于D1,a的开始状态sa满足并且b的开始状态sb满足
Figure GDA00000210790500000433
或sb满足
Figure GDA00000210790500000434
或者b的开始状态sb满足
Figure GDA00000210790500000435
并且a的开始状态sa满足
Figure GDA00000210790500000436
或sa满足则s满足
Figure GDA00000210790500000438
3.2.3.7如果状态s可以通过协议项a迁移到s′,则如果动作a不属于D1,a的开始状态sa满足并且s′满足
Figure GDA0000021079050000052
则s满足
Figure GDA0000021079050000053
3.2.3.8如果状态s可以通过协议项a·b迁移到s′,其中a·b可以是非确定选择协议项
Figure GDA0000021079050000054
也可以是并发协议项或者并发选择协议项
Figure GDA0000021079050000056
则如果动作a和动作b都不属于D1,a的开始状态sa满足
Figure GDA0000021079050000057
b的开始状态sb满足
Figure GDA0000021079050000058
并且s′满足
Figure GDA0000021079050000059
则s满足
Figure GDA00000210790500000510
3.2.4对于形如
Figure GDA00000210790500000511
的性质,如果a是异常动作,对于扩展协议自动机中的每个状态s,如果能够通过第二类规则得到s满足
Figure GDA00000210790500000512
就把s满足加入到已经得到的结论集合中,如果使用如下的第四类规则能够得到s满足就把s满足
Figure GDA00000210790500000515
Figure GDA00000210790500000516
加入到已经得到的结论集合中:
3.2.4.1如果状态s可以通过协议项a迁移到s′,并且动作a属于D2,则s满足
Figure GDA00000210790500000517
3.2.4.2如果状态s可以通过协议项
Figure GDA00000210790500000518
迁移到s′,并且a和b都属于D2,则s满足
3.2.4.3如果状态s可以通过协议项
Figure GDA00000210790500000520
迁移到s′,并且a或b属于D2,则s满足
Figure GDA00000210790500000522
3.2.4.4如果状态s可以通过协议项a迁移到s′,则如果动作a不属于D1,并且a的开始状态sa满足
Figure GDA00000210790500000523
则s满足
Figure GDA00000210790500000524
3.2.4.5如果状态s可以通过协议项迁移到s′,则如果动作a和b都不属于D1,a的开始状态sa满足
Figure GDA00000210790500000526
并且b的开始状态sb满足则s满足
Figure GDA00000210790500000528
3.2.4.6如果状态s可以通过协议项
Figure GDA00000210790500000530
迁移到s′,则如果动作a和b都不属于D1,a的开始状态sa满足
Figure GDA00000210790500000531
并且b的开始状态sb满足
Figure GDA00000210790500000532
或sb满足
Figure GDA00000210790500000533
或者b的开始状态sb满足
Figure GDA00000210790500000534
并且a的开始状态sa满足
Figure GDA00000210790500000535
或sa满足
Figure GDA00000210790500000536
则s满足
Figure GDA00000210790500000537
3.2.4.7如果状态s可以通过协议项a迁移到s′,则如果动作a不属于D1,a的开始状态sa满足
Figure GDA00000210790500000538
并且s′满足
Figure GDA00000210790500000539
则s满足
Figure GDA00000210790500000540
3.2.4.8如果状态s可以通过协议项a迁移到s′,则如果动作a不属于D1,a的开始状态sa满足
Figure GDA0000021079050000061
s′满足
Figure GDA0000021079050000062
并且a的补偿或错误处理的开始状态s1使用第一类规则可以得到s1满足
Figure GDA0000021079050000063
则s满足
Figure GDA0000021079050000064
3.2.4.9如果状态s可以通过协议项
Figure GDA0000021079050000065
迁移到s′,则如果动作a和b都不属于D1,a的开始状态sa满足b的开始状态sb满足并且s′满足则s满足
Figure GDA0000021079050000069
3.2.4.10如果状态s可以通过协议项
Figure GDA00000210790500000610
迁移到s′,则如果动作a和b都不属于D1,a的开始状态sa满足
Figure GDA00000210790500000611
b的开始状态sb满足
Figure GDA00000210790500000612
s′满足
Figure GDA00000210790500000613
a的补偿或错误处理的开始状态s1使用第一类规则可以得到s1满足
Figure GDA00000210790500000614
并且b的补偿或错误处理的开始状态s2使用第一类规则可以得到s2满足
Figure GDA00000210790500000615
则s满足
Figure GDA00000210790500000616
3.2.4.11如果状态s可以通过协议项
Figure GDA00000210790500000617
Figure GDA00000210790500000618
迁移到s′,则如果动作a和b都不属于D1,a的开始状态sa满足
Figure GDA00000210790500000619
b的开始状态sb满足
Figure GDA00000210790500000620
并且s′满足
Figure GDA00000210790500000621
则s满足
Figure GDA00000210790500000622
3.2.4.12如果状态s可以通过协议项
Figure GDA00000210790500000623
Figure GDA00000210790500000624
迁移到s′,则如果动作a和b都不属于D1,a的开始状态sa满足
Figure GDA00000210790500000625
b的开始状态sb满足s′满足
Figure GDA00000210790500000627
a的补偿或错误处理的开始状态s1使用第一类规则可以得到s1满足
Figure GDA00000210790500000628
并且b的补偿或错误处理的开始状态s2使用第一类规则可以得到s2满足
Figure GDA00000210790500000629
Figure GDA00000210790500000630
或者b的补偿或错误处理的开始状态s3使用第一类规则可以得到s3满足
Figure GDA00000210790500000631
并且a的补偿或错误处理的开始状态s4使用第一类规则可以得到s4满足
Figure GDA00000210790500000632
Figure GDA00000210790500000633
Figure GDA00000210790500000634
则s满足
Figure GDA00000210790500000635
3.3判断在步骤3.2中是否增加了新的结论,如果有则转到步骤3.4,否则整个过程结束,服务接口不满足关键性质。
3.4判断。根据关键性质的不同类型,判断性质是否被满足。对于形如
Figure GDA00000210790500000636
的性质,检查a的开始状态sa满足
Figure GDA00000210790500000637
是否在当前的结论集合中,如果在当前的结论集合中则验证过程结束,表示接口满足此性质,如果不在当前的结论集合中则转到步骤3.2。对于形如
Figure GDA0000021079050000071
的性质,检查a的开始状态sa满足是否在当前的结论集合中,如果在当前的结论集合中则验证过程结束,表示接口满足此性质,如果不在当前的结论集合中则转到步骤3.2。
采用本发明可以达到以下技术效果:
本发明是一种具备长事务特征服务的接口验证方法,可以作为对服务计算中具备事务特征服务的接口进行形式化验证的一种有效手段,与现有服务接口方法比较,本发明的优点在于接口验证方法能够涵盖服务中补偿和错误处理对应的接口行为,并且验证方法从接口的语法层面直接进行搜索,避免了从语义层面进行验证可能出现的状态爆炸问题。
附图说明
图1为验证方法的总体流程图。
图2为验证方法中第三步的流程图。
具体实施方式
本发明中公开了一种具备长事务特征服务接口的验证方法,方法的主要步骤见附图1。其中每一步解释如下:
1使用自动机和函数来定义需要验证的具备长事务特征服务的接口。
2采用性质构造方法构造具备长事务特征服务接口需要满足的关键性质。
3根据关键性质的不同形式,使用相应的规则进行搜索来验证服务接口,最终得到服务接口是否满足关键性质。
图2给出了上述验证方法中第3步接口验证的流程:
1初始化。置初始的结论集合为空集。
2使用规则进行搜索。根据不同的关键性质类型,使用不同的规则进行匹配,如果可以得到新的结论就把新的结论加到结论集合中,有下面几种情况:
2.1对形如
Figure GDA0000021079050000073
的性质,a是成功动作,则使用第一类规则进行搜索。
2.2对于形如的性质,a是异常动作,则使用第二类规则进行搜索。
2.3对于形如的性质,a是成功动作,则使用第一类和第三类规则进行搜索。
2.4对于形如
Figure GDA0000021079050000081
的性质,如果a是异常动作,则使用第二类和第四类规则进行搜索。
3判断是否得到了新的结论。在最近一次第2步中是否增加了新的结论,如果有则转到第4步,否则整个过程结束,服务接口不满足关键性质。
4根据关键性质的不同类型,判断性质是否被满足。对于形如
Figure GDA0000021079050000082
的性质,检查a的开始状态sa满足
Figure GDA0000021079050000083
是否在当前的结论集合中,如果在,则验证过程结束,表示此性质成立,如果不在,则转到第2步。对于形如
Figure GDA0000021079050000084
的性质,检查a的开始状态sa满足
Figure GDA0000021079050000085
是否在当前的结论集合中,如果在,则验证过程结束,表示此性质成立,如果不在,则转到第2步。

Claims (1)

1.一种具备长事务特征服务接口的验证方法,其特征在于包括以下步骤:
第一步:使用自动机和函数来定义需要验证的具备长事务特征服务的接口,方法是:
1.1接口动作是一个二元组,包括服务接口中的方法名m以及方法调用的一个结果o,表示名字为m的服务方法的一次调用,其结果为o;有两类动作,成功动作表示方法调用不会发生异常,异常动作表示方法调用会发生异常,在发生后需要进行失败恢复;
1.2具备长事务特征服务的接口包含四个部分:(1)给出接口动作调用关系的扩展协议自动机,其中包含可能出现的动作集A,自动机中的状态集合S,S中⊥是返回状态,
Figure FDA0000021079040000011
是异常状态,以及状态的迁移函数
Figure FDA0000021079040000012
给出每个状态可以进行的迁移的协议项和目标状态;(2)给出一个本地动作的正常行为在自动机中起始状态的函数;(3)给出对一个成功动作进行补偿在自动机中起始状态的函数;(4)给出对一个异常动作的错误处理在自动机中起始状态的函数;
1.3协议项的形式有四种:如果形如a则表示需要引发动作a;如果形如
Figure FDA0000021079040000013
则表示引发动作是在a和b之间的非确定选择;如果形如
Figure FDA0000021079040000014
则表示动作a和b同时被引发,只有两个动作都完成以后协议项才算完成;如果形如
Figure FDA0000021079040000015
则表示动作a和b同时被引发,a或b的完成都可以使协议项完成;
第二步:采用性质构造方法构造具备长事务特征服务接口需要满足的关键性质:服务接口的关键性质用
Figure FDA0000021079040000016
Figure FDA0000021079040000017
表示,其中D、D1和D2都是接口动作的集合,
Figure FDA0000021079040000018
表示接口动作a引发的接口行为中不会出现D中的动作,
Figure FDA0000021079040000019
U D2表示接口动作a引发的接口行为会出现D2中的动作,并且在出现D2中的动作之前不能够出现D1中的动作;状态s满足某个关键性质表示从s开始的所有接口行为都满足此性质;
第三步:根据关键性质的不同形式,使用相应的规则进行搜索来验证服务接口,最终得到服务接口是否满足关键性质,过程如下:
3.1初始化,置初始的结论集合为空集;
3.2搜索,即根据不同的关键性质类型,使用不同的规则进行匹配,如果可以得到新的结论就把新的结论加到结论集合中,有下面几种情况:
3.2.1对形如
Figure FDA0000021079040000021
的性质,a是成功动作,则如果能够使用如下第一类规则得到状态s满足
Figure FDA0000021079040000022
就把s满足
Figure FDA0000021079040000023
加入到已经得到的结论集合中:
3.2.11如果状态是返回状态⊥或者异常状态
Figure FDA0000021079040000024
则此状态直接满足
Figure FDA0000021079040000025
3.2.1.2如果状态s可以通过协议项a迁移到s′,则如果动作a不属于D,a的开始状态sa满足
Figure FDA0000021079040000026
并且s′也满足
Figure FDA0000021079040000027
则s满足
Figure FDA0000021079040000028
3.2.1.3如果状态s可以通过协议项a·b迁移到s′,其中a·b可以是非确定选择协议项
Figure FDA0000021079040000029
也可以是并发协议项
Figure FDA00000210790400000210
或者并发选择协议项则如果动作a和动作b都不属于D,a的开始状态sa满足b的开始状态sb满足并且s′也满足
Figure FDA00000210790400000214
则s满足
Figure FDA00000210790400000215
3.2.2对于形如
Figure FDA00000210790400000216
的性质,a是异常动作,如果使用如下第二类规则得到s满足
Figure FDA00000210790400000217
就把s满足
Figure FDA00000210790400000218
加入到已经得到的结论集合中:
3.2.2.1如果状态是返回状态⊥或者异常状态
Figure FDA00000210790400000219
则此状态直接满足
Figure FDA00000210790400000220
3.2.2.2如果状态s可以通过协议项a迁移到s′,则如果动作a不属于D,a的开始状态sa满足
Figure FDA00000210790400000221
s′满足
Figure FDA00000210790400000222
并且a的补偿或错误处理的开始状态使用第一类规则可以得到其满足则s满足
Figure FDA00000210790400000224
3.2.2.3如果状态s可以通过协议项a·b迁移到s′,其中a·b可以是非确定选择协议项
Figure FDA00000210790400000225
也可以是并发协议项
Figure FDA00000210790400000226
或者并发选择协议项
Figure FDA00000210790400000227
则如果动作a和动作b都不属于D,a的开始状态sa满足
Figure FDA00000210790400000228
b的开始状态sb满足
Figure FDA00000210790400000229
s′满足
Figure FDA00000210790400000230
a的补偿或错误处理的开始状态使用第一类规则可以得到其满足
Figure FDA00000210790400000231
并且b的补偿或错误处理的开始状态使用第一类规则可以得到其出满足
Figure FDA00000210790400000232
则s满足
Figure FDA00000210790400000233
3.2.3对于形如的性质,a是成功动作,在当前的结论集合中结论成立的前提下,对于扩展协议自动机中的每个状态s,如果能够通过第一类规则得到s满足就把s满足
Figure FDA00000210790400000236
加入到已经得到的结论集合中,如果使用如下的第三类规则能够得到s满足就把s满足U D2加入到已经得到的结论集合中:
3.2.3.1如果状态s可以通过协议项a迁移到s′,并且动作a属于D2,则s满足
3.2.3.2如果状态s可以通过协议项迁移到s′,并且a和b都属于D2,则s满足
Figure FDA0000021079040000035
3.2.3.3如果状态s可以通过协议项
Figure FDA0000021079040000036
Figure FDA0000021079040000037
迁移到s′,并且a或b属于D2,则s满足
Figure FDA0000021079040000038
3.2.3.4如果状态s可以通过协议项a迁移到s′,则如果动作a不属于D1,并且a的开始状态sa满足
Figure FDA0000021079040000039
则s满足
Figure FDA00000210790400000310
3.2.3.5如果状态s可以通过协议项迁移到s′,则如果动作a和b都不属于D1,a的开始状态sa满足
Figure FDA00000210790400000312
并且b的开始状态sb满足
Figure FDA00000210790400000313
则s满足
Figure FDA00000210790400000314
3.2.3.6如果状态s可以通过协议项
Figure FDA00000210790400000315
Figure FDA00000210790400000316
迁移到s′,则如果动作a和b都不属于D1,a的开始状态sa满足
Figure FDA00000210790400000317
并且b的开始状态sb满足
Figure FDA00000210790400000318
或sb满足
Figure FDA00000210790400000319
或者b的开始状态sb满足
Figure FDA00000210790400000320
并且a的开始状态sa满足
Figure FDA00000210790400000321
U D2或sa满足
Figure FDA00000210790400000322
则s满足
Figure FDA00000210790400000323
3.2.3.7如果状态s可以通过协议项a迁移到s′,则如果动作a不属于D1,a的开始状态sa满足并且s′满足则s满足
Figure FDA00000210790400000326
3.2.3.8如果状态s可以通过协议项a·b迁移到s′,其中a·b可以是非确定选择协议项
Figure FDA00000210790400000327
也可以是并发协议项
Figure FDA00000210790400000328
或者并发选择协议项
Figure FDA00000210790400000329
则如果动作a和动作b都不属于D1,a的开始状态sa满足
Figure FDA00000210790400000330
b的开始状态sb满足并且s′满足则s满足
Figure FDA00000210790400000333
3.2.4对于形如的性质,如果a是异常动作,对于扩展协议自动机中的每个状态s,如果能够通过第二类规则得到s满足
Figure FDA00000210790400000335
就把s满足加入到已经得到的结论集合中,如果使用如下的第四类规则能够得到s满足
Figure FDA0000021079040000041
就把s满足
Figure FDA0000021079040000042
加入到已经得到的结论集合中:
3.2.4.1如果状态s可以通过协议项a迁移到s′,并且动作a属于D2,则s满足
Figure FDA0000021079040000043
3.2.4.2如果状态s可以通过协议项
Figure FDA0000021079040000044
迁移到s′,并且a和b都属于D2,则s满足
Figure FDA0000021079040000045
3.2.4.3如果状态s可以通过协议项
Figure FDA0000021079040000046
Figure FDA0000021079040000047
迁移到s′,并且a或b属于D2,则s满足
Figure FDA0000021079040000048
3.2.4.4如果状态s可以通过协议项a迁移到s′,则如果动作a不属于D1,并且a的开始状态sa满足
Figure FDA0000021079040000049
则s满足
Figure FDA00000210790400000410
3.2.4.5如果状态s可以通过协议项
Figure FDA00000210790400000411
迁移到s′,则如果动作a和b都不属于D1,a的开始状态sa满足
Figure FDA00000210790400000412
并且b的开始状态sb满足
Figure FDA00000210790400000413
则s满足
Figure FDA00000210790400000414
3.2.4.6如果状态s可以通过协议项
Figure FDA00000210790400000415
Figure FDA00000210790400000416
迁移到s′,则如果动作a和b都不属于D1,a的开始状态sa满足
Figure FDA00000210790400000417
并且b的开始状态sb满足
Figure FDA00000210790400000418
或sb满足
Figure FDA00000210790400000419
或者b的开始状态sb满足
Figure FDA00000210790400000420
并且a的开始状态sa满足
Figure FDA00000210790400000421
U D2或sa满足
Figure FDA00000210790400000422
则s满足
Figure FDA00000210790400000423
3.2.4.7如果状态s可以通过协议项a迁移到s′,则如果动作a不属于D1,a的开始状态sa满足
Figure FDA00000210790400000424
并且s′满足则s满足
Figure FDA00000210790400000426
3.2.4.8如果状态s可以通过协议项a迁移到s′,则如果动作a不属于D1,a的开始状态sa满足
Figure FDA00000210790400000427
s′满足
Figure FDA00000210790400000428
并且a的补偿或错误处理的开始状态s1使用第一类规则可以得到s1满足
Figure FDA00000210790400000429
则s满足
Figure FDA00000210790400000430
3.2.4.9如果状态s可以通过协议项
Figure FDA00000210790400000431
迁移到s′,则如果动作a和b都不属于D1,a的开始状态sa满足
Figure FDA00000210790400000432
b的开始状态sb满足
Figure FDA00000210790400000433
并且s′满足
Figure FDA00000210790400000434
D2,则s满足
Figure FDA00000210790400000435
3.2.4.10如果状态s可以通过协议项
Figure FDA0000021079040000051
迁移到s′,则如果动作a和b都不属于D1,a的开始状态sa满足
Figure FDA0000021079040000052
b的开始状态sb满足
Figure FDA0000021079040000053
s′满足
Figure FDA0000021079040000054
a的补偿或错误处理的开始状态s1使用第一类规则可以得到s1满足
Figure FDA0000021079040000055
并且b的补偿或错误处理的开始状态s2使用第一类规则可以得到s2满足
Figure FDA0000021079040000056
则s满足
Figure FDA0000021079040000057
3.2.4.11如果状态s可以通过协议项
Figure FDA0000021079040000058
迁移到s′,则如果动作a和b都不属于D1,a的开始状态sa满足
Figure FDA00000210790400000510
b的开始状态sb满足
Figure FDA00000210790400000511
并且s′满足
Figure FDA00000210790400000512
则s满足
Figure FDA00000210790400000513
3.2.4.12如果状态s可以通过协议项
Figure FDA00000210790400000514
Figure FDA00000210790400000515
迁移到s′,则如果动作a和b都不属于D1,a的开始状态sa满足b的开始状态sb满足
Figure FDA00000210790400000517
s′满足
Figure FDA00000210790400000518
a的补偿或错误处理的开始状态s1使用第一类规则可以得到s1满足
Figure FDA00000210790400000519
并且b的补偿或错误处理的开始状态s2使用第一类规则可以得到s2满足
Figure FDA00000210790400000520
Figure FDA00000210790400000521
或者b的补偿或错误处理的开始状态s3使用第一类规则可以得到s3满足
Figure FDA00000210790400000522
并且a的补偿或错误处理的开始状态s4使用第一类规则可以得到s4满足
Figure FDA00000210790400000523
Figure FDA00000210790400000524
则s满足
Figure FDA00000210790400000525
3.3判断在步骤3.2中是否增加了新的结论,如果有则转到步骤3.4,否则整个过程结束,服务接口不满足关键性质;
3.4判断,根据关键性质的不同类型,判断性质是否被满足:对于形如的性质,检查a的开始状态sa满足
Figure FDA00000210790400000527
是否在当前的结论集合中,如果在当前的结论集合中则验证过程结束,表示接口满足此性质,如果不在当前的结论集合中则转到步骤3.2;对于形如
Figure FDA00000210790400000528
的性质,检查a的开始状态sa满足
Figure FDA00000210790400000529
是否在当前的结论集合中,如果在当前的结论集合中则验证过程结束,表示接口满足此性质,如果不在当前的结论集合中则转到步骤3.2。
CN2010101612755A 2010-05-04 2010-05-04 具备长事务特征服务接口的验证方法 Expired - Fee Related CN101833506B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2010101612755A CN101833506B (zh) 2010-05-04 2010-05-04 具备长事务特征服务接口的验证方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2010101612755A CN101833506B (zh) 2010-05-04 2010-05-04 具备长事务特征服务接口的验证方法

Publications (2)

Publication Number Publication Date
CN101833506A true CN101833506A (zh) 2010-09-15
CN101833506B CN101833506B (zh) 2012-05-30

Family

ID=42717582

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010101612755A Expired - Fee Related CN101833506B (zh) 2010-05-04 2010-05-04 具备长事务特征服务接口的验证方法

Country Status (1)

Country Link
CN (1) CN101833506B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103186451A (zh) * 2013-03-21 2013-07-03 中国人民解放军国防科学技术大学 一种具有故障预测能力的时序属性监控方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003044615A2 (en) * 2001-11-20 2003-05-30 Nokia Corporation Network services broker system and method
CN1556639A (zh) * 2003-12-30 2004-12-22 上海交通大学 万维网服务应用常用集成方法
US20050027871A1 (en) * 2003-06-05 2005-02-03 William Bradley Interoperable systems and methods for peer-to-peer service orchestration
CN1997983A (zh) * 2004-05-21 2007-07-11 Bea系统公司 面向服务的架构

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003044615A2 (en) * 2001-11-20 2003-05-30 Nokia Corporation Network services broker system and method
US20050027871A1 (en) * 2003-06-05 2005-02-03 William Bradley Interoperable systems and methods for peer-to-peer service orchestration
CN1556639A (zh) * 2003-12-30 2004-12-22 上海交通大学 万维网服务应用常用集成方法
CN1997983A (zh) * 2004-05-21 2007-07-11 Bea系统公司 面向服务的架构

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103186451A (zh) * 2013-03-21 2013-07-03 中国人民解放军国防科学技术大学 一种具有故障预测能力的时序属性监控方法
CN103186451B (zh) * 2013-03-21 2016-06-08 中国人民解放军国防科学技术大学 一种具有故障预测能力的时序属性监控方法

Also Published As

Publication number Publication date
CN101833506B (zh) 2012-05-30

Similar Documents

Publication Publication Date Title
CN102222005A (zh) 面向业务模型的软件运行平台及其运行方式
CN105474210A (zh) 运行自动化流程的系统
Pu et al. Theoretical foundations of scope-based compensable flow language for web service
CN106453228A (zh) 一种用于智能机器人的用户登录方法以及系统
CN113626128B (zh) 视听媒体微服务第三方模块接入方法、系统、电子设备
CN105005509A (zh) 一种基于运行时模型的云计算容错机制配置方法
CN110737425A (zh) 一种计费平台系统的应用程序的建立方法及装置
CN105809345A (zh) 一种基于api管理与虚拟化的面向服务平台及控制方法
CN101833506B (zh) 具备长事务特征服务接口的验证方法
CN104166581B (zh) 一种面向增量制造设备的虚拟化方法
Wang et al. Describing and verifying web service composition using TLA reasoning
CN102541563A (zh) 一种监控界面生成方法及系统
CN102541830B (zh) 一种仿真平台中仿真报告生成的方法及装置
CN103995699A (zh) 基于mda的电力企业信息系统开发方法
CN104516735B (zh) 实现云计算环境自动化运维的二维分层方法
Wu et al. Design and implementation of business-driven BI platform based on cloud computing
CN104410704B (zh) 一种云计算环境中配置服务模块的数据库的方法
CN104699472A (zh) 采用规则引擎解决业务流程频繁变动与软件维护之间的矛盾的方法
KR20090003040A (ko) 비즈니스 프로세스 수행시 메타데이터 규정을 통한 데이터품질관리 방법 및 시스템
Tahmasebipour et al. Ranking of common architectural styles based on availability, security and performance quality attributes
CN103679432A (zh) 一种支持动态构建应用平台的vnms系统
Kirkham et al. Richer requirements for better clouds
CN102207932A (zh) 基于规则描述的报表模式自动抽取方法
Hegner et al. Update support for database views via cooperation
Boonon et al. An approach to clustering feature model based on adaptive behavior for dynamic software product line

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120530

Termination date: 20190504