(计算机应用技术专业论文)开放网格服务环境下动态工作流的研究与实现.pdf_第1页
(计算机应用技术专业论文)开放网格服务环境下动态工作流的研究与实现.pdf_第2页
(计算机应用技术专业论文)开放网格服务环境下动态工作流的研究与实现.pdf_第3页
(计算机应用技术专业论文)开放网格服务环境下动态工作流的研究与实现.pdf_第4页
(计算机应用技术专业论文)开放网格服务环境下动态工作流的研究与实现.pdf_第5页
已阅读5页,还剩46页未读 继续免费阅读

(计算机应用技术专业论文)开放网格服务环境下动态工作流的研究与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

东南大学学位论文独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得 的研究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含 其他人已经发表或撰写过的研究成果,也不包含为获得东南大学或其它教育机构 的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均 已在论文中作了明确的说明并表示了谢意。 o s 争s 东南大学学位论文使用授权声明 东南大学、中国科学技术信息研究所、国家图书馆有权保留本人所送交学位 论文的复印件和电子文档,可以采用影印、缩印或其他复制手段保存论文。本入 电子文档的内容和纸质论文的内容相一致。除在保密期内的保密论文外,允许论 文被查阅和借阅,可以公布( 包括刊登) 论文的全部或部分内容。论文的公布( 包 括刊登) 授权东南大学研究生院办理。 研究生签名酒l 导师签名:堕日 期:业刀 东南大学硕士学位毕业论文 开放网格服务环境下动态工作流的研究与实现 摘要 随着i n t e m e t 和计算机技术的发展,开放的网格体系结构得到迅速发展。在 开放网格环境下,存在大量可利用的资源和服务,如何充分合理利用各种网格资 源成为研究网格技术发展的方向之一。 现有的网格服务功能单一,具有专一性,如何利用多种网格服务实现复杂应 用要求及开放网格环境下的服务组合应用的要求曰益强烈。目前,作为成熟的多 服务组合应用方式之一的工作流系统主要针对封闭环境,存在着诸多局限性。如 果将工作流系统直接用于开放环境,则会引来各种管理问题。 针对开放网格环境的动态性和开放性,需要由动态工作流来满足应用需求和 适应服务的新特征。本论文以动态工作流为研究对象,在以下几个方面进行了系 统的研究,取得了一定的研究成果:( 1 ) 深入分析了产生式系统和p e 缸- i 网技术 的基础上,对动态工作流进行了形式化描述。利用产生式系统形式化描述动态工 作流的逻辑性质,利用p e 衄网技术形式化描述动态工作流的动态性质,并针对 工作流在动态变换过程中可能出现冲突的问题,提出了解决方法;( 2 ) 动态工作 流中的每一个工作流节点的功能通常需要经由一个服务调用链来实现。服务调用 链所涉及的服务分布在网格环境中,并且服务调用链只能在工作流运行过程中动 态地加以构造。针对服务调用链中可能存在的调用冲突问题,本论文提出了服务 调用冲突发现算法,并对该算法进行了优化;( 3 ) 在g t 3 环境下,设计和实现 了简单的动态工作流和服务调用冲突发现算法,阐述了在网格环境下的动态工作 流的具体实现方法。 本论文研究工作受到江苏省高校高新技术发展项目( 项目编号:j h 0 2 0 7 4 ) 的资助。 关键词:网格;工作流;产生式系统;p e 一网;服务调用冲突发现 东南大学硕士学位毕业论文开放网格服务环境下动态工作流的研究与实现 a b s tr a c t w i t ht h ed e v e l o p m e n to f i n t e m e ta n dc o m p u t e rs c i e n c ea n dt e c h n o l o g y , o p e n g r i ds e r v i c e sa r c h i t e c t u r ei sd e v e l o p e df a s t m o r ea n dm o r ea p p l i c a t i o n sr e q u i r e u s i n gr e s o u r c e sa n ds e r v i c e su n d e ro g s ac o m p r e h e n s i v e l ya n da u t o m a t i c a l l y h o w t oa c h i e v et h i sg o a li sa ni m p o r t a n ta s p e c to f r e s e a r c hi ng r i dt e c h n i q u e s n l es e r v i c e si ng r i db l - eu s u a l l ys i m p l e 。f a ra w a yf r o ma p p l i c a t i o n s r e q u i r e m e n t s , w o r k f l o wi so n eo ft h em a t u r ew a y st oc o m b i n es e r v i c e s b u ti ti su s u a l l yc o n f i n e d i t s e l f t oc l o s es y s t e m s w h a t sm o r e i th a ss e v e r a ll i m i t a t i o n s t h e r ew i l lb ew o r k f l o w m a n a g e m e n tp r o b l e m si f i ti sa p p l i e dt oo p e ns y s t e m sd i r e c t l y a sr e s p e c tt ot h ed y n a m i cf e a t u r ea n do p e n n e s so fg r i d _ e n v i r o n m e n t ,d y n a m i c w o r k f l o wi sa g o o dw a y t ob o t hs a r i s f ya p p l i c a t i o n s r e q u i r e m e n ta n da d a p tt os e r v i c e p r o p e r t i e s t h et h e s i sf o c t l s e so bd y n a m i cw o r k f l o w r e s e a r c hw o r kc o v e r st h r e e a s p e c t sa n ds o m er e s u l t s a r es h o w na si tf o l l o w s :( 1 ) w i mf u r t h e ra n a l y s i so f p r o d u c t i o ns y s t e ma n dp e t r in e t ,d y n a m i cw o r k f l o wi sf o r m a l l yd e s c r i b e d p r o d u c t i o n s y s t e mi su s e dt op r e s e n tl o g i c a lf e a t u r e so fd y n a m i cw o r k f l o w , w h i l ep e t r in e ti s u s e dt od e s c r i b ed y n a m i cf e a t u r e so fd y n a m i cw o r k f l o w d h et op o t e n t i a lc o n f l i c t si n w o r k f l o wm o d i f i c a t i o n ,t h et h e s i s p r o p o s e sw a y s t os o l v et h ep r o b l e m ( 2 ) f u n c t i o n a l i t i e si ne a c hn o d ei nd y n a m i cw o r k f l o wa r eu s u a l l y 铷f i l l e db yn e s t e d s e r v i c ec a l l s s e r v i c e sc o n c e r n e da r ed i s t r i b u t e di ng r i de n v i r o n m e n ta n dn e s t e d s e r v i c ec a l li sc o n s t r u c t e dd y n a m i c a l l yi nw o r k f l o wr u n t i m e i no r d e rt os o l v e p o t e n t i a lc o n f l i c t si nn e s t e ds e r v i c ec a l l ,an e s t e dc a l lc o n f l i c td i s e o v e r ya l g o r i t h mi s p u tf o r w a r d f u r t h e r , t h ea l g o r i t h mi so p t i m i z e d ( 3 ) hg t 3p l a t f o r m ,as i m p l e d y n a m i cw o r k f l o wi sd e v e l o p e da n dt h en e s t e dc a l lc o n f l i c td i s c o v e r ya l g o r i t h mi s i m p l e m e n t e d ,t o o s t e p s t od e v e l o pd y n a m i cw o r k f l o wa r em a n i f e s t e di nd e t a i l 髓et h e s i sr e s e a r c hw o r ki ss u p p o r t e db yh i - r e c hp r o j e c tf o ru n i v e r s i t i e si n j i a n g s u ( g r a n tn o :j i - 1 0 2 0 7 4 ) k e y w o r d s :g r i d ;w o r k f l o w ;p r o d u c t i o ns y s t e m ;p e t r in e t ;n e s t e dc a l l c o n f l i c t d i s c o v e r y 2 - 东南大学硕士学位毕业论文开放网格服务环境下动态工作流的研究与实现 表图一栏表 图1 - 1 b p e l 4 w s 流程与其他协议和规范的关系图 8 图2 1 一般工作流节点形式化图 1 5 图2 2 终节点的服务流节点描述图 1 6 图2 3 中间服务流节点描述图 1 6 图2 4 对无依赖服务调用的描述图1 7 图2 - 5 对有依赖服务调用的描述图 1 7 图2 6 调用路径不可用描述图 1 7 图2 7 单点变化的动态工作流的描述2 0 图2 8 并发多点变化的动态工作流描述图2 0 图2 9 合并并发多点变化后的动态工作流描述凰 2 l 图2 1 0 多点顺序变化的顺序动态工作流描述图 2 2 图2 1 1 合并多点变化后的动态工作流描述图 2 2 图3 1 u d d i 的技术发现层和商业发现层上的集成的或专用的搜索机制之间的关系2 3 图3 - 2 层次信息与关键的x m l 元素名被用于描述与发现w e b 服务的相关信息 2 4 图3 - 3 服务调用路径循环问题用例图 z 4 图3 - 4 嵌套调用冲突发现算法流程图 2 6 图4 1 g t 3 服务器端框架图 3 2 图4 2 g t 3 客户机端框架图 3 3 图4 - 3 g t 3 服务调用流程描述图 3 3 图4 4定义服务的过程图3 5 图4 5 工作流节点模型图 3 6 图4 6 工作流节点接口定义u m l 图 3 6 图4 - 7 支持工作流的服务的接口定义u m l 图 3 7 图4 - 8 工作流定义界面图 3 8 图4 9 工作流节点定义界面图 3 8 图4 1 0工作流节点间依赖关系定义界面图3 8 图4 1 1控制工作流节点运行流程图3 9 图4 1 2测试用结构流程例图 4 0 表4 - 1测试结果4 l 表4 - 2编号1 2 测试输出+4 2 图4 - 1 3 存在的有效循环工作流定义图 4 3 图4 1 4 循环合并后的工作流定义图 4 3 图5 1 语义w e b 的体系结构图 4 5 表5 1语义w e b 的体系结构描述 4 5 图5 - 2o w l 的体系结构图 4 6 表5 2 o w l 的体系结构描述 4 7 - 5 - 东南大学硕士学位毕业论文开放网格服务环境下动态工作流的研究与实现 第一章绪论 1 1 工作流研究工作和发展现状 1 1 1 工作流的定义 由两个或两个以上的人,为了共同的目标,连续地以串行或并行的方式去完成某一业务 的过程称为工作流。所谓业务,涵盖了与经营相关的活动。业务中的步骤如果是按照一步接 一步的方式进行,为串行方式;如果由不同的人或组合根据不同的情况处理,为并行方式。 顾名思义。工作流是由两个或两个以上的人合作完成业务的过程,一个人处理的业务不构成 工作流,只有任务从一个人”流”向另一个人的时候,才有工作流。当然,多人的合作必须有 共同的目标,个体参与工作流必须是为了同一个工作目标。如果个体处于两个相互独立的项 目之中,不会产生工作流。 在工作流自动化出现以前,所有的工作流都是通过手工实现。例如某项任务要求参与 者批阅文档或表格组成的文件。完成批阅及填写完表格中的相关内容后,文件被人工地传到 下一步的执行者。对完成文件传递的人员还需要进行专门的业务培训,否则文件就可能得不 到正确的处理。对任务执行情况的监控得要四处打听,没有简单的方法去了解任务是否拖延 或文件是否丢失。手工工作流的处理方法存在如下的问题:( 1 ) 高度依赖纸张;( 2 ) 劳动 强度大;( 3 ) 流程不严密,任务执行不易贯彻:( 4 ) 无法对流程的过程进行监控;( 5 ) 无法 度量进程时间和统计进程的成本。 工作流自动化的目标是解决手工工作流存在的问题,最大限度地提高效率。本论文以工 作流自动化为研究对象,解决动态工作流过程中所遇到的具体技术问题。如果不特别注明 本论文中的工作流指自动化的工作流。而不是手工工作流。 1 1 2 工作流管理联盟的工作流的参考模型 工作流管理联盟w f m c ( w o r k f l o wm a n a g e m e n tc o a i i 廿o n ) 是工作流技术的标准化组织, 成立于1 9 9 3 年8 月。该组织相继制定了一系列关于工作流技术的工业标准。 w m 妃组织定义的工作流通常包括以下三要素【i j : ( 1 ) 描述商业过程的常用字汇表;为描述工作流程打下基础,它可用于支持来自不同领域 的商业过程。 ( 2 ) 部件问的相互作用;必要的功能描述和各部件间的相互作用描述。事实上,部件问的 相互作用是工作流管理系统的关键。 ( 3 ) 接口定义:在不同的关键软件组成之间的接口的功能定义,用于在不同的主要软件成 份之间来实现数据交换。 w f m c 组织颁布了五个标准接口,它们是: ( 1 ) 接口1 :支持b p r ( b u s i n e s sp r o c e s sr e e n g i n e e f i n g 业务流程重组) 工具定义进程之间的 数据交换、工作流程和进程容器,允许使用者为不同特点的商业进程选择最适当的工具。它 - 6 一 东南大学硕士学位毕业论文 开放网格服务环境下动态工作流的研究与实现 被指定为一个进程定义元模型,用于定义进程对象、属性、关系和文法从而表达进程的结 构和信息内容。 该接口后来发展为可扩展标示语言文件定义x p d l 。 ( 2 ) 接口2 :用于促进客户在不同工作流系统的综合应用。它被指定为工作流应用编程接 口系列之一,允许控制和激活服务器的各项功能。 ( 3 ) 接口3 :有限制地提供一个通用架构给第三方,用来整合其他的申请和服务,包括代 理接口支持提供通常的控制架构。它通过五个基本应用编程接口调用加以实现。 ( 4 ) 接口4 :用于促进进程自动穿越异构应用环境。它包含的交换协议包括五个基本操作。 目前的版本可用可扩展标示语言( w f x m l ) 表示。目前正在进行关于制定基于s o a p 协议的 w f x 札2 版的制定工作。 ( 5 ) 接口5 :通过采用通常模式审核数据规范,允许对流经系统的工作流程进行一致性审 核,包括对事件戳记录、格式和记录的审核。最初通过一系列应用编程接口来完成数据审核, 最近的工作目标是通过x m l 描述来审核数据结构。 1 1 3 实现工作流的主要技术 构件组装1 2 - 5 是实现工作流的主要技术之一。构件组装技术的研究可追溯到2 0 世纪7 0 年代的模块互联语言0 m i l ) 、2 0 世纪8 0 年代的构件描述语言( c d l ) 和2 0 世纪9 0 年代的体系 结构描述语言( a d l ) 。按照n i e r s t r a s z 和d a m i 的定义【4 】,软件合成构件是通过它们的软件插 口连接起来构造应用的过程,其中软件插口是用于构件相互作用和通信的方法。m a r ys h a w t 5 j 定义软件合成构件是通过它们界面的相互通信。总之,构件组装是用从属于某个问题领域的 构件系统地构造应用软件的过程,关心的问题是怎样把若干个构件组装在一起,以实现所希 望的功能。 基于合成的复用理论认为复用是软件构件的组合过程,系统行为是构件组台的结果。构 件组装可以看作是用构件实例将软件构架具体化的过程,成功的组装必须以开放构件模型和 规范的构架描述为基础。 通常有两种软件组装方式:一种是静态组装,组装发生在软件开发阶段,更多地讨论类 型的一致性,通常易于预测和完成:另一种是动态组装,组装发生在运行阶段,它所关心的 问题是构件在运行时的合作方式以及在指定的时间段构件怎样控制操作。动态组装包含有大 量的、通过构件静态接口不可见的体系结构细节。 构件组装的优点在于在对问题域做详细周密的分析的基础上,将软件系统划分为若干相 对稳定的构件,再通过不同构件间的不同组合以满足不同用户的需求。这种规范化的软件开 发方法能够避免传统软件开发过程中的大量的重复劳动,在很大程度上提高了软件的生产 率。同时由于大量地使用成熟的可复用构件,使得系统的稳定性和可靠性得到很大的提高, 使软件产品在较短的时问内就趋于成熟。 构件组装也存在其固有的局限性,主要表现在一方面各个组装构件间的界面要求较严 格,使得具有相似界面的构件不能相互替换,降低了构件的复用性;另一方面,目前基于组 装方式的分析还较为固化,使得组装而成的系统的变化域不太。 1 2w e b 服务的业务流程执行语言规范 除了工作流管理联盟对工作流进行定义和规范外还有其他公司的定义,包括w e b 服 了 东南大学硕士学位毕业论文开放网格服务环境下动态工作流的研究与实现 务的业务流程执行语言规范( b p e l 4 w s ) 1 6 1 等。i b m 公司的w s f l ( w e bs e r v i c e sf l o w l a n g u a g e ) 规范与微软的x l a n g 规范的概念的融合于2 0 0 2 年8 月两家公司共同推出了 新的规范b p e i a w s ,b p e l 4 w s 流程模型位于由w s d l1 1 所定义的服务模型之上。 b p e l 4 w s 流程模型核心是由w s d l 描述的服务间的对等交互。业务流程定义了怎样协调 流程实例与它的伙伴间的交互,流程及其伙伴关系被建模成w s d l 服务。b p e l 4 w s 定义 提供了通过一个或多个w s d l 的服务接口描述,实现对流程实例与它的伙伴之间交互的描 述。定义业务协议和定义可执行业务流程所需的概念非常相似。 b p e l 4 w s 所定义的模型和语法用于描述基于流程的伙伴间交互的业务流程行为。每个 伙伴的交互通过w e b 服务接口进行。b p e l 4 w s 流程定义了与这些伙伴交互的多个服务交互 是如何协调以达到业务目的,还定义了这种协调所需的状态和逻辑。b p e l a w s 引入了一些 系统的机制来处理业务异常和流程处理故障。另外,b p e l 4 w s 引入了一种机制,以用于定 义在发生异常时或伙伴请求撤销时,如何补偿流程中单个或合成活动。 b p e l 4 w s 的应用方式有两种。一种是通过使用抽象流程概念,即b p e l 4 w s 流程定义 业务协议角色。抽象流程使用所有的b p e l 4 w s 概念,但它对待数据处理的方式反映了描 述业务协议公共部分所需的抽象程度。具体地说,抽象流程仅处理有关协议的数据。 b p e l 4 w s 提供了把有关协议的数据识别为消息属性的方式。另外,抽象流程使用不确定的 数值来隐藏行为的私有部分。 另一种方式是利用b p e l 4 w s 来定义可执行业务流程。流程的逻辑和状态决定了在每个 业务伙伴处进行的w e b 服务交互的性质和顺序,从而决定了交互协议。虽然从私有实现的 角度来看并不需要完整地定义b p e l 4 w s 流程,但是b p e l 4 w s 为仅依赖于w e b 服务资源 和x m l 数据的业务流程有效地定义了可移植的执行格式。此外,这种流程的执行以及与它 们的伙伴交互的方式是一致的,与托管环境的实现所用的支持平台或编程模型无关。 b p e l 4 w s 流程与其他协议和规范的关系如图1 1 所示: 图1 1 :b p e l 4 w s 流程与其他协议和规范的关系图 目前,支持b p e l 4 w s 系统有c o l l a x a 公司的b p e lo r c h e s t r a t i o ns e r v e r 2 0 ,i b m 公司 的b p w s 4 j ,微软公司的j u p i t e r ( 木星) ,b i z t a l k 服务器,e c l i p s e 公司的b p w se d i t o r ,o p e n s t o r m 公司的c h o r e o s e r v e r v e r s i o n1 们等等,它们都实现了结构化和图形化服务流。但这些系统 还存在着有待改善的环节,例如所直接支持的交互模型仅仅是同步或不相关的非同步交互的 东南大学硕士学位毕业论文开放网格服务环境下动态工作流的研究与实现 无状态模型;在实现过程中,必须预先已知所有被调用服务的实现和运行机制,以检验服务 有正确性和有效性:尚不支持o g s i 等等。 b p e l 4 w s 描述了服务之间的交互,如果把工作流节点看成一个服务,则工作流可以看 成一组服务之间的交互,这样工作流和业务流在很大程度有很强的相似性和互通性。可以利 用b p e l 4 w s 的思想来看待工作流,使得工作流的应用有更加广泛应用前景。 1 3 网格计算中的工作流服务 计算机硬件技术的迅速发展使得有效利用太范围内分布的资源来完成以往无法完成的 应用成为可能,网格技术就是在这样的条件下在2 0 世纪9 0 年代产生的。现在,网格技术已 经跨越了最初的原型研究阶段,正在进入实际应用。从最终用户的角度看来,网格在使用上 将类似电力网一样可靠易用。网格希望给最终用户提供与地理位置无关、与具体的计算设麓 无关的计算能力,晟终用户可以将网格看作一台单一的自主管理的强大的虚拟计算机。从技 术的角度来看,网格计算是分布式计算的一个新的阶段,网格需要解决的主要问题是在动态 的、异构的虚拟组织中如何控制和协调对资源的共享f l 。网格具有分布、异构、动态和自主 等特性,它不仅仅强调资源的互连互通,还非常强调资源的互操作能力,以支持虚拟组织基 础上的协同工作。网格技术现在已经发展到了“第三代,i ,这一代网格采用面向服务的方 法,具有自主计算的特性,提出了o g s a ( o p e n g r i ds e r v i c e s a r c h i t e c t u r e ) 体系结构。 由当前的商业气候和经济环境所推动,企业正逐渐采用网格计算技术。在当今市场环境 下,每一家公司要想生存和发展都必须能够应对客户和市场需求的变化,意味着它们必须构 建足够强壮、灵活、可伸缩的计算基础架构来应对快速增长的网络计算需求。它们需要快速 部署新的业务处理系统,使客户能够快速访问所需资源,同时维护系统的安全性。而且,这 些资源之间不仅仅独立存在,还可以协同工作来支持更多的应用、实现更复杂的功能。最理 想的情况是i t 机构能够相对便宜地提供这一切,如有可能,还要挖掘现有资源,同时在可 随业务增长而扩展的计算技术方面做出具有成本效益的新投资。除了业务需求的推动,技术 的日渐成熟也使得网格走进企业应用成为可能。对于商业应用而言,标准的制订是其成功关 键,就像t c p i p 协议是互联网的核心一样,构建网格计算也需要对标准协议和服务进行定 义。目前,包括全球网格论坛g g f 、对象管理组织o m g 、致力于w e b 服务与语义w e b 研 究的w 3 c 1 9 1 等标准化团体都开始得到了很大发展,并且在迅速推动网格相关标准的制定。 另一方面,i b m 、m i c r o s o l t 、s u n 、h p 等世界级别的i t 大厂商都正在纷纷提供支持网格的 技术,大力推广各自的解决方案。所有这一切都促使企业认识到网格将成为下一步的企业应 用环境,并将更好的帮助他们能够最大限度的利用它们拥有的资源。 i a nf o s t e r 认为,网格体系结构是用来表示网格系统的基本组件,对这些组件的目标和 功能进行定义,以及说明组件间如何交互。初期以协议为中心,g g f 组织提出了五层沙 漏结构,由构造层、连接层、资源层、汇聚层和最上层的应用层组成。后来以服务为中心, 对网格进行了重新定义:网格( g r i d ) = 网格服务( g r i ds e r v i c e s ) ,引入了已经得到 迅猛发展的w e b 服务技术,提出了开放的网格体系结构o g s a 【i 。 o g s a 是一个基于标准的、松散耦合的、面向服务的架构。该体系结构构建在网格和 w e b 服务的概念和技术上,定义了一个统一的对外服务语义( 早期的网格服务,以及进化 到近期的w e b 服务资源) ;定义了创建、命名和发现服务实例的标准机制;提供服务实例的 定位透明性和多协议绑定;支持与本地平台设施的整合;定义了创建和组合复杂分布式系统 所需的一系列机制等等。 在o g s a 中定义的核心服务构成了开放网格服务基础框架o g s i ( o p e ng r i ds e r v i c e s 9 - 东南大学硕士学位毕业论文开放网格服务环境下动态工作流的研究与实现 i n f r a s t r u c t u r e ) 。o g s i 在w e b 领域 发了大量讨论,结论是o g s i 需要进行很多的重构和改 写工作。首先,为了使其更容易理解,要对规范进行重构,将规范分解到其中的组件上;任 何新的工作都必须和已有的w e b 服务部署与x m l 工具更好地结台:由于w e b 服务并不是 必须需要状态因素,因此必须存在服务识别与状态资源的解耦( 解除服务与状态的相关性) ; 不同实现之间状态信息的审查、发现和互操作必须更加容易。 o g s a 经过前期的深入实验,对早期提出的o g s a 平台进行了不断的重组和进化,在 近期最终采纳了获得广泛支持的w e b 服务社区中w 3 c 组织的w e b 服务资源框架w s r f ( w s - r e s o u r e ef r a m e w o r k ) ,并已提交结构化信息标准推动组织o a s i s 。w s r f 规范认为用 户应该有能力去访问和操作w e b 服务的状态( 一些可持续访问的数据值) 。这个需求需要定 义一些关于管理服务资源状态的合约,以便应用可以通过标准和可互操作的方式来对有状态 的资源进行发现、检查和交互。w s r f 包括了三个子规范,这三个规范定义了w e b 服务如 何通过w s - r e s o u r c e 维护状态信息,把网格和w e b 服务的统一作为目标。可以预见,网格 和w e b 服务的联系将愈加紧密,最终两种技术的研究将趋向互相的融合。 g l o b u s g t 3 是o g s i 软件模型的参考实现,它说明了o g s i 和w e b 服务体系结构的 开放标准互操作性 1 l l 。到目前为止,最新的g l o b u s 软件版本是3 0 2 版本。在g i o b u s 软 件尚有未解决的问题,例如g l o b u s 软件利用w s d l 对服务进行描述。由于w s d l 的局限 性,不能对服务豹依赖关系及其服务语义进行描述:在实际应用中,允许服务之间的相互调 用依赖,造成对服务的应用组合( 动态工作流) 带来一定的困难等等。 1 4 应用需求分析 企业已经大量地采用了信息技术来帮助他们自动化地处理业务,以在获得更快的业务执 行速度和更高的生产效率的同时,大幅降低成本。每一个信息系统都提供了具有特定业务价 值的分散的功能。然而,要想使得公司内部系统、外部的其他联盟企业系统以及客户系统能 够使用它们的功能,这些分散的系统就必须能够集成。信息集成存在着四个不同的层面:企 业内,系统内;企业内,系统闻:联盟内,企业问;联盟间,企业间i j “。企业需要有合适 的技术来做到在适应现实分稚异构的应用环境的同时,降低成本和提高可用性,在不同的层 面需要不同的体系、不同的技术和不同的标准。 以制造业为例,“网络化制造”是根据当前国际制造业发展趋势和我国基本国情,吸收 了敏捷制造的思想和哲理,创新地提出来的我国制造业发展的战略模式,是我国继c i m s 和 并行工程之后提出的具有中国特色的先进制造技术。它对我国传统制造业在网络经济时代实 现经营管理理念转变,技术创新和产业升级,提高制造企业竞争力,发挥区域性行业经济的 整体优势和整体竞争力方面,具有重要的作用。这是用高新技术改造传统产业,用信息化带 动工业化的需要;是加强国际合作、参与国际竞争的需求;是增强我国经济竞争力的需要。 当今形势要求制造业的生产经营战略应面向更广的市场,快速灵活地组织和利用各种分 布的、异构的制造资源,谋求企业内间的各种合作,快速响应市场机遇,在激烈的市场竞 争中求得生存和发展。因此网络化制造的出发点之一就是通过促进不同企业的制造系统之间 的互操作。加强企业阅相互交流和合作,共同发展,共同发掘市场机遇,在激烈的市场竞争 中求得生存与发展。碍络化制造环境下的企业制造系统应具有以下特点:( 1 ) 分布性:大型 企业的区域特性决定了企业的系统、数据和信息必然是分布的,由个个“节点”组成,每个 节点可以独立自主地完成自己的任务:( 2 ) 互联性:节点闻的互联是增加和加快企业内,间 进行交互,提高整个企业效率的前提:( 3 ) 高灵活性:制造系统本身具有较高的可扩展和可 重组性,方便构建动态联盟,促进企业间的交互、协调与合作以共同完成某项任务。 这些特点决定了网络化制造环境下的系统不应该是一个封闭的系统,而应该有良好的开 - 】o - 东南大学硕士学位毕业论文开放网格服务环境下动态工作流的研究与实现 放性和可扩展性。系统内部的不同节点之间 某种手段进行协同工作,彼此交换相关信息 展的必然要求。 1 5 论文研究问题及解决方法概述 以及与外部的不同系统之间,都应该能够通过 提供相关服务,这是虚拟企业与联盟企业等发 鄹格环境下存在大量资源有待开发利用,它是一个开放的环境,是个标准、松散耦合、 面向服务的架构,通用性和互操作性很强,符合网络化制造环境下的企业制造系统发展要求。 当前的网络应用环境的缺点是由于应用模式的单一性和服务功能的单一性,网络资源得不到 很好的开发和应用。 工作流作为服务组合和服务应用的一种通用方式,它的思想被广泛地应用到各个应用领 域,但由于工作流的实现受到平台的限制,实现各不相同,导致各个平台之间的互通性差, 而且各个平台之间工作流的构件的互换性基本不能实现,只能实现跨平台工作流整体整合, 无法在构件级别上实现互换和动态组合,构件重用性在这个方面表现差强人意。动态工作流 在满足不断变化的应用需求方面,表现出较强的灵活性和适应性。 在分析网格服务特点的基础上,本论文利用工作流的规范和思想指导网格服务的构建, 充分发挥网格服务优势、充分利用网格服务资源,实现动态工作流的基本功能,使得动态工 作流能够应用于网格服务环境中,满足不断改变需求的应用系统的要求,快速构造新的应用 流程。 1 6 论文难点分析和论文主要贡献 ( 2 ) ( 2 ) ( 3 ) 本论文的研究难点包括 目前工作流主要应用在封闭环境下的,而构件组装作为主要的工作流手段。在封闭 环境下实现动态工作流已经十分成熟;而网络化制造系统要求在一个开放的可扩展 的环境下也能很好地协同工作。提供相关的服务,是虚拟企业与联盟企业等发展的 必要要求,而网格环境将聚集大量的网络资源,需要更好地利用和开放。如何利用 网格环境下的服务首先要解决如何描述网格环境下的服务,要对网格服务描述清楚, 说明服务的特点和特性,对应用网格服务有指导作用。 针对网格环境下的服务的开放性和动态性特点,如何利用网格环境下的服务实现动 态工作流是本论文重点研究的问题。 本论文的主要贡献包括: , 深入分析了产生式系统和p e t r i 网技术的基础上,对动态工作流进行了形式化描述。 利用产生式系统形式化描述动态工作流的逻辑性质,利用p e t r i 网技术形式化描述动 态工作流的动态性质,并针对工作流在动态变换过程中可能出现冲突的问题,提出 了解决方法; 动态工作流中的每一个工作流节点的功能通常需要经由一个服务调用链来实现。服 务调用链所涉及的服务分布在网格环境中,并且服务调用链只能在工作流运行过程 中动态地加以构造。针对服务调用链中可能存在的调用冲突问题,本论文提出了服 务调用冲突发现算法,并对该算法进行了优化; 在g t 3 环境下,设计和实现了简单的动态工作流和服务调用冲突发现算法,阐述了 东南大学硕士学位毕业论文开放网格服务环境下动态工作流的研究与实现 在网格环境下的动态工作流的具体实现方法。 通过对开放网格服务环境下动态工作流的研究,希望能够将动态工作流扩展到开放系统 中,充分利用开放环境中提供服务的优势,对网格服务作尽量小的改造,最大限度地利用网 格现有的资源。 1 7 论文的结构组成 本论文的构成如下:第二章对开放网格环境下动态工作流建模,并进行形式化描述;第 三章阐述服务调用冲突发生机制以及冲突发现算法设计;第四章说明在g t 3 环境下,简单 动态工作流和服务调用冲突发现算法的实现;第五章探讨对其模式进行改进,迸一步完善这 种应用模式。最后为论文的结束语和参考文献。 】2 东南大学硕士学位毕业论文 开放网格服务环境下动态工作流的研究与实现 第二章动态工作流的建模与形式化描述 为了深入研究开放网格环境下动态工作流,即工作流在运行过程中发生变化,首先需 要对它进行形式化描述。本章将利用产生式系统技术描述动态工作流的静态逻辑性质及其变 化,利用p e t r i 网技术描述动态工作流的动态性质,以及在工作流状态变化过程中发生冲突 时,解决冲突的方法。本章还将在形式化描述动态工作流的基础上,给出判定动态工作流性 质的方法以及方法正确性的证明。 2 1 工作流的形式化定义 工作流由许多工作流节点组成,通过工作流节点之间数据交互,使各节点之间相互关联 和作用,达到实现具体功能的目的。因此一个工作流由以下两部分组成: ( 1 ) 工作流节点:工作流节点是实现整个工作流功能的部分,它最基本的组成部分包括 数据输入接口,数据处理和数据输出接口三部分。 ( 2 ) 工作流节点间关系:工作流节点关系是控制工作流的重要手段,通过数据驱动,达 到控制工作流的目的,得到所需的结果。它最基本的组成部分包括数据发起节点地 址、数据接收节点地址和数据格式( 接口) 三部分组成。 需要说明的是工作流节点和工作流节点关系中各个要素必须要匹配起来,否则数据无法 实现传递。 由于图示方式的直观性,通常用图形方式来描述工作流的构成,但由于其描述功能的有 限, 虽然直观,但有许多信息无法得到体现。通常采用多种方式描述来补充具体信息。 2 2 基于产生式的工作流描述 本节从产生式的构成和特点两个方面进行分析,利用产生式对工作流进行描述。 2 2 1 产生式与工作流构成比较 产生式系统由以下部分组成l l w : ( 1 ) 一组规则:即产生式本身。当匹配规则成功时,执行规则右部规定的动作。这种动作 一般是对数据基中的数据作某种处理。 ( 2 ) 数据基:每个产生式系统均有一个数据基,其中存放的数据既是构成产生式的基本元 素,又是产生式作用的对象。 需要指出的是数据基不同于数据库。数据基中的数据是广义的数据,可以是常量、变量、 多元组、谓词、表结构、图像等等。其意义往往指一个事实或断言,可看成一个知识元。 ( 3 ) 一个解释程序:它负责整个产生式系统的运行,包括规则左部和数据基的匹配、从匹 东南大学硕士学位毕业论文 开放网格服务环境下动态工作流的研究与实现 配成功的规则( 可能不止一个) 中选出一个加以执行、解释执行规则右部的动作,并掌握时 机结束产生式系统的运行等等。解释程序中的每一步均可有不同的含义一 根据在上节中对工作流的定义可知,通常一个工作流可以分解为三个部分组成:( 1 ) 流 规则:当调用某个服务时,执行服务规定的某种的动作。这种动作一般是对数据基中的数据 作某种处理。( 2 ) 流接口:每个服务均有一个服务接1 2 1 ,其中定义的数据既是构成服务的基 本元素又是服务作用的对象。( 3 ) 一个工作流节点对应一个特定服务程序:特定服务程序 负责这个服务的运行,执行、解释服务的动作,并掌握时机结束服务的运行等等。 2 2 2 特点分析 产生式系统的特点是: ( 1 ) 相对固定的格式 任何产生式均由l h s 和r h s 组成:左部匹配,右部动作。匹配提供的信息只有两种: 成功或失败。匹配过程中不允许产生副作用。规则匹配失败时,对数据基无影响。 匹配一般无递归,无复杂的计算。右部的动作一般是最基本的动作,没有复杂的控制。 ( 2 ) 知识的模块化 在每个具体的产生式系统所适用的专门领域知识被分成许多知识元,存于数据基中。而 每个规则指明了有关知识元之间的关系及其使用方法。 规则本身也可看成是知识元,这种知识元不同于通常数据基中存放的知识元,因为它是 指示如何使用数据基中存放的知识元,因此,也称为元知识,即关于知识的知识。由此可见, 元知识也是模块化的。 ( 3 ) 相互影响的间接性 产生式系统一般是“数据驱动”,看不见控制流。一个产生式的调用对其它产生式的影响 不是直接传送过去,而是通过修改数据基来间接实现( 当其它产生式的左部与数据基匹配时, 发现数据基内容已变,从而,各产生式执行效果也就跟着发生变化) , ( 4 ) 机器可读性 产生式系统包括机器识别产生式、语法检查和某种程度上的语义检查。语法检查包括无 矛盾性检验和冗余检查。语义检查涉及知识的具体领域,如通常数据库中的一致性检验。 可读性的另一含义是对产生式作出解释,是对产生式系统为解决某一问题所给答案的解 释,即,对推理过程作出解释。 而工作流的特点是: ( 1 ) 相对固定的格式 工作流节点一旦发布,其接口是不能改变的,对服务的调用也是固定的。服务一旦发布, 其功能也是确定的,不易改变。 ( 2 ) 节点的模块化 每个已经存在的节点都是独特的,针对某个特定服务对象提供特定服务的。 ( 3 ) 相互影响的间接性 工作流一般是“数据驱动”。一个工作流节点的调用对其它节点的影响不是直接传送过 去,而是通过调用节点的接口来间接实现。 东南大学硕士学位毕业论文开放网格服务环境下动态工作流的研究与实现 2 2 3 用产生式描述工作流 通过以上分析可知,产生式和工作流两个概念上存在着很强的可对比性,利用产生式对 工作流进行描述是可行的方案。 考察一个简单的工作流的中间节点,假设该节点的输入接口为i n t e r f a c ei n ,输入数据为 d a t a ( i n t e r f a c i j n ) ,输出接口为i n t e r f a c e _ o u t ,输出数据为d a t a ( i n t e r f a c eo u t ) ,节点功能为 a c t i o n ,对于一个工作流节点可以用图形作如下描述,如图2 1 所示: 图2 - 1 :一般工作流节点形式化图 用产生式对以上工作流节点可以描述如下: d a t a ( i n t e r f a c e _ i n ) i n t e r f a c e _ i n ,a c t i o n ,i n t e r f a c e _ o u t - d a t a ( i n t e r f a c e _ o u t ) 而节点之间的关系通过产生式的匹配来描述。 对于产生式的知识元,对应于工作流服务系统的一个服务,工作流服务系统的推理方向 为向前推动( 又称为数据驱动) ,通过服务之间的相互调用传递数据来确定驱动方向。 如果所有的工作流节点定义正确,且没有歧义,工作流服务系统的服务调用确定,且没 有二义性,则可以把工作流服务系统称为一个公理系统。根据所给出工作流的定义,只要这 个工作流的定义正确,就一定能够得到正确的结果。 2 3 基于p e t r i 网的工作流描述 工作流也能用p e 研网 1 卅来描述,本节给出用p e t r i 网作为工作流描述工具的方法。工 作流包括工作流节点和节点之间的关系。工作流中的节点可以分为两类,一类是中间节点, 即带有扇出弧的节点;另一类是终结点,即不带有扇出弧的节点。下面分别对这两类节点进 行描述。 2 3 i 作为终节点的服务流节点的描述 作为终节点的服务流节点的特点是节点的状态不影响到其它节点或整个工作流的状态 变化。因此,可以把一个终节点的服务流节点定义为一个库所s 。这个库所表示这个节点完 结的最终状态。由于该节点状态不影响其他节点,因此把

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论