Web服务组合技术框架及其研究进展
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第17卷第2期计算机集成制造系统
Vol.17No.22011年2月
Computer Integrated Manufacturing Systems
Feb.2011
文章编号:1006-5911(2011)02-0404-09
收稿日期:2009 10 13;修订日期:2010 08 25。
Received 13Oct.2009;accepted 25Aug.2010.
基金项目:国家自然科学基金资助项目(60803004);国家863计划资助项目(2009AA01Z121);浙江省科技计划资助项目(2009C31109);浙江
省教育厅科研资助项目(Y200909534)。
Founda tion items:Project sup ported by th e National Natu ral Science Foundation,China(No.60803004),the National H igh T ech.R&D Program,Ch ina(No.2009AA01Z121),the S cien ce &T echnology Plan of Zhejiang Province,China(No.2009C31109),and th e Education Bureau Research Foun dation of Zhejiang Province,Chin a(No.Y200909534).
Web 服务组合技术框架及其研究进展
邓水光,黄龙涛,尹建伟,李 莹,吴 健
(浙江大学计算机科学与技术学院,浙江 杭州 310027)
摘 要:为了研究Web 服务组合技术,以促使服务计算从概念走向应用,提出了Web 服务组合的技术框架,该框架涵盖了服务组合过程涉及的主要关键技术。
讨论了该研究框架中的服务发现、服务组合、服务验证三大关键问题,对当前国内外的主要方法和研究成果进行了分类和比较。
最后指出了服务组合面临的问题和未来的发展方向。
关键词:W eb 服务;面向服务的计算;服务发现;服务组合;服务验证中图分类号:T P393 文献标志码:A
Technical framework for Web Services composition and its progress
D EN G Shui guang ,H UA N G Long tao,YI N J ian wei ,LI Ying,W U J ian
(Co llege of Com puter Science &T echno lo gy ,Zhejiang U niver sity,Hang zhou 310027,China)
Abstract:T o study W eb Serv ices co mpo sitio n techno lo gy ,so as to push serv ice co mputatio n into application,a kind of technical fr amewo rk fo r Web Ser vices composition w as pr oposed.Some key issues w ithin this framew or k,such as ser vice discover y,ser vice composit ion methods and service ver ificatio n,w ere discussed.Its r esear ch prog ress w as also intr oduced.F inally,o pen issues and future dir ect ions wer e po int ed out.
Key words:W eb Ser vices;serv ice or iented computing;ser vice discover y;ser vice composit ion;ser vice ver ification
1 问题的提出
如何解决企业应用随需应变是当今软件产业的焦点问题,而面向服务的计算(Ser vice Oriented Co mputing ,SOC)正是为解决这一问题而提出来的一种新的计算方式,其核心思想在于以服务为基本单位,通过服务组合快速构建松耦合的分布式应用系统[1]。
Web 服务的不断成熟和发展为SOC 提供了最佳支撑技术,在这一背景下,Web 服务组合的研究被提上日程,并迅速吸引了国内外学者的关注[2]。
Web 服务组合是将若干服务按照一定的业务逻辑进行组装形成组合服务,并通过执行该组合服务而达到业务目标的过程。
该过程涉及了众多关键
问题,本文将这些问题归纳成如图1所示的Web 服务组合技术框架。
根据Web 服务组合的生命周期,该研究框架所覆盖的问题可被划分为两大类:服务组合建立时问题和服务组合运行时问题。
前者主要包含了服务发现、服务合成、服务组合描述和服务组合验证等问题,后者包含了服务组合执行与监控、服务组合的安全与事务管理等问题。
由于服务组合的执行监控与工作流相似,专门研究这一问题的文献并不多见。
此外,Web 服务本身的安全与事务研究刚刚起步,也鲜见于国内外文献中。
因此,本文重在探索服务组合建立时问题的研究现状。
鉴于已有学者对Web 服务组合建模语言进行了综述[3],本文着重介绍服务发现方法、服务组合方法和服务验证方法的研究进展。
第2期邓水光等:Web
服务组合技术框架及其研究进展
2 Web 服务发现
Web 服务发现是指根据用户对目标服务的需求,通过服务发现算法从服务注册中心查找到满足用户需求的服务集合,它是实现Web 服务组合的前提条件。
评价一个服务发现方法的效果,主要从以下三个指标进行考核:召回率(r ecall rate)、准确率(pr ecision)和可扩展性(scalability )。
召回率是指该发现方法从服务库中返回的满足用户请求的服务数,占服务库中满足用户请求的服务总数的比例;准确率是指从服务库中返回的所有服务中,能满足用户请求的服务数占返回的所有服务数的比例;可扩展性是指该方法在不同规模服务库中的可用性,主要指服务发现的速度。
Web 服务发现与Web 服务匹配紧密相关,前者往往建立在后者的基础上,即服务发现通过将用户需求规格说明与服务注册中心中的服务描述说明进行匹配,从而选出被匹配的服务。
因此,服务匹配是服务发现的一个重要环节。
当前,Web 服务发现
相关的研究成果层出不穷[4 26]
,可将其大致划分为两大类:基于关键字的Web 服务发现和基于语义的Web 服务发现。
前者以统一描述、发现和集成协议(U niversal Description,Discovery and Integra tion,UDDI)为典型代表,仅支持关键词匹配,所以
服务发现效果不佳;后者则是Web 服务与语义网相结合而产生的,被视为最有前景的服务发现方法。
此外,还有一部分工作是针对特定应用而提出的,如基于统一建模语言(U nified Mo deling Languag e,U ML)的服务发现方法[25]、基于用户以往的服务选取记录和系统日志进行服务推荐的方法[25]等,本章重点对典型的语义Web 服务发现方法进行综述。
2 1 基于OWL S/DAML S 的语义Web 服务发现Web 服务本体语言(Web Ontolog y Language for Serv ice,OWL S)(前身为美国国防高级设计研究署代理置标语言(DARPA Ag ent M arkup Lan guage for Services,DAM L S))是美国DAML 计划在OWL 基础上提出的一个服务本体语言,它以描述逻辑(Description Log ic,DL)为基础,将Web 服务的本体分成三个上层本体:Service Pr ofile,Serv ice M odel 和Service Grounding 。
其中Serv ice Pro file,Serv ice Mo del 和描述逻辑被研究人员广泛应用于服务发现中。
(1)基于OWL S/DAML S 的Ser vice Pro file 进行服务发现
Service Profile 描述了服务的基本信息,如服务的功能信息、服务提供商信息等。
Paolucci 等提出了第一个基于Service Profile 的Web 服务发现方法[4]。
该方法采用Ser vice Profile 描述用户请求,
405
计算机集成制造系统第17卷
并将该描述与已注册Web服务的Ser vice Profile 进行匹配,匹配过程分为输出之间的匹配与输入之间的匹配。
每一次匹配中,利用OWL所描述的本体知识,对服务的输入/输出概念与用户请求的输入/输出概念进行语义匹配。
Sriniv asan和Paolucci 等采用该方法扩展UDDI,实现了基于语义W eb服务匹配器[5],取得了较好的服务发现效果。
该方法开辟了语义Web服务发现方向,随后吸引了众多研究人员在这一方向展开研究,对OWL S/DAM L S 的Serv ice Profile进行了属性扩展,以提高服务发现效果。
如文献[6]扩展了服务质量(Quality o f Serv ice,Qo S)信息,提出了DAML QoS本体,并基于该本体进行服务匹配;文献[7]在DAM L S的Serv ice Pr ofile中增加服务的信用信息,提出了具有容错性且信用感知的Web服务发现算法,支持基于服务信用信息的选取;文献[8]则在OWL S的Serv ice Pr ofile中增加了服务角色和交互信息,并提出了基于角色的服务匹配算法。
尽管这些方法可以进一步改善服务发现效果,但其复杂度也随之提高。
因此,如何在服务发现的效果与复杂度之间进行权衡,是设计服务发现算法需要考虑的一个问题。
(2)基于OWL S/DAM L S的Service M odel 进行服务发现
由于Service Model描述了服务内部行为,为服务发现提供了更多参考信息。
文献[9]认为服务发现过程仅考虑接口匹配还不足,应充分考虑服务行为特征,进而提出了基于服务行为特征的服务查询语言和匹配算法,而服务行为特征指的就是服务模型中的消息序列。
文献[10]将OWL S的服务模型表示成树结构:将服务模型的根节点作为树的根;将组合流程表示成树的中间节点;将原子流程表示成树的叶子节点,采用树匹配策略实现服务匹配。
文献[11]将服务模型中的流程及流程间的关系即时构造出依赖图,通过多个步骤分析依赖图来判断该服务是否满足用户需求。
该方法是对文献[10]的一个改进方案,它支持完全匹配和部分匹配,在部分匹配的情况下还能进一步建议用户额外提供某些输入以达到完全匹配。
此外,该方法还具有较好的匹配粒度,不但支持原子流程匹配,而且支持组合流程匹配。
(3)基于OWL S/DAML S的逻辑基础进行服务发现
描述逻辑是OWL S/DAML S的逻辑基础,作为知识表示和推理的形式化工具,它提供了可判定的和可靠的推理服务。
文献[12]将服务的自动发现问题转化成最佳覆盖问题,利用描述逻辑对其进行形式化描述,之后基于超图算法计算出最佳覆盖,从而实现服务的自动发现过程。
文献[13]将描述逻辑与服务推理结合起来,利用描述逻辑中对概念包含关系的有效推理和判断能力、描述逻辑具有清晰模型 理论语义的特点和描述逻辑在概念分层中的优点,提出了基于描述逻辑的主体服务匹配算法。
文献[14]利用 演算描述服务的动态属性,采用描述逻辑来刻画服务的静态属性,基于 演算和描述逻辑的联合形式化表达,提出了服务匹配算法,统一处理匹配过程中用户和服务在语义、时序结构和安全等方面的约束。
相比上述三类服务发现方法不难看出,基于Service Profile的方法最为简单且算法复杂度最低,其关键在于词汇本体之间的语义相似度计算;而基于Service M odel的方法不仅考虑了第一类方法中的接口语义匹配,还考虑了流程结构的匹配,因此其复杂度大大提高,但其发现效果得到较大改善。
基于描述逻辑的服务发现方法由于引入了形式化表达和推理,自动化程度较高,但这类方法需要对服务做过多预处理,如形式化转化与表达,因此必须有相应的辅助工具作为支持。
2 2 基于W SMO/W SML的语义W eb服务发现方法
Web服务建模本体(Web Service Modeling On tology,WSMO)/Web服务建模语言(Web Service Modeling Language,WSM L)是欧洲语义系统计划在前期Web服务模型框架(Web Service Modeling Framew ork,WSMF)的工作基础上,提出的一个语义Web服务的建模本体和描述语言。
文献[15]是由WSML工作组提出的关于在WSM O/WSML框架下实施Web服务发现的工作草案。
它在分析了自动Web服务发现涵盖的主要概念问题之后,提出了在WSMO/WSML的框架下实施Web服务发现的概念模型,并重点介绍了两种Web服务发现方法:基于简单语义描述的Web服务发现和基于丰富语义描述的Web服务发现。
这两种方法均是建立在集合论的基础之上,实现用户目标与Web服务语义之间的匹配。
文献[16]在该概念模型的指导下,提出了WSMO/ WSML下动态Web服务发现的逻辑框架。
文献[17]采用WSML和逻辑表达式对Web服务的行为知识和所操作的对象知识进行建模,并采用概念模型中基于集合论的匹配方法实施Web服务发现。
文献[18]利用WSML进行服务描述,并且增加了服务质量本体描述,在Web服务发现的基础上提出了基于服务质量的服务选取方法。
406
第2期邓水光等:Web服务组合技术框架及其研究进展
2 3 基于WSDL扩展的语义W eb服务发现方法
前述两类基于语义的W eb服务发现方法均建立在全新的语义Web服务模型的基础上,在现有的大量采用Web服务描述语言(Web Service Descrip tion Languag e,WSDL)描述的服务中需进行一定的预处理工作。
因此,很多研究人员提出了基于WS DL的语义扩展进行服务发现。
其中,以美国乔治亚大学大规模分布式信息系统实验室LSDIS与IBM联合提出的WSDL S最具影响力。
文献[19]以WSDL S为服务描述语言,从领域本体和领域无关本体两个角度进行服务匹配,并将两方面的匹配结果综合起来度量最终的服务匹配结果。
文献[20]在WSDL的基础上增加语义、功能和行为约束以及QoS,提出轻量级Web服务描述语言(Qos based Web Service Descr iption Lang uag e,QWSDL),构造相似函数度量服务相似的程度,并将Web服务匹配问题转化成数值计算,进而提出Web匹配模型。
2 4 其他基于语义的Web服务发现方法
除上述三类方法之外,还有其他基于语义的服务发现方法,因篇幅有限,本文仅介绍具有代表性的几个。
文献[21]采用流程本体刻画服务语义,流程本体包含了属性、值、任务、资源和异常等基本元语。
基于流程本体,提出了流程查询语言(Pr ocess Que r y Languag e,PQL),从而将服务匹配问题转化为语言模式匹配,进而采用基于模式匹配的算法实现服务匹配。
文献[22]针对移动环境的特点,提出了基于本体和上下文感知的服务发现方法,在其服务匹配过程中充分考虑了服务、用户、设备多实体的上下文环境和个性化内容。
文献[23]提出了一种基于本体论和词汇语义相似的Web服务发现方法,该方法将服务相似度划分为词汇语义相似度、服务属性相似度、参量相似度和结构相似度,并分别对其进行相似度计算。
文献[24]扩展了服务注册信息,支持接口语义标注和接口依赖关系的申明,通过对二分图最佳匹配进行扩展,将服务匹配问题转化成二分图的扩展最佳匹配的求解问题,支持服务接口之间的依赖关系,从而提高服务发现的效果。
Web服务发现是实现服务组合的一个重要前提,尽管当前不同学者从各自的应用领域提出了众多的方法,但如何进一步提高服务发现的准确率和召回率,且有效降低方法的复杂度,从而提高方法的可用性,是当前服务发现需要解决的重要问题。
此外,本文认为由于当前缺乏一个公共的且被大多数学者接受的服务基准库作为标准测试集,不同服务发现方法只能通过理论验证、仿真试验或者实际应用的方式来说明其有效性,不同服务发现方法之间的可比较性差,无法衡量哪种方法更胜一筹,所以建立一个标准的服务基准库将是推动服务发现技术进一步发展的重要基础。
3 Web服务组合
Web服务组合是根据业务规则将若干服务组合成大粒度服务的过程。
目前,已有大量工作见诸于论文,并有学者对其进行了综述[2,27 29]。
根据作者早期所撰写的综述[29],笔者将服务组合方法分为业务流程驱动的服务组合和即时任务求解的服务组合两大类。
前者以业务流程为基础,在业务流程建模时为每一个活动绑定Web服务,从而形成流程式的组合服务,这类组合服务的内部结构、服务交互关系和数据流等全都受控于业务流程。
而即时任务求解的Web服务合成是为完成用户提交的一次即时任务,而动态地从服务库中自动选取若干服务进行自动组装。
与业务流程驱动的服务合成相比,它不受业务流程逻辑的约束,合成过程自动化程度高,所形成的组合服务是若干服务的一个临时联合体,一旦用户任务求解结束,该临时联合体也随即解散。
由于业务流程驱动的服务组合方法是从工作流发展而来的,较为成熟,近年来的新成果并不多见,而即时任务求解的服务组合依旧是当前的研究热点,本章重点介绍如下几种代表性新方法。
而在文献[29]讨论过的基于情态演算、基于规划领域定义语言(Planning Domain Definition Language,PDDL)、基于层次任务网(H ierarchical T ask Netw o rk,
H T N)、基于定理证明的方法在此不再赘述。
(1)基于M arkov决策过程的服务组合
虽然已有学者提出基于H TN的服务自动组合方法,但是这些方法没有考虑如何从多种可用分解中做出选择,这将导致最后得到多种解决方案。
M arko v决策过程(M ar ko v Decision Process, M DP)为决策制定建模提供了一个数学框架,其输出结果部分是随机的,部分是决策者所控制的,适用于解决在大范围内选优的问题。
文献[30]提出了一种将M DP和H T N规划相结合的模型,并基于该模型提出了一种改进的服务自动组合方法。
该方法分三个步骤: 初始化规划域的描述; 基于H TN规划获取备选规划,H T N规划依据用户的功能性需求进行任务分解,从而得到若干能够满足用户功能需求的解决方案; 基于M DP对备选规划方案进
407
计算机集成制造系统第17卷
行质量评估,从而选出最优的解决方案,使用这种方法得到的解决方案不仅满足了功能性的业务需求,也满足了非功能性的质量期望。
(2)基于约束满足问题的服务组合
约束满足问题(Constraint Satisfaction Prob lem,CSP)是人工智能(Artificial Intellig ent,A I)研究领域的一个重要分支,其求解过程就是找到所有变量的一个或多个赋值,使约束得到满足。
文献[31]将一个服务组合任务形式化为约束满足问题,提出了以一致性为基础的服务组合方法,该方法为服务组合问题形式化为生成CSP建立了一系列基本规则,包括服务组件建模、组件接口不均匀化、组合数据类型建模、流程约束和控制约束等,为了得到一个组合服务,首先需要利用这些规则将该服务组合问题转化为一个CSP,从而将获取服务组合的过程转变为生成CSP求解的过程。
为了适应服务组合问题,对传统的CSP的求解过程进行了扩展,提出了一种域独立的算法完成求解过程,该算法属于增量式求解过程,不但满足SWDL(semantic Web description lo gic)标准,而且与OWL S描述语言兼容。
文献[32]也基于CSP提出了一个服务组合框架(Com po sitio n Web Serv ice Fr am ew or k,CWSF),该框架包括CWSF定义器、语义域模型库和语义推理机、服务适配引擎和服务注册中心、服务查询引擎和规划生成器。
其中核心部分是服务组合的规划生成器,规划生成器首先通过约束引擎和约束翻译器,将服务组合问题转化为CSP,然后将CSP交给解决方案分析器进行处理,得到既符合用户需求标准又满足语义兼容的解决方案,最后再将最终得到的解决方案转化成一个可执行的组合服务。
(3)基于启发式搜索的服务组合
启发式搜索是在状态空间搜索时,对每一次搜索的当前位置评估下一个最好的搜索位置,再从这个目标位置开始进行搜索,直到完成目标为止。
文献[33]最早提出了基于启发式搜索的服务自动组合算法,该算法支持服务组合的并行创建,允许在可选择的控制流程中存在初始状态和服务效果的不确定性。
同时,该算法还支持在服务组合的过程中创建变量,以确保其在真实环境中的应用性。
但是,该算法也存在着一些不足,首先搜索空间过大,从而增大服务检索的时间开销,降低服务组合的效率;另外,该算法还应该采用有效的优选策略,以选出最优的服务组合,从而提高算法的性能。
文献[34]为了解决在适应实时Web服务组合需求的演化过程中的收敛速度问题,提出了一种新颖的启发式服务选择方法,该方法引入了免疫优化方法以及一种用于减小搜索空间的高效编码方式。
所有可用的服务以一种简洁的二进制编码方式进行编码,并且通过免疫演化操作进行维护,产生的抗体将成为解决方案,从而保证了搜索空间不会过大。
该方法只捕获导致疫苗过低或过高健壮性的基因,即抗体的基因突变不是随机发生的,而只是集中在部分基因,在演化过程中使用这种启发式信息将大大提高收敛的速度。
(4)基于图搜索的服务自动组合
基于图搜索的方法提供了一条不同于人工智能规划的Web服务自动组合的有效途经,这类方法无需过多的形式化表示方法或推理系统,比较容易实施。
在基于图搜索的服务自动组合方法中,服务以及服务之间的关系被表示成关系图,服务合成的过程被转化为在关系图中进行遍历,寻找从输入到输出或者从输出到输入的可达路径。
文献[35]提出了一种加强版的服务依赖图,对依赖关系的声明更加明确,依赖关系包括两种类型: 属性依赖,用于描述一个操作和一个属性或者是两个属性之间的关系; 操作依赖,即两个操作之间的数据流。
加强服务依赖图的改进主要表现在: 实现了对属性的量化; 对依赖关系给出了更为明确的定义; 将依赖关系划分为两个层级(抽象层和实例层)。
此外,本文基于加强型服务依赖图,提出了一种服务组合算法,该算法在效率上有了极大的提高,并且获得了WS Challeng e2007的冠军。
文献[36]设计了分布式的服务自动组合规划器,该规划器建立在多个分布的服务代理之上,每个服务代理都维护了一个区域性服务关系图。
当有服务组合请求到达时,各服务代理通过对自身维护的服务关系图进行搜索,给出局部规划,最后将多个局部规划合成为最终的服务组合规划。
该方法的特点在于将规划的搜索任务进行分布式处理,提高了搜索效率和规划速度。
(5)面向RESTful服务的自动组合
RESTful Web服务作为一种新兴的技术,开始在工业界和学术界受到越来越广泛的关注,相比传统的基于简单对象访问协议(Simple Object Access Proto col,SOAP)的Web服务,REST ful Web服务凭借其轻量级、易访问、可扩展等特点,在进行服务组合时更具有优势。
尽管RESTful Web服务的应用已经越来越多,但是面向RESTful Web服务的组合研究还处于初级阶段,文献[37]为RESTful Web服务建立了一个正式的概念模型,将RESTful Web服务分为三
408
第2期邓水光等:Web服务组合技术框架及其研究进展
类,即资源集合服务、个体资源服务、过渡服务),并对这三类服务分别进行建模。
基于该模型,笔者提出了一个自动服务组合框架,该框架采用基于状态转移系统的情景演算技术。
由于RESTful Web服务相对较新,面向RESTful Web服务的自动组合还存在着诸多挑战,例如缺少面向RESTful Web服务的正式建模和描述语言,从不同提供方获取RESTful Web服务进行合成时,数据的异质性也是一个巨大的障碍。
因此,面向RESTful Web服务的自动组合还存在很大的研究空间和发展潜力。
4 Web服务组合验证
为确保服务组合能正常执行,往往在执行前需对其进行验证,其验证的内容主要包含两个方面:验证组合服务内部流程逻辑的正确性和验证组合服务中各服务间的兼容性。
一般来说,Web服务组合验证均基于某种形式化方法进行,纵观目前国内外有关Web服务组合验证的文献,Petri网、自动机理论和进程代数是使用最多的三种形式化方法,本章介绍一些代表性的工作。
4 1 基于Petri网的Web服务组合验证
Petri网不仅具有直观的图形表示方式和丰富的形式化语义,还提供了很多系统分析验证手段,因此被作为一种形式化工具而被广泛应用于流程分析和验证。
工作流研究领域的大师级人物VAN DER Aalst在Petri网研究与应用方面极具影响力,他认为服务组合的描述语言相比工作流,如同新瓶装旧酒,主张使用Petri网对Web服务组合进行建模和验证[38],并提出算法将其提出的面向工作流的Petri网WF Net转化为业务流程执行语言(Business Process Execution Language,BPEL)语言,通过验证WF Net 的正确性来检验BPEL的正确性[39]。
文献[40]在VAN DER Aalst的工作基础上,将Web服务建模成包含内部流程和外接口的工作流模块(workflow module),并采用WF Net对Web服务的内部流程进行建模。
在将Web服务建模成工作流模块之后,将Web服务组合转化成工作流模块的合成,进而基于工作流网对服务间语法和语义兼容性进行验证。
文献[41]用Petri网对服务建模,把服务的操作和服务输入/输出分别映射到Petri网中的转移和库所,提出了服务Petri网模型。
并且针对服务组合中的各种基本结构(如顺序、互斥、并发等)和各种高级结构(如并发同步)进行形式化表达。
在将Web服务、Web服务组合表达成Petri网模型之后,服务组合的验证问题就转变成检验服务Petri网的活性(live)、有界性(bound)和死锁/活锁等,而这些方面的验证均可采用Petri网已有的分析验证方法。
除了应用基本的Petri 网之外,一些高级Petri网也被用于服务组合的建模与验证[42 43],以提高对复杂服务组合过程及其属性的描述能力。
4 2 基于自动机理论的Web服务组合验证
自动机作为一种最为直观的建模方法,也被广泛应用于服务组合验证中。
文献[44]从服务之间的消息交互出发,将服务形式化描述为一个具备先进先出输入消息队列的非确定型B chi自动机,将服务组合视为服务之间通过异步消息传递的全局会话协议,提出了会话协议的可行性条件和异步消息的可同步化条件。
可行性指存在符合会话协议的服务组合;可同步化指服务组合中各服务之间的异步消息模式可以等价转换为同步消息模式。
将这些条件和系统的目标属性用线性时序逻辑(Linear T empo ral Lo gic,LTL)描述成断言,根据会话协议进行自顶向下的服务组合的同时,用精简PROM ELA (process or pr otoco l m eta Languag e)语言翻译器(Sim ple PrOMELA INterpreter,SPIN)模型验证断言,从而判断服务组合是否符合预定的会话协议。
在此基础上开发了Web服务分析工具,该工具实现了对Web服务组合的形式化描述、验证和分析,支持对BEPL和WSDL的服务组合描述、基于自动机的服务组合全局会话协议描述等验证。
文献[45]采用有限状态机对基于BPEL描述的服务组合流程进行建模,通过检验流程安全性和活性等属性来验证服务的正确性。
文献[46]在Web服务内部的业务流程中加入了时间约束信息,并采用自动机对其业务协议进行建模,进而验证两个带有时间约束的业务协议在进行交互时的正确性、兼容性和可替换性。
4 3 基于进程代数的Web服务组合验证
进程代数是一类使用代数方法研究通信并发系统的理论的泛称,包括通信系统演算(Calculus of Com municating Sy stem s,CCS)、通信顺序进程(Com munication Sequential Pro cess,CSP)和 演算等,其中CCS和 演算在Web服务组合分析与验证中使用较多。
文献[47]概括性地说明了利用进程代数来形式化描述Web服务,以及Web服务组合对于Web服务(组合)的验证和指导Web服务开发的作用及意义,并以示例分别展示了如何利用进程代数表达Web服务编排和编制。
文献[48]采用CCS对Web服务编排协议(Web Serv ice Choreog
409。