刘绍华,马铁军,景兴建
(1.北京邮电大学国际开放实验室 北京100876;2.英国帝国理工学院计算机系 英国伦敦;3.香港理工大学机械工程系 中国香港)
21世纪仍然是信息技术的世纪,互联网(Internet)让人们足不出户就可以纵览天下大事,万维网(WWW)的出现已将世界原有的有形界限全然打破,而电子商务(e-Business)也潜移默化地改变了我们的生活。今天的我们更进一步,已迈入网络服务(web service)的大门,业界正在经历一场称为“云计算”的新运动,将业务软件以服务的形式(software as a service,SaaS)扩展到互联网上,借助云端网络的虚拟化软件技术提供全天候、个性化、零距离的优质服务,并使这些服务能够在组织内或者组织间动态地相互协作[1]。
目前,面向服务计算(service oriented computing,SOC)和面向服务体系结构 (service oriented architecture,SOA)已被业界广泛接受,成为构造下一代分布式应用的计算范型和体系结构。在基于SOA的分布式应用中,服务是基本构造单元,应用由服务和服务之间的交互构成,实现面向服务复杂应用的关键就是服务之间的交互协作。服务在交互协作的粘合之下形成复杂服务。软件服务技术近年来已从服务计算最初的基本服务“描述、发现、调用”架构以及云计算初期的“软件即服务”概念向新的阶段——服务协作技术方向发展。
然而,由于服务协作是一项复杂的任务,往往超出了人工处理的能力。因此,为了达到业务目标,服务协作结构必须是面向需求(共同的目标和达成的约束)动态且自动地构造出来,而不是在设计时预制好;并且服务协作应该能够随着需求而变,随计算环境而变,并允许动态重构。因此,服务协作动态构造技术一直是近年来的研究热点。
网络技术的发展和计算机应用的普及,促使人们从过去的单机应用和简单数据库应用的水平,大规模地走进全新的网络应用阶段。应用网络化已成为当今计算机应用和软件工程的主流[2]。Internet是当前多种类型计算机网络应用的互联集合,堪称当今最大的分布式系统,它使得世界各地的用户能享受诸如电子邮件收发、文件传输、网络浏览和服务访问等信息时代的最新成果。
20世纪七八十年代,E-mail(电子邮件)、FTP(file transfer protocol,文件传输协议)和Telnet(远程登录)是 Internet上较早出现的重要工具,特别是电子邮件系统,至今仍然是Internet上主要的应用形式之一。早期Internet的主要作用是为人与人之间以消息的形式进行沟通提供一座桥梁。
时至20世纪90年代,WWW (world wide web,万维网,也简称 Web)迅速风行,基于 HTTP(hypertext transfer protocol,超文本传输协议)和HTML(hypertext markup language,超文本标注语言)的Web访问成为人们利用Internet获取各种信息资源的最主要形式,此时,Internet的角色已经从人与人之间的沟通桥梁过渡为人与分布式应用之间的交互渠道。
进入21世纪之后,随着Web Service(网络服务,又译为Web服务)技术的出现并日趋成熟,分布式、异构的网络应用可以借助绑定在SMTP(simple message transfer protocol,简单邮件传输协议)或者HTTP等之上的SOAP(simple object access protocol,简单对象访问协议)[3]消息,跨越整个Internet实现互操作。因此,一个大规模的应用系统,可以由分布在网络上不同地方的软件协同工作去完成。随后,语义网络、网格计算和云计算技术也在此基础上逐渐发展、完善起来。不难看出,当今的互联网正在逐渐演变为网络应用与网络应用之间基于服务实现协同工作的平台,随着当前互联网向未来物联网方向的演进,服务协同也将成为未来物联网上支持智能物件之间 (machine to machine,M2M)通信的一种重要手段。
相应的,软件技术也正在经历着一次转变。传统上,软件开发人员通过组合本地系统运算处理能力的方式开发应用程序,开发人员有权使用丰富的系统资源,精确地控制应用程序的功能和性能;如今,新一代的软件开发人员正致力于构建面向服务体系结构,基于SaaS技术将分布于网络各处的众多应用程序资源封装、虚拟化并相互连接起来,通过这些服务的协同工作实现更大范围、更复杂的业务处理。于是,软件技术从研究如何开发应用系统产品向如何在云端提供虚拟化网络服务和动态构造服务协作迁移。
目前,服务协作这个概念还没有一个统一的定义。有的将服务之间的交互和关联称为服务聚集(service aggregation)[4],更多的称为服务复合(service composition)。
Web服务使软件协同工作进入了新的境界,它可以实现许多过去无法达到的目标,例如,任何两个异构的软件系统都可以只借助轻量级的基础设施,在整个互联网范围内跨越不同的平台,安全地通过防火墙,自由选择同步或者异构的通信方式进行交互、互操作和协作。面向服务的体系结构非常适合于统一协调分布式服务,以便构建由多个服务参与的复杂业务流程,因为由基于面向服务的体系结构构建的应用软件可以按需要拆散和重新组装。
本文将基于服务的软件协同工作简称为服务协作。服务协作是在面向服务的分布式环境下,借助云计算平台,将来自不同提供商的分离的服务和谐地整合在一起,基于动态发现、延迟绑定、即兴复合、虚拟组织等机制,使得这些服务能够相互协作执行某些任务,进而实现预定的业务目标。
服务是由一方(提供者)提供给另一方(接收者)的功能系统,并以服务描述的形式构成两者之间的一种契约关系,其中提供者承诺提供,而接收者同意接收。协作则被定义为“互相配合,共同完成某项任务”,是“人或企业为了共同的通常是经济上的利益联合起来”[5]。
服务协作,事实上是为了共同目的而相互合作的若干服务提供商提供的一些业务服务的组合,如图1所示。根据内部复杂度的大小,业务服务大致分为两类,即基本服务和复合服务。基本服务提供基本的功能,包含低层次的数据转换,几乎不涉及复杂的算法和流程。举例来说,简单的天气播报服务就属于基本服务。与之相反,复合服务也被称为业务流程,能提供高层次的服务,可以包含多个层次的数据访问和转换。复合服务可以通过若干个基本服务的协作来实现,当然,复合服务也可以与基本服务或者其他复合服务协作,并构成更高层次的复合服务。例如,涉及预订系统、配送系统和电子支付系统在内的网上购物流程就是一种复合服务,网上商店、物流中心和电子银行通过服务协作的形式共同赚取商业利益。
本质上,服务协作是协调若干服务共同工作,服务协作可以从以下几个层次体现出来:
·单个服务与服务之间服务级别的交互(Interaction),是基本服务协作形式,体现了服务之间多个操作的交互协议;
·多个服务通过控制流与数据流编排(Orchestration)组成复杂、多步骤的复合服务,服务之间的交互和协作通过两种流(Flow)来体现;
·基于服务,跨组织域的业务流程配合(Choreography)。
每个服务都在服务协作业务流程中扮演着特定的角色。作为服务协作的一部分所交换的特定消息会触发业务流程中定义的事件,并推动服务协作流程继续向后执行。因此,业务流程与服务协作的关系非常密切,而且业界往往把业务服务描述和业务流程协作的具体技术融合在一起,例如 ebXML的 BPSS(business process specification schema)[6]、RosettaNet的 PIP(partner interface process)[7]等。
工业界和学术界已经为服务之间的协作提供了很多很好的思路。
W3C 提出了 WSCL[8]、WSCI[9]和WS-CDL 的建议,并正致力于OWL-S(从DAML-S的基础发展起来,主要基于OWL语言)和服务协作语义方面的标准化[10],OASIS给出了业务事务协议(business transaction protocol,BTP),IBM、微软和BEA等公司在早期WSFL和XLANG语言的基础上提出了面向Web服务的业务流程执行语言(BPEL4WS)和相关的Web服务协调 (WS-coordination)[11]、Web服务事务(WS-transaction)[12]标准之后,进一步推出了Web服务策略框架(WS-policyFramework)[13];Sun公司提出了 Web服务复合应用框架 WS-CAF(webservicecompositeapplicationframework),综合考虑了协调(Coordination)、事务(Transaction)与上下文(Context)等问题[14]。总的来说,目前服务协作的相关规范处于服务协议栈的较高层次,如图2所示。
在学术界,Zhang L J等人探索了Web服务解决方案的生命周期[15],Sheng Q S等人研究了自调整、自协调服务[16],Henrique P等人则提出了自适应 Web服务[17],Michael N H[18]和Mercedes A[19]等人则致力于服务的主动化和智能体(Agent)化。
然而,目前这种百家争鸣的局面说明对服务协作的研究方兴未艾,还没有一致认可的理论方法、标准规范和工具支持,服务协作的许多问题还有待于进一步的探讨和解决,而如何动态构造服务协作正在引起越来越广泛的关注。
服务协作是一项复杂的任务,往往超出了人工处理的能力,其中复杂性根源于如下一些因素:
·近年来Internet上可用的Web服务急剧增加;
·Web服务可以由不同组织开发,使用不同模型描述服务;
·Web服务可能不断创建和更新,甚至在运行时发生。
因而,为了达到业务目的,服务协作结构必须是面向需求(共同的目标和达成的约束)自动构造出来的,而不是在设计时预制好的,并且服务协作能随着需求而变,随计算环境而变,能够动态重新构造。
服务协作动态构造的意义在于以下3个方面:
·有利于节约信息资源,因为动态构造服务协作将提升分布、异构资源的集成度、单机虚拟映像和互操作性,保护已有投资,同时加强跨部门、跨组织的业务协同,促进信息资源的合理配置,提高资源利用率,减少浪费和重复建设,并改善应用开发、管理、运行和维护的效率,节约成本;
·有利于提高服务质量,因为加强动态构造技术的研究将提高服务的灵活性、可用性,由此带给用户更满意的服务体验,进而增进服务与服务之间以及组织与组织之间的互相信任,以便减少矛盾、促进合作,最终保障共同业务目标的实现;
·有利于可持续发展,通过研究服务协作的动态构造
技术,可以帮助服务提供者保持迅速的客户响应能力,增强对动荡的市场和不稳定的底层环境的适应能力,具备更强的竞争力,从而在未来的战略中占据
优势,以便能够满足敏捷制造和持续改进的要求。因此,服务协作动态构造技术成为近年来的研究热点。
服务协作体现了服务之间的交互协作关系,因此,作为其关键技术问题之一的服务协作关系构造引起了国内外学者的广泛兴趣,并提出了各种各样的方法。
特别值得一提的是,近几年来,国内学者围绕服务协作的动态构造进行了大量研究,并取得了一系列重要成果。
例如,中科院软件所冯玉琳教授领导的服务计算研究组提出了服务协作中间件模型,探讨了其内部机理与协作流程元模型的形式化[20~23],还针对B2B环境下的跨企业服务流程协作进行了研究,提出基于数据流建立服务协调模型,实现面向B2B的服务组合与协作方法[24,25]。
北京航空航天大学怀进鹏教授领导的课题组,在动态的Web服务复合方面已经取得了很好的研究成果,他们实现了一个基于Web服务的工作流引擎平台WSWF,该平台的特点在于采用基于栈式的方法执行实例活动,并提供运行时的监控管理、事务保障等特性[26]。
中科院计算所韩燕波研究员等人探讨了业务层面需求描述模型、用户语境建模及应用机制等问题,提出了VINCA语言,它从业务过程、业务服务、用户上下文和交互方式4个侧面为在业务层面构造面向服务的应用提供了支持,并构造了VINCA支撑平台,并对其中的核心技术进行了研究,如基于Context的服务发现、服务动态连接、服务虚拟化、语义服务、应用的动态调整等[27]。
南京大学吕建教授的研究组提出了一种基于运行时体系结构的动态协同架构,通过为组合服务引入一个运行时的体系结构对象来解耦与成员网络服务之间的绑定关系,从而能够根据体系结构的当前配置解释组合服务与其成员之间的交互行为[28]。
中国人民大学王珊教授的研究组提出了基于领域本体的服务动态复合方法DOSCM,采用本体语言来描述选取模型中的概念及其关系,通过领域专家定制不同领域的评价因子,根据服务运行过程中产生的知识,利用机器学习算法自动计算评价因子的权重分布,并结合领域专家给出的先验知识,提出人机交互的权重优化方法[29]。
电子科技大学刘锦德教授的课题组提出基于π演算的服务复合的描述和验证,通过π演算与服务协议栈的对应关系,建立服务复合模型的规则并建立一个实际的模型[30],验证服务复合的正确性以实现服务增值。
以上只是举了几个例子,国内还有更多的相关研究成果,但限于篇幅就不再展开介绍。
(1)人工型构造方法难以适应新的需求
迄今为止,国内外研究工作者为服务协作的动态构造提出了数十种方法,大致可归类为人工型和自动型,下面首先介绍几种具有代表性的人工型方法。
HP实验室开发的e-Flow系统提供一个集成平台以支持服务协作的定义、运行与监控。服务协作通过原子服务和其他组合服务组成的流程结构图进行定义。e-Flow通过提供动态服务发现、多服务节点、动态服务节点创建和基于流程范式的动态修改来实现服务的动态组合[31,32]。
澳大利亚新南威尔士大学开发的Self-Serv系统将服务协作建模为活动图,提供了动态构造服务协作的平台,并支持以非集中的方式、借助协调器、基于路由信息表、通过P2P(peer-to-peer,对等)交互方式来执行所构造的服务协作[16,33]。
荷兰蒂尔堡大学的Orriens等人给出了基于模型驱动的服务组合方法,使用UML进行高层次的抽象,能直接映射到其他标准,如 BPEL4WS。使用 OCL(object constraint language,对象约束语言)来表达业务规则和流程,并利用业务规则实现动态地构造服务组合,进行服务的选择和绑定[34~36]。
e-Flow和Self-Serv方法是基于工作流定义服务协作结构的,Orriens等人基于模型驱动的方法则是依据规则生成服务协作结构的。这些方法都能够实现复杂流程的协作结构,但是它们存在的共同问题是:只考虑了服务组件的接口模型,没有考虑单个服务内部的流程逻辑,而且在建立协作结构方面的动态性不足,只是研究了服务组件的动态选择与替换。总的来说,人工型方法已经难以适应当前服务协作需求的复杂性和构造的动态性。
(2)自动型构造方法日益受到重视
与人工型方法相比,自动构造方法被认为是具有更好前途的技术。自动构造方法能将发布的服务自动组合起来,建立新的业务合作关系,提供新的功能,极大减少了开发基于Web和面向服务应用的时间和精力,并且,自动构造能减少人为设计行为引起的出错,增强可信性。
现有很多工作围绕服务协作自动构造展开研究[37]。其中一些是在服务操作功能层次进行服务组合[38,39],而更多的是在流程层次针对服务之间的交互协作进行自动构造方法研究。
朗讯贝尔实验室的Hull和加州大学的Su合作的研究组[40]使用异步消息通信的Mealy自动机刻画服务行为,针对预先确定参与协作的服务和线性时序逻辑刻画的全局目标/约束,自动构造出刻画服务协作行为的Mealy自动机。
罗马大学的Berardi等人以活动标记的自动机模型来描述面向用户交互的服务行为,通过构造一个代理自动机来代表服务协作,满足面向用户的各种交互需求[41]。这种基于自动机模型的方法都是面向服务的交互行为,有助于研究交互行为复合自动化。
美国南加利福尼亚大学的Knoblock领导的研究组则另辟蹊径,应用数据集成方法来解决服务动态组合问题[42]。服务组合的输入包括:可用服务组件建模为数据源,客户需求建模为用户查询。通过一个实现用户查询的集成规划,即一系列的数据查询来自动地实现服务的组合。
Hull等人的方法适用于从会话的角度分析服务协作构造,但是他们并没有给出详细的构造过程和具体操作步骤;Berardi等人的方法在一定程度上考虑了服务组件内部的处理过程,但却必须预先定义期望的业务逻辑,以此为指导生成服务协作结构,而且服务选择时没有考虑在服务组件失配时如何进行适配的协调方法。Knoblock等人的数据集成方法不论在描述服务组件还是协作需求方面,都显得不够直观。
(3)基于智能规划的方法成为主流趋势
学术界现在广泛认识到自动构造服务协作的关键问题之一是语义:精确的服务能力和服务流程描述[4,43],而基于语义进行自动服务协作构造的代表性方法是智能规划技术(AI planning)。
基于智能规划技术的服务协作自动构造方法,关注以流程为中心的服务描述,将服务操作建模为动作,状态转换基于动作前条件定义,一个状态转换导致状态转移,动作效果即是转换状态。规划技术就是在给定初始状态、目标状态和一组可能状态转换情况下,合成复杂的状态变迁行为。该技术的本质是建立一个规划(plan)的语义模型,针对该语义模型的状态空间开发搜索算法。这种根据业务协作目标建立服务协作关系的方法具有很好的灵活性和动态性。
现有不同的规划方法被提出来应用于动态服务协作构造,例如基于情景演算(situation calculus)和Golog面向OWL-S语言的研究方法[44];美国马里兰大学D.Wu等人的基于HTN(hierarchical task network,层次任务网络)进行任务分解的规划方法[45];耶鲁大学MCDermott等人扩展PDDL形成规划表示语言并基于回归规划的研究方法[46];使用基于规则专家系统自动构建Web服务复合的研究工作[47];基于语义说明性描述,使用可组合规则,考虑Web服务语法和语义性质,定义规划如何自动生成的方法[48];基于程序合成,使用SSP方法进行规划自动生成的研究方法[49];把规划和模型检查技术结合,将规划作为模型检查问题的研究方法[50]等。基于模型检查技术的规划方法,能面对规划域中的非确定性信息,构造具有复杂控制结构的规划。这种方法适合于Web服务领域,值得借鉴和利用。
基于智能规划的方法可以依据用户的需求实现协作结构的自动建立,在服务协作结构的构造方面有很高的动态性。但是美中不足的是:服务组件只能建模为简单的操作,而大多只能产生顺序的动作序列,不支持服务协作结构中复杂的控制结构,如循环、选择等,因此对服务协作结构的支持度不够。规划方法通常将需求建模为目标状态,而通常的服务流程描绘的是离散的服务处理,业务目标通常体现在过程状态而不仅仅是最终状态中。
对于前文所述的国内外研究进展,我们通过对比分析,认为人工预定义流程构造服务协作结构的方法有较大局限性,如费时费力,而且正确性难以保证;而基于服务的语义信息,使用智能规划方法能自动构造出满足需求的服务协作结构,能改善人工构造方法中的问题。但是这类方法在面对服务协作问题时也有局限性,主要是模型复杂度和规模可扩展方面的问题,具体包括以下几个方面:
·传统规划方法面对的是简单动作,大多只能产生顺序的动作序列,然而,服务协作结构中需要包含复杂的控制结构,包括循环、(非确定性)选择等;
·服务协作中交换的“对象”是类型化消息,可包含任意复杂的结构,传统规划方法只能应对有限域的“简单对象”;
·在多方交互的服务协作中,规划难以在原始动作层次进行,如WS-BPEL中的receive和invoke活动映射为规划动作,需要引用操作的输入/输出消息,甚至BPEL流程的内部状态,显式地刻画操作的前、后置条件,而这些信息对多方交互形式的服务协作而言是隐藏不见的,传统规划方法不能解决好不可见(Unobservable)信息问题;
·显式而复杂的目标不易获得,传统规划技术都是把可达的最终状态作为规划目标,而服务流程模型描绘的是离散的服务处理,真正的业务目标经常隐含在过程状态中,而不是表现在最终状态。
因此,如何在基于智能规划的服务协作动态自动构造过程中解决以上这些问题是当前值得深入研究的。
为了解决当前研究中存在的问题,本文认为可以针对服务协作的复杂控制结构,选择能有效解决该类问题的基于模型检查的智能规划技术作为模型自动构造方法,例如可以采用基于知识的数据抽象方法来化减规划域的状态空间;此外可以使用同态映射方法,完备地将部分可观察规划域模型转化全部可观察规划域模型。这些技术能使基于模型检查的规划方法满足服务协作结构的自动构造需求,可有效地克服已有方法的缺陷。
服务、网络和经济的相互渗透,促进了软件产业迅速的发展,同时也给软件技术带来前所未有的困难。以著名计算机科学家Grady Booch为首的100位软件界权威人士曾经共同预言:软件将变得越来越复杂;新经济要求软件能够持续更新;软件会不断演进下去,同时,各种挑战也将伴随着不断出现[51]。
从技术发展趋势上可以看出,在最近十几年中,业界都在积极定义和改良分布式计算技术[52],使得可以实时地查找组件、在运行时发现组件的接口、在某种特定基础上由组件组装应用程序[53]。我们正是沿着前人的足迹走向了服务协作动态构造,开始尝试动态复合分布在多台不同主机上的许多基本的Web服务来实现复杂的业务流程[54],而不必费尽心思在大型计算机上预先建立巨型的应用程序[55]。
在应用市场需求方面,社会的全球化趋势使服务协作面临快速变化的市场、新的政策法规、灵活的业务协作关系和更大的竞争压力,这一切都要求服务协作能够快速地响应变化以适应新的业务模式和需求。面对变化的需求,服务协作必须以动态构造和灵活重构作为应对策略。
虽然,服务协作所基于的Web服务技术为动态构造奠定了体系结构的基础。服务是位置透明的,借助UDDI[56]注册和动态发现机制,用户可以不知道响应自己需求的服务的位置,这样有利于针对和适应业务需求的变化;服务便于封装和重用,通过WSDL[57]可以快速将软件资源封装为可重用的服务,能够隐藏底层实现的复杂性,并屏蔽服务的自治更新;服务是协议独立的,SOAP通信机制使得服务的互操作更加灵活;服务是松散耦合的,允许动态发现和延迟绑定,有利于临时组装出复杂的系统,提供更为快速和优质的需求响应。然而,动态构造不应仅体现于软件的体系结构上,还应同时体现在服务协作的构造方法中。
正是因为意识到服务协作动态构造的重要性,对相关技术方法的探索将继续成为今后一段时期内云计算的研究焦点。
1 Armbrust M,et al.Above the clouds:a Berkeley view of cloud computing.UCB/EECS,2009
2 冯玉琳,黄涛,金蓓弘.网络分布计算和软件工程.北京:科学出版社,2003
3 W3C.Simple object access protocol(SOAP),http://www.w3.org/TR/SOAP,2000
4 Rania K,Frank L.On web services aggregation.Berlin Heidelberg: Springer Verlag,2003
5 American Heritage Dictionaries(Editor).The American heritage dictionary of the english language,4 edition.BOSTON:Houghton Mifflin,2000
6 ebXML.Business process specification schema,version 1.01,http://www.ebxml.org/specs/ebBPSS.pdf,2001
7 RosettaNet.Partner interface process(PIP),http://www.rosettanet.org/RosettaNet,2001
8 W3C.Web service conversation language(WSCL)1.0,http://www.w3.org/TR/2002/NOTE-wscl10-20020314,2002
9 W3C.Web service choreography lnterface(WSCI)1.0,W3C Note 08,http://www.w3.org/TR/WSCI,2002
10 DARPA.OWL-S specification,http://www.daml.org/services/owl-s/1.1,2003
11 IBM.Web services coordination(ws-coordination),http://www.ibm.com/developerworks/library/ws-coor,2002
12 IBM.Web services transaction(ws-transaction),http://www.ibm.com/developerworks/library/ws-transpec,2002
13 IBM,BEA,Microsoft,SAP.Web services policy framework,http://www.ibm.com/developerworks/library/ws-polfram,2003
14 Doug B,Martin C,Oisin H,et al.Web services transaction management (WS-TXM)Version 1.0.Arjuna,Fujitsu,IONA,Oracle,and Sun,July 28,2003
15 LiangJiezhang,MarioJ.Thenextbigthing:web service collaboration.Berlin Heidelberg:Springer Verlag,2003
16 Sheng Q S,Benatallah B,Dumas M,et al.SELF-SERV:a platform for rapid composition of web services in a peer-to-peer environment.In: Proceedings of the 28th VLDB Conference,HK China,2002
17 Henrique P,LingLiu,Calton P.Adaptation space:adesign framework for adaptive web services.Berlin Heidelberg:Springer Verlag,2003
18 Michael N H.Software agents:the future of web services.Berlin Heidelberg:Springer Verlag,2003
19 Mercedes A,et al.Putting together web services and compositional software agents.Berlin Heidelberg:Springer Verlag,2003
20 Liu Shaohua,Wei Jun,Xu Wei.Service cooperation middleware and itssupportforprocessintegration.In:Proceedings of International Workshop on Grid and Cooperative Computing(GCC02),Sanya China,2002
21 Liu Shaohua,Wei Jun,Xu Wei.Towards dynamic process with variable structure by reflection.In:Proceedings of the 27th Annual International Computer Software and Applications Conference (COMPSAC2003),IEEE ComputerSociety,Dallas USA,Nov 2003
22 Liu Shaohua,Ye Dan,Wei Jun,et al.POP beyond SODA,reaching the new horizon of service cooperation.In:Proceedings ofthe 28th AnnualInternationalComputerSoftware and ApplicationsConference (COMPSAC2004),IEEE Computer Society,HK China,Sept 2004
23 刘绍华,魏峻,黄涛.基于服务协作中间件的动态流程模型.软件学报,2004,15(10):435~444
24 Qiao Xiaoqiang,Wei Jun,Huang Tao.A decentralized approach for inter-enterprise business process collaboration.I-ESA,2006
25 Qiao Xiaoqiang,Wei Jun.A decentralized services choreography approach for business collaboration.SCC,2006
26 杜宗霞,怀进鹏,王勇等.组合Web Service支撑系统的研究与实现.北京航空航天大学学报,2003
27 Han Y,et al.VINCA-A visual and personalized business-level composition language forchaining web-based services.In:Proceedings of the 1st International Conference on Service-Oriented Computing,LNCS 2910,Springer Verlag,2003
28 马晓星,余萍,陶先平等.一种面向服务的动态协同架构及其支撑平台.计算机学报,2005,28(4)
29 李曼,王大治,杜小勇等.基于领域本体的Web服务动态组合.计算机学报,2005,28(4)
30 廖军,谭浩,刘锦德.基于Pi-演算的Web服务组合的描述和验证.计算机学报,2005,28(4)
31 Casati F,Ilnicki S,Jin L J,et al.An open,flexible,and configurable system for service composition.HPL technical report,2000
32 Casati F,Shan M C.Dynamic and adaptive composition of e-services,published by Elsevier Science Ltd. In: 12th InternationalConference on Advanced Information Systems Engineering(CAiSE00),2001
33 Benatallah B,Sheng Q Z,Dumas M.The self-serv environment for web services composition.IEEE Internet Computing,2003 ,7(1):40~48
34 OrriensB,Yang J,Papazoglou M P.Modeldriven service composition,ICSOC,LNCS 2910.Berlin Heidelberg:Springer Verlag,2003
35 Orriens B,Yang J,Papazoglou M P.A framework for business rule driven web service composition,ER 2003 Workshops,LNCS 2814.Berlin Heidelberg:Springer Verlag,2003
36 Orriens B,Yang J,Papazoglou M P.A framework for business rule driven service composition,TES,LNCS 2819. Berlin Heidelberg:Springer Verlag,2003
37 Rao J,Su X.A survey of automated web service composition methods.In:Proceedings of the First International Workshop on Semantic Web Services and Web Process Composition,SWSWPC 2004,San Diego California USA,July 2004
38 Paolucci M,Sycara K,Kawamura T.Delivering semantic web services.In:Proc.WWW’03,2003
39 Constantinescu I,Faltings B,Binder W.Typed based service composition.In:Proc.WWW’04,2004
40 Bultan T,Fu X,Hull R,et al.Conversation specification:a new approach to design and analysis of e-service composition.In:Proceedings ofthe 12th InternationalWorld Wide Web Conference(WWW 2003),ACM 2003
41 Berardi D,Calvanese D,Giacomo G D,et al.Automatic composition of e-services that export their behavior.In:Proc.1st Int.Conf.on Service Oriented Computing(ICSOC),LNCS 2910,2003
42 Snehal T,José L A,Craig A K.A data integration approach to automatically composing and optimizing web services.In:Proceeding of 2004 ICAPS Workshop on Planning and Scheduling for Web and Grid Services,June 2004
43 Narayanan S,McIlraith S.Simulation,verification and automated composition of web services.In:Proceedings of the Eleventh International World Wide Web Conference,2002
44 McIlraith S,Son T.Adapting gogol for composition of semantic web services.In:Proceedings ofthe Eighth International Conference on Knowledge Representation and Reasoning,Toulouse France,2002
45 Wu D,Sirin E,Hendler J,et al.Automatic web services composition usingSHOP2.In:Twelfth World WideWeb Conference,2003
46 Drew M.Estimated regression planning for interactions with web services.In:AI Planning Systems Conference,2002
47 Shankar R P,Armando F.SWORD:a developer toolkit for web service composition.In:The Eleventh World Wide Web Conference(Web Engineering Track),Honolulu Hawaii,May 2002
48 Brahim M,Athman B,Ahmed K E.Composing web services on the semantic web.The VLDB Journal,2003,12(4)
49 Matskin M,Rao J.Value-added web services composition using automatic program synthesis.In:Web Services,E-Business,and the Semantic Web,CAiSE 2002 International Workshop,WES 2002,Toronto Canada,2002
50 Giunchiglia F,Traverso P.Planning as model checking.In:5th European Conference on Planning,ECP'99,Durham,UK,September 1999,In:Proceedings.Lecture Notes in Computer Science 1809,Springer,2000
51 Paul L,Mike D.Software and the new business economy.The Rational Edge,February 2001
52 Verissimo P,RodriguesL.Distributed systemsforsystem architects.Kluwer Academic Press,2001
53 Coulouris G,Dollimore J,Kindberg T.Distributed systems:concepts and design,third edition.Addison-Wesley,2001
54 Dayal U,et al.Business process coordination:state of the art,trends,and open issues.In:Proceedings of the 27th VLDB Conference,Roma Italy,2001
55 Chappell D,Jewell T.Java web services.O’Reilly Press,2002
56 W3C.Universal description,discovery and integration(UDDI),http://www.w3.org/TR/uddi,2001
57 W3C.Web services description language(WSDL),http://www.w3.org/TR/wsdl,2001