论文部分内容阅读
[摘要] 在过程驱动的Web Service组合方式中,Web Service组合与业务流程之间存在密切的关系。本文先简单介绍了Web Service架构和业务流程整合模型,然后对Web Service组合和工作流之间的相似与差异做了详细的分析。
[关键词] Web Service组合 业务流程 关系
一、引言
随着Internet技术的迅速发展,互联网上涌现了大量的Web Service。而单个的Web Service提供的功能往往也是单一和有限的,因此把网络上现有的多种异构Web Service组合起来,生成满足用户需求的新服务,不但能满足用户丰富的需求,也能降低网络信息的冗余度,最大化地提高服务利用率和可重用性。伴随对Web Service组装需求日益强烈,Web Service组合方法也成为当前学术研究的重点之一。简单的可以将Web Service组合分为三种组合方式,分别是应用程序组合、服务联邦和服务排列。其中,服务排列与业务流程执行相似。两者之间既有一定的联系,也有一些区别。
目前Web Service组合的研究者主要分为两个派别:一类从语义网的角度出发,偏重于Web Service的自描述和语义;另一类则从流程建模的角度出发,重视Web Service组合中的数据流和控制流,强调对动态环境的处理。按照所依赖的技术,以上组合方法也称作语义驱动的服务组合和过程驱动的服务组合。其中,过程驱动的服务组合思想就是利用服务组合与过程模型的相似性,对服务组合过程中的业务过程进行建模,然后利用服务替换模型中的组件,从而得到可以执行的服务组合方案。
二、Web Service架构和业务流程整合模型
1、Web Service架构
Web Service是松散耦合的、可复用的软件模块,在Internet上发布后能够通过标准的Internet协议访问。Web Service最典型的架构是服务提供者将Web服务发布到服务注册中心,服务请求者使用查找操作从本地或服务注册处得到所需的服务,并使用服务的说明信息与服务提供者实现绑定,然后与该Web Service进行交互。其模型如图1所示。
从图中可以看出此架构的主体是服务提供者、服务请求者和服务注册者。发布、查找和绑定是三个基本操作。“发布”操作是服务提供者向服务注册中心注册服务功能。“查找”操作是服务请求者在服务注册中心查找特定种类的服务。“绑定”操作能使服务请求者真正使用服务提供者提供的服务。在Web Service架构的各模块间及模块内部,消息都以XML格式传递。
图1 Web Service架构
2、业务流程整合模型
为了实现不同工作流产品之间的互操作,工作流管理联盟(WFMC)提出了如链状、网状以及同步等基本互操作模型。虽然它们可以覆盖互操作的不同能力层次,但是“系统整合”已经超越了基本操作模型的范畴。下面我们看一个普通的“流程整合”模型,如图2所示。
图2 业务流程整合模型
该整合模型采用“主流程控制”的方式,即由一个主流程控制整个流程的运行,由各个子流程完成某项具体任务,并向主流程返回处理结果。在该整合模型中,主流程自身不完成任何具体任务而只负责运转控制,而在有的整合设计中,主流程本身也完成一些具体任务。
三、Web Service组合与工作流的比较
1、Web Service组合与工作流的相同点
首先,Web Service组合和工作流系统都是基于特定案例的,一般情况下一种组合方式处理一类案例。其次,不同的工作流产品之间可以实现应用集成。同样由不同生产者建立的Web Service也可以被其他服务调用参加再次组合,形成新的能解决复杂问题的组合服务。同时不管是工作流产品集成还是Web服务组合都是以特定网络作为基础的。最后,在基于工作流技术的Web服务组合系统中,Web服务可以被看作为工作流中的一个活动。
2、Web Service组合与工作流的区别
虽然Web Service组合是实现工作流的一种方式,且具有许多工作流的特点。但Web Service组合和工作流不完全相同,它具有其自身的特性。工作流中的任务是对工作流中一项工作的抽象定义。而Web Service组合中的服务是操作接口的集合,通过操作接口完成一些工作。一个服务往往不止包括一个操作接口,即一个服务能完成不止一个任务。除此之外,工作流中执行任务的资源可以是人力资源,但Web Service组合中执行服务的资源通常是服务器。
四、结论
Web Service组合可以看成是将多个具有不同功能、完成不同任务的Web Service组合起来,完成一个大型的任务。而传统的工作流技术所要解决的主要问题是在多个参与者之间按照某种预定义的规则自动传递文档、信息或任务,从而实现某个预期的业务目标。Web Service组合可以借鉴工作流技术中的建模方法。工作流技术的弊端在于灵活性不够。而Web Service组合可以借助人工智能等领域的研究成果,定义了目标之后自动推导出组合计划。所以Web Service组合在动态性、灵活性方面较传统工作流明显改进。另外Web Service基于开放的Internet协议和XML技术,在Internet范围内互通,相对传统工作流模型在开放性、广域性方面也有所提高。
参考文献:
[1]相鹏.企业应用集成关键技术—Web服务组合引擎研究与实现.[硕士学位论文].华东,2006.
[2]刘传昌,陈俊亮.目标Web服务描述本体和服务发现模型[J].计算机工程.2007,33(18):187~189.
[3]倪晚成,刘练成,吴澄.Web服务组合方法综述[J].计算机工程,2008,34(4):79~81.
[4]范玉顺.工作流管理技术基础.北京:清华大学出版社,2001.
[5]徐涵.Understanding SOA With Web Services,第一版.北京:電子工业出版社,2006.
[6]柴晓路,梁字奇.Web Services技术、架构和应用.北京:电子工业出版社,2003.
作者简介:
张睿敏,女,甘肃兰州,讲师,兰州工业高等专科学校软件工程系,研究方向:计算机应用技术。
[关键词] Web Service组合 业务流程 关系
一、引言
随着Internet技术的迅速发展,互联网上涌现了大量的Web Service。而单个的Web Service提供的功能往往也是单一和有限的,因此把网络上现有的多种异构Web Service组合起来,生成满足用户需求的新服务,不但能满足用户丰富的需求,也能降低网络信息的冗余度,最大化地提高服务利用率和可重用性。伴随对Web Service组装需求日益强烈,Web Service组合方法也成为当前学术研究的重点之一。简单的可以将Web Service组合分为三种组合方式,分别是应用程序组合、服务联邦和服务排列。其中,服务排列与业务流程执行相似。两者之间既有一定的联系,也有一些区别。
目前Web Service组合的研究者主要分为两个派别:一类从语义网的角度出发,偏重于Web Service的自描述和语义;另一类则从流程建模的角度出发,重视Web Service组合中的数据流和控制流,强调对动态环境的处理。按照所依赖的技术,以上组合方法也称作语义驱动的服务组合和过程驱动的服务组合。其中,过程驱动的服务组合思想就是利用服务组合与过程模型的相似性,对服务组合过程中的业务过程进行建模,然后利用服务替换模型中的组件,从而得到可以执行的服务组合方案。
二、Web Service架构和业务流程整合模型
1、Web Service架构
Web Service是松散耦合的、可复用的软件模块,在Internet上发布后能够通过标准的Internet协议访问。Web Service最典型的架构是服务提供者将Web服务发布到服务注册中心,服务请求者使用查找操作从本地或服务注册处得到所需的服务,并使用服务的说明信息与服务提供者实现绑定,然后与该Web Service进行交互。其模型如图1所示。
从图中可以看出此架构的主体是服务提供者、服务请求者和服务注册者。发布、查找和绑定是三个基本操作。“发布”操作是服务提供者向服务注册中心注册服务功能。“查找”操作是服务请求者在服务注册中心查找特定种类的服务。“绑定”操作能使服务请求者真正使用服务提供者提供的服务。在Web Service架构的各模块间及模块内部,消息都以XML格式传递。
图1 Web Service架构
2、业务流程整合模型
为了实现不同工作流产品之间的互操作,工作流管理联盟(WFMC)提出了如链状、网状以及同步等基本互操作模型。虽然它们可以覆盖互操作的不同能力层次,但是“系统整合”已经超越了基本操作模型的范畴。下面我们看一个普通的“流程整合”模型,如图2所示。
图2 业务流程整合模型
该整合模型采用“主流程控制”的方式,即由一个主流程控制整个流程的运行,由各个子流程完成某项具体任务,并向主流程返回处理结果。在该整合模型中,主流程自身不完成任何具体任务而只负责运转控制,而在有的整合设计中,主流程本身也完成一些具体任务。
三、Web Service组合与工作流的比较
1、Web Service组合与工作流的相同点
首先,Web Service组合和工作流系统都是基于特定案例的,一般情况下一种组合方式处理一类案例。其次,不同的工作流产品之间可以实现应用集成。同样由不同生产者建立的Web Service也可以被其他服务调用参加再次组合,形成新的能解决复杂问题的组合服务。同时不管是工作流产品集成还是Web服务组合都是以特定网络作为基础的。最后,在基于工作流技术的Web服务组合系统中,Web服务可以被看作为工作流中的一个活动。
2、Web Service组合与工作流的区别
虽然Web Service组合是实现工作流的一种方式,且具有许多工作流的特点。但Web Service组合和工作流不完全相同,它具有其自身的特性。工作流中的任务是对工作流中一项工作的抽象定义。而Web Service组合中的服务是操作接口的集合,通过操作接口完成一些工作。一个服务往往不止包括一个操作接口,即一个服务能完成不止一个任务。除此之外,工作流中执行任务的资源可以是人力资源,但Web Service组合中执行服务的资源通常是服务器。
四、结论
Web Service组合可以看成是将多个具有不同功能、完成不同任务的Web Service组合起来,完成一个大型的任务。而传统的工作流技术所要解决的主要问题是在多个参与者之间按照某种预定义的规则自动传递文档、信息或任务,从而实现某个预期的业务目标。Web Service组合可以借鉴工作流技术中的建模方法。工作流技术的弊端在于灵活性不够。而Web Service组合可以借助人工智能等领域的研究成果,定义了目标之后自动推导出组合计划。所以Web Service组合在动态性、灵活性方面较传统工作流明显改进。另外Web Service基于开放的Internet协议和XML技术,在Internet范围内互通,相对传统工作流模型在开放性、广域性方面也有所提高。
参考文献:
[1]相鹏.企业应用集成关键技术—Web服务组合引擎研究与实现.[硕士学位论文].华东,2006.
[2]刘传昌,陈俊亮.目标Web服务描述本体和服务发现模型[J].计算机工程.2007,33(18):187~189.
[3]倪晚成,刘练成,吴澄.Web服务组合方法综述[J].计算机工程,2008,34(4):79~81.
[4]范玉顺.工作流管理技术基础.北京:清华大学出版社,2001.
[5]徐涵.Understanding SOA With Web Services,第一版.北京:電子工业出版社,2006.
[6]柴晓路,梁字奇.Web Services技术、架构和应用.北京:电子工业出版社,2003.
作者简介:
张睿敏,女,甘肃兰州,讲师,兰州工业高等专科学校软件工程系,研究方向:计算机应用技术。