




已阅读5页,还剩53页未读, 继续免费阅读
(产业经济学专业论文)基于BPEL的工作流管理技术研究及应用.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 工作流技术是实现企业业务过程建模、仿真分析、优化和业务过程管理与集 成,从而最终实现业务过程自动化的核心技术。随着市场竞争的全球化,企业必 须能够对其业务过程进行快速重组,以提高自身竞争力。但是现在的工作流技术 在业务过程涉及不同企业间的协作时,存在着互操作方面的诸多缺陷。 w 曲服务良好的可重用性和互操作性很好地解决了这个问题,然而传统的工 作流技术并不支持w e b 服务。本文主要从工作流模型和工作流定义语言的角度探 讨如何将传统工作流技术改进成为支持w 曲服务的新型工作流技术。 首先,本文从语言结构、功能、发展前景等角度分析比较了众多的工作流定 义语言。b p e l 由于其自身对于w 曲服务的良好支持、互操作性强并且具有明朗的 发展前景,适合用于当前愈来愈复杂多变的企业流程的建模,必将给工作流技术 的发展带来新的契机。 在应用方面,本文设计了基于b p e l 的工作流管理系统体系结构,能够发挥 b p e l 支持w e b 服务、重用性强的特点,并且充分考虑到了与外部w e b 服务交互 以及w s d l 标准接口封装的问题。对b p e l 在工作流系统的核心工作流引擎 中的应用进行研究,着重分析了目前典型的支持b p e l 的工作流引擎在该方向上 的发展情况。最后本文使用o r a c l eb p e l 业务管理器设计了一个财务报销审批流 程,并在b p e lp ms e r v e r 和o r a c l ec o n s o l e 上完成了编译、部署和测试工作。 关键词:b p e l ,2 1 1 作流,工作流管理系统,w s b p e l 2 0 a b s t r a c t i no r d e rt or e a l i z eb u s i n e s sp r o c e s sa u t o m a t i o n ,w o r k f l o wt e c h n o l o g yi su s e da sa k e yt e c h n o l o g yi nb u s i n e s sp r o c e s sm o d e l i n g ,s i m u l a t i o n ,o p t i m i z a t i o n ,m a n a g e m e n t a n di n t e g r a t i o n t h er e s e a r c ha n da p p l i c a t i o no fw o r k f l o wt e c h n o l o g yh a v eag r e a ts i g n i f i c a n c et o e n t e r p r i s e s w i t ht h ei n c r e a s i n gg l o b a l i z a t i o no fm a r k e tc o m p e t i t i o n ,e n t e r p r i s e sm u s t b ea b l et or e f o r mt h e i rb u s i n e s sp r o c e s s e sq u i c k l y , s ot h e i rw o r k f l o wh a sr e c e i v e dw i d e a t t e l l t i o na n ds t u d y h o w e v e r , t h e r ea r em a n yd r a w b a c k sa b o u ti n t e r o p e r a t i o ni nt h e e l a b o r a t i o n sa m o n gh e t e r o g e n e o u se n t e r p r i s e s t h ee m e r g e n c ea n dd e v e l o p m e n to fw e bs e r v i c e ss o l v e st h e s ed r a w b a c k s ,w h i c h h a sg r e a tr e u s a b i l i t ya n di n t e r o p e r a b i l i t y w e bs e r v i c ei san e wp l a t f o r mo nw h i c ha n i n t e r - o p e r a t i n gd i s t r i b u t e da p p l i c a t i o ns y s t e mc a nb ed e v e l o p e d b u tt h et r a d i t i o n a l w o r k f l o wt e c h n o l o g yd o e sn o ts u p p o r tt h ew e bs e r v i c e s t h ew o r k f l o wt e c h n o l o g yo f b p e lb a s e do nt h ew e bs e r v i c e sc a nm a k e u pt h ed e f i c i e n c yo ft h ec u r r e n tw o r k f l o w t e c h n o l o g y t h i st h e s i sf i r s ta n a l y z e sw h yw s b p e li ss u i t a b l ef o rw o r k f l o wt e c h n o l o g y , w h i c hi sc o m p a r e dw i t ho t h e rp r o c e s sm o d e l i n gl a n g u a g e s t h e nt h ea u t h o rb r i n g s f o n v a r dab p e l b a s e df r a m e w o r ko fw o r k f l o wm a n a g e m e n ts y s t e m s b e s i d e s ,a st h e c r i t i c a lc o m p o n e n to fw f m s ,t h ep e r f o r m a n c eo fw o r k f l o we n g i n e e rw h i c hs u p p o r t b p e li sa l s oap a r to ft h i sa r t i c l e a tl a s t ,ab u s i n e s sp r o c e s si sd e s i g n e d ,d e p l o y e da n d t e s t e di no r a c l eb p e lp r o c e s sm a n a g e r k e y w o r d s :b p e l ,w o r k f l o w , w f m s ,w s - b p e l 2 0 b p e l b p e l 4 w s b p m l b p m n o a s i s b p e lp r o c e s sm a n a g e r u d d l w e bs e r v i c e s w f m c w f m s w p d l w s b p e l w s d l x m l x p d l 缩略语 b u s i n e s sp r o c e s se x e c u t i o nl a n g u a g e b u s i n e s sp r o c e s se x e c u t i o nl a n g u a g ef o rw e bs e r v i c e s b u s i n e s sp r o c e s sm a n a g e m e n tl a n g u a g e b u s i n e s sp r o c e s sm o d e l i n gn o t a t i o n o r g a n i z a t i o nf o rt h ea d v a n c e m e n to f s t r u c t u r e d i n f o r m a t i o ns t a n d a r d 结构化信息标准促进组织 b p e l 流程管理器 u n i v e r s a ld e s c r i p t i o n ,d i s c o v e r y , a n di n t e g r a t i o n w e b 服务 w o r k f l o wm a n a g e m e n tc o a l i t i o n 工作流管理联盟 w o r k f l o wm a n a g e m e n ts y s t e m 工作流管理系统 w o r k f l o wp r o c e s sd e f i n i t i o nl a n g u a g e w 曲s e r v i c eb u m n e s sp r o c e s se x e c u t i o nl a n g u a g e 蹄的s e r v i c e sd e s c r i p t i o nl a n g u a g e e x t e n s i b l em a r k u pl a n g u a g e x m lp r o c e s sd e f i n i l t i o nl a n g u a g e 2 学位论文原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导下, 独立进行研究工作所取得的成果。除文中已经注明引用的内容 外,本论文不含任何其他个人或集体已经发表或撰写过的作品成 果。对本文所涉及的研究工作做出重要贡献的个人和集体,均已 在文中以明确方式标明。本人完全意识到本声明的法律责任由本 人承担。 特此声明 学位论文作者虢枸彩 叫年多月多日 学位论文版权使用授权书 本人完全了解对外经济贸易大学关于收集、保存、使用学位 论文的规定,同意如下各项内容:按照学校要求提交学位论文的 印刷本和电子版本;学校有权保存学位论文的印刷本和电子版, 并采用影印、缩印、扫描、数字化或其它手段保存论文;学校有 权提供目录检索以及提供本学位论文全文或部分的阅览服务;学 校有权按照有关规定向国家有关部门或者机构送交论文;在以不 以赢利为目的的前提下,学校可以适当复制论文的部分或全部内 容用于学术活动。保密的学位论文在解密后遵守此规定。 学位论文作者签名: 导师签名: 栉勃 7 荔荔移 ,if 弓,、r、 月 月 上多 年 年 卅卅 第1 章引言 信息技术在企业中的应用越发深入,传统的工作流技术已经不能满足企业的 实际需求,于是工作流技术与w e b 服务的结合成为了近年来研究的热点。而如何 定义描述工作流,使其能够调用符合w e b 服务规范的服务,与交互用w e b 服务 接口标准统一起来,是两者结合的基础。 本章节将从研究背景、国内外研究现状两方面来阐述本文的研究意义,并介 绍本文的研究内容和章节安排。 1 1 研究背景 工作流技术的核心是将工作流程分解成定义良好的活动、角色、规则和过程 来进行执行和监控,然后根据预定义的规则将文档、信息在过程参与者中传递, 最终完成业务的处理。这项技术实现了业务的自动化处理,于是,很多原先必须 由人来完成的重复工作,可以由工作流全部或部分地自动执行,从而提高了工作 效率并降低了人力成本。基于上述优点,工作流技术作为信息技术应用的一个重 要分支,在电子政务、电子商务等基于流程处理的领域获得了广泛的应用。 随着经营业务的展开,企业物理位置逐渐分散,越来越多的业务过程需要跨 部门,甚至跨企业,需要各个参与方的协作才能完成;而业务过程涉及的多个协 作方或者多个应用的平台可能不尽相同;在处理复杂的业务过程时要进行大量的 计算,涉及到的多个应用之间的交互不可能是同步的。因此,企业又要求信息系 统将分布、异构、异步的业务过程无缝整合起来。传统的工作流管理系统产品和 原型系统的设计是面向普通的办公室应用,局限于企业内部应用的。缺乏柔性、 不能及时响应变化、相互之问缺乏互操作的缺点显然不能满足现代企业业务流程 管理的要求。传统的、面向本地应用的工作流技术迫切需要新的突破,以适应企 业实际需求的变化。 w e b 服务技术的努力目标是通过使用w e b 标准实现应用程序问的通用的互 操作性。w e b 服务是描述了一些操作的接口,该接口隐藏了实现服务的细节,并 且允许通过独立于服务实现、独立于硬件或软件平台、独立于编写服务所用的编 程语言的方式使用该服务,这使得基于w e b 服务的应用程序具备松散耦合、面向 组件和跨技术实现的特点1 。通过标准化的x m l 传递机制,用户可以通过接口进 行这些操作。以下基本规范最初定义了w e b 服务空问:s o a p 、w s d l ( w e bs e r v i c e s d e s c r i p t i o nl a n g u a g e ,w e b 服务描述语言) 和u d d i ( u n i v e r s a ld e s c r i p t i o n , d i s c o v e r y ,a n di n t e g r a t i o n ,统一描述、发现和集成) 。s o a p 为基本服务的互操 作性定义了x m l 消息传递协议。w s d l 采用了用于描述服务的公共语法。 u d d i 为系统地发布和发现服务提供了所需的基础结构。这些规范共同使应用程 序遵循一个松散耦合、与平台无关的模型来找到对方并进行交互。 将w e b 服务引入工作流技术,能够使业务系统间的互操作性和敏捷性等方面 有很大的改进,使服务的使用者之间以多种方式进行交互成为可能,使用户之1 问、 企业之间的交流和资源共享变得更为简单方便,可以解决上述的分布性、异构性、 异步性问题,使工作流技术得到进一步的发展。 1 2 研究现状 工作流技术从上世纪7 0 年代开始起步发展以来,取得了长足进步,它的体 系结构,运行模式和工作流管理模式都取得了丰硕的成果。特别是最近几年,成 为企业界和研究领域的热门。 工作流管理的研究之所以如此受人青睐,主要有两方面的原因:从技术角度 看,它集成了来自计算机科学和管理科学各个领域的原理、方法和技术,其中包 括数据库管理、异构分布计算、系统集成和业务重组等等,集成不_ 同领域的概念 的确具有很大的挑战性;从应用角度看,工作流系统的可扩展、高性能、可管理、 可使用、安全性都存在着很大的市场需求,高性能的w f m s 能大幅度地提高企业 的竞争能力,可获得相当可观的利润回报2 。 为了引导工作流技术朝着规范化的方向发展,工作流管理联盟( w o r k f l o w m a n a g e m e n tc o a l i t i o n ,w f m c ) 颁布了一系列工作流产品标准,包括工作流参考 模型、工作流术语表、工作流管理系统各部分间接口规格、工作流产品的互操作 性标准等。目前己经有相当数量的开发商已经研究和开发了符合上述规范的工作 流产品,企业应用的实际效果也比较成功,从而进一步刺激了企业工作流管理的 热情,使工作流产品显示出良好的发展趋势。 目前,国际市场上具有工作流管理功能的商品化软件产品已经有数百种之 :f i 楠,刘心雄,陈和hw e bs e r v i c e 技术研究,计算机。j 数,t 程,2 0 0 6 年第3 4 卷第7 期,8 8 9 0 页。 2 吴朝哞、潘么鹤,- t 作流管埋技术:机遇和挑战,计算机科学,1 9 9 9 年2 6 卷1 0 期,2 0 2 3 、8 负。 多,诸如h p ,i b m ,m i c r o s o t r ,o r a c l e ,b e a ,p e l e s o f t ,s a p ,x e r o x 等公司均 是工作流管理联盟的基金成员,同时这些公司也都有自己的工作流产品或相关产 品。在国内,许多公司、科研单位、开源组织和个人均从事工作流的研究和开发 工作。国内比较专注于工作流的公司和产品有:西安协同数码的s y n c h r o f l o w ; 上海东兰的l i v e f l o w ;杭州信雅达的s u n f l o w 等。 工作流技术,在初期主要由工作流产品供应商推动其发展;并且,在过去很 长一段时间罩,工作流产品供应商也一直引领着相关工作流技术的研究。本着把 工作流产品推向市场的目的,这些供应商大多把研究的注意力放在工作流管理产 品的开发实施方面。于是,工作流相关理论研究相对滞后,在工作流设计方法学、 工作流概念模型等方面还没有形成一套比较成熟的理论和方法。 在工作流理论与实施技术方面,研究的主要内容包括3 : 1 工作流管理系统体系结构的研究; 2 工作流模型与工作流定义语言研究; 3 工作流的事务特性:研究如何实现高级事务处理技术与工作流管理技术 的结合,用定义良好的模型语义与恢复机制来提高工作流系统的j 下确性与可靠 性,从而能够更好的支持复杂的业务过程; 4 工作流实现技术:包括面向对象技术、异构分布式计算技术、图形化用 户界面、消息通信、数据库、w e b 等在内的与工作流系统的设计实现有关的各项 技术及方法; 5 工作流的仿真与分析方法; 6 基于工作流的应用集成与互操作技术:研究异构应用系统的集成以及不 同工作流系统之间的互操作问题; 7 工作流与经营过程重组:研究如何通过工作流系统的实施支持快速的实 现经营过程重组; 8 工作流技术的其他应用:研究如何将工作流技术在不同的领域进行运用, 包括在c i m s 中的应用。 本文的研究主要集中于工作流定义语言与工作流模型。由于p r o c e s sd e f i n i t i o n 也可译为流程过程定义或者流程过程描述,工作流定义语言也可称为流程过程 定义语言或者流程过程描述语言。 3 罗海滨、范玉顺、吴澄,_ 丁作流技术综述,软件学报,2 0 0 0 年1 1 月,8 9 9 9 0 7 页。 1 3 本文研究内容 本文的研究工作包括以下几方面: 1 详细分析目前应用比较广泛的工作流定义语言的产生、现状、技术特点 等,从语言的结构、功能、发展前景等角度进行了比较,求证哪种语言更能够满 足工作流技术当前的发展要求: 2 在对工作流定义语言进行横向比较以及深入研究b p e l 的基础上,归纳总 结b p e l 适合应用于工作流的技术特征,以及从w s b p e l 2 0 规范中显示出的 b p e l 未来的发展方向; 3 对工作流参考模型进行改进,设计出适合运行b p e l 流程的工作流管理系 统模型,能够发挥出b p e l 互操作性强、可重用性高的优点,并且充分考虑到了 与外部w e b 服务交互以及w s d l 标准接口封装的问题; 4 对b p e l 在工作流系统的核心工作流引擎中的应用进行研究,着重分 析了目前典型的支持b p e l 的工作流引擎在该方向上的进展; 5 使用o r a c l eb p e lp r o c e s sm a n a g e r 设计了财务报销审批流程,在b p e lp m s e r v e r 上对其进行了编译、部署,并用o r a c l ec o n s o l e 进行流程测试。 1 4 本文的章节安排 本文共分六章,具体内容如下: 第一章:提出课题的研究背景、研究现状,给出本文的研究内容。 第二章:介绍工作流和工作流管理系统相关的重要概念。 第三章:对几种典型的工作流定义语言进行分析比较,揭示b p e l 的特点,并 针对w s b p e l 2 0 规范对b p e l 进行系统分析。 第四章:设计适合b p e l 技术特点的工作流管理系统模型,研究b p e l 在工 作流系统的核心工作流引擎中的应用。 第五章:完成基于b p e l 的财务报销审批流程设计。 第六章:本文总结。 第2 章工作流技术概述 工作流技术最早用于企业信息化,是实现企业业务过程建模、业务过程仿真 分析、业务过程优化、业务过程管理与集成,从而最终实现业务过程自动化的核 心技术。在工作流管理联盟成立以后,在其体系结构、术语使用、互操作模型等 方面取得了很大进展,建立了工作流的各种标准和规范,这些标准和规范是研究 工作流技术的基础。 2 1 工作流技术的起源及发展 工作流技术发端于2 0 世纪7 0 年代中期办公自动化领域的研究工作,但在此 之前,1 9 6 8 年f r i t zn o r d s i e c k 就已经清楚地表达了利用信息技术实现工作流程自 动化的想法4 。这是针对同常工作中具有固定程序的活动而提出的一个概念。目的 是将工作分解成定义良好的任务、角色,按照一定的规则和过程来执行并监控, 提高效率,降低成本。 含有工作流特征的商用系统的开发始于1 9 8 3 年至1 9 8 5 年间,早期的商用系 统主要来自于图像处理领域和电子邮件领域。图像处理许多时候需要流转和跟踪 图像,工作流恰好迎合这种需求;增强的电子邮件系统也采用了工作流的思想, 把原来点对点的邮件流转改进为依照某种流程来流转。在这些早期的工作流系统 中只有少数获得了成功。 进入9 0 年代以后,相关的技术条件逐渐成熟,工作流技术被应用于电讯业、 软件工程、制造业、金融业、银行业、科学试验、卫生保健领域、航运业和办公 自动化领域。企业信息资源越来越表现出一种异构分布、松散藕合的特点。企业 的分散性、决策制定的分散性和对同常事物活动详尽信息的需求,以及c s 体系 结构,分布式处理技术( c o r b a ,w w w ,c o m d e c o m ,j a v a ) 的同益成熟, 都要求实现大规模、异构、分布式执行环境,使得相互关联的任务能够高效运转 并接受密切监控。工作流管理技术由晟初的无纸化办公环境转而成为同化企业复 杂信息环境、实现业务流程自动执行的重要工具。这样的一个转变,把工作流技 术带入了一个崭新的发展阶段,使得人们从更深的层次、更广的领域上对工作流 展开了研究。 邢树斌,1 = 作流技术红电了政务中的应用,科技情撤开发j j 经济,2 0 0 7 年1 7 卷3 3 期,2 1 1 2 1 2 页。 1 9 9 3 年8 月,工作流技术标准化的工业组织工作流管理联盟成立。在全 球范围内对工作流技术的研究以及相关产品的开发进入了更为繁荣的阶段,更多 的技术被集成进来,工作流技术的规范性也得到了提高。19 9 4 年,工作流管理联 盟发布了用于工作流管理系统之间互操作的工作流参考模型,并相继制定了一系 列工业标准,相应的概念与术语得到了人们的认可,把工作流的技术研究以及相 关的产品开发带入了一个崭新的阶段。 纵观工作流软件产品由7 0 年代的萌芽到9 0 年代的繁荣,我们可以把它总结 为3 个阶段:第l 阶段,主要为应用于某些特定领域的、相对独立的应用系统, 比如图像、文档管理系统;第2 阶段,主要表现为具有底层的通信基础结构、能 够实现任务协作的应用系统,比如具有消息传递功能的工作流系统;第3 阶段, 具有图形用户界面的过程定义工具、用户定义与任务执行完全分离的工作流系 统,其体系结构基本上符合工作流管理联盟所提出的标准结构。经历了这3 个阶 段的发展,工作流产品基本上确定了它在计算机应用软件市场上的独立位置。5 2 2 工作流的定义及相关概念 2 2 1 工作流 不同的研究者和工作流产品供应商从不同的角度对工作流进行了不同的定 义。到目前为止,对于工作流仍然没有完全统一的定义。以下是一些有代表性的 定义: 工作流管理联盟的定义:工作流是指全部或者部分的由计算机支持或自动处 理的业务过程,根据一系列过程规则,文档、信息或任务能够在不同的执行者之 间传递与执行6 。 i b ma l m a d e n 研究中心的定义:工作流是经营过程中的一种计算机化的表示 模型,定义了完成整个过程所需的各种参数。这些参数包括对过程中每一个单独 步骤的定义、步骤l 、口j 的执行顺序、条件以及数据流的建立、每一步骤由谁负责以 及每个活动所需要的应用程序7 。 5 罗海滨、范乐顺、吴澄,下作流技术综述,软件学报,2 0 0 0 年11 月,8 9 9 9 0 7 页。 6 w f m c ,t h ew o r k f l o wr e f e r e n c em o d e l ,w o r k f l o wm a n a g e m e n tc o a l i t i o ns p e c i f i c a t i o nw f m c t c 0 0 1 0 0 3 1 9 j a n1 9 9 5 7 a l o n s og ,a g r a w a ld ,a b b a d ie la ,m o h a nc ,“f u n c t i o n a l i t ya n dl i m i t a t i o n so f c u r r e n tw o r k f l o w m a n a g e m e n ts y s t e m s ”,i e e ee x p e r t ,19 9 7 ,12 ( 5 ) :2 4 - 3 3 6 范玉顺等人给出的定义:工作流是一种反映业务过程的计算机化的模型,是 为了在先进计算机集成支持下实现经营过程继承与经营过程自动化而建立的可 由工作流管理系统执行的业务模型。 总之,工作流是业务过程的计算机实现,而工作流管理系统则是这一实现的 软件环境。 2 2 2 相关概念 下面对工作流定义中涉及的相关概念( w f m c t c 0 0 1 0 11 8 ) 进行描述: 1 业务过程流程( b u s i n e s sp r o c e s s ) 是若干活动的集合,这些活动按照一定的规贝, j - f i i j - 后连接在一起,相互协作以 达到一个共同的目标。 2 过程定义( p r o c e s sd e f i n i t i o n ) 即过程建模,定义的是过程运行中涉及到的各种参数,被工作流管理系统执 行。过程定义包含的内容有:过程的启动和中止条件、各个工作坏节既相互之间 的控制流动关系、单个活动的信息等。 3 活动( a c t i v i t y ) 是能够完成特定功能的一个实际环节,它在信息系统中通常对应于具体的业 务逻辑。它包含的信息有:开始和结束条件、可参与到此环节中的用户、完成此 活动所需的应用程序或数据、关于此活动应如何完成的一些限制条件如时间上的 限制等。 4 过程活动实例( p r o c e s s a c t i v i t yi n s t a n c e ) 指的是某个工作流过程的一次执行。从用户的角度来说实例的执行实际上是 由用户调用相应的应用程序对他所涉及的那个环节有关的数据进行处理,处理完 之后由w f m s 根据相应的结果决定激活后续的环节并生成相应的工作项,同时通 知与此有关的那些用户对之进行处理。由此反复进行,直至整个过程的完成。 5 任务工作项( t a s k w o r ki t e m ) 活动的具体运行实例( 活动实例的输入对象,等待活动实例进行处理) 。 6 任务列表( t a s k l i s t w o r k l i s t ) 是分配给一个特定用户( 一组用户) 负责处理的工作项集合。 w f m c ,t e r m i n o l o g y & g l o s s a r y ,w o r k f l o w m a n a g e m e n tc o a l i t i o ns p e c i f i c a t i o nw f m c t c 1 0 l1 , f e b1 9 9 9 7 参与者( p a r t i c i p a n t ) 是活动的操作者,可以是人或计算机应用程序。 p r o c e s sd e f i n i t i o np r o c e s si n s t a n c e箨钰r k h s t ,麓嘲蜊鞠粕矧端撕瞄喇蹦群确矧嘣蚺瞄目鳓措 l w o z kl i n tl l 一_ 目 嘲m q d w 目螭麟目蝴 狁f k i 锄n 1 w o 出f 麓m 2 蓐炽l 朝n 3 一一? 肋墩l 懈m q 0 , 0 , 敏p l o c e 鞘i m s w 一, o :聊) 嫩i t e m n p 8 _ m 一一14 m 目“ lw o al i s t25 p c e s sd e f m r 殖o nb 一 囊斛i 哪i 黔 9 秘, 乙w o r k i 蟹m 鞠 y十 - 一一; :w o f k l 谤m 2 1 罐 a g t i v i t tel 丘刳,w o r k i 钢限2 2 _ , o 踹 o w o r k i i 魏n l c 刊 图2 1过程定义、过程实例与任务列表之间的关系 来源:w f m c t c 一1011 , i s s u e3 0 t e c h n i c a lr e p o r t ,w o r k f l o w m a n a g e m e n t c o a l i t i o n ,b r u s s e l s ,19 9 9 8 工作流引擎( w o r k f l o we n g i n e ) 。 为工作流实例在运行时提供执行环境的软件服务或者“引擎”。 上述基本概念之间的关系如图2 2 所示。 b u s i n e s sp r o c e s s o e 1 卉a f i si n t e n d e dt oh a p p e n ) w o r ki t e m s ( 挣口i 留a l o c a t e dt oj w o t f c q o w p , w i c i p a n t ) 图2 2 基本概念之间的关系 i n t ok e da p p l i c a t i o n s ( c o m p u t e rt o o l 旨a p p l i c a t i o n $ 口船db s u p p o r t _ na c 撇y ) 来源:w f m c t c 一1 0 11 , i s s u e3 0 t e c h n i c a lr e p o r t ,w o r k f l o w m a n a g e m e n t c o a l i t i o n ,b r u s s e l s ,19 9 9 2 3 工作流管理系统 w f m c 定义:工作流管理系统( w f m s ,w o r k f l o wm a n a g e m e n ts y s t e m ) 是 指运行在一个或多个工作流引擎软件上,用于定义和管理工作流运行的一套软件 系统,负责人机交互,推进工作流实例的执行,并监控其工作状态9 。 2 3 1 功能 1 过程建立功能 在建立阶段,需要通过使用一个或多个分析、建模和系统定义工具,把实际 中的业务过程转变成形式化的、计算机可以处理的定义,即过程定义。 9 - n l c ,t h e w o r k f l o wr e f e r e n c e t o d e l ,w o r k f l o m a n a g e m e n t c o a l i t i o n s p e c i f i c a t i o n 僦一t c 0 0 1 0 0 3 ,1 9 j a n1 9 9 5 9 过程定义是过程的计算机化表示,由系列分散的活动、相关的计算机和人 员操作、控制过程流转的规则构成。可以用文本、图形或者语占符号来表示过程 定义。有些工作流管理系统允许在运行时期改变过程定义,如图2 3 中反向虚线 箭头所示。 b u i l dt i m e p r o c e s sd e s i g n & d e f m i i o n l m b 。u d s 。i ,n 蛾e s s 敬p r o 。c 。e s sa n n a l n y s i 出s , 蔷盂国d e f i n i t i o n 一一一一一一一一一一一一一一一- 一一一一一- 菡c呲眦n了e嘟。5nuolo 1 i f :肋3 ”1 1 a r l g 昭 叵三圈 基本活动 基本活动是与外界进行交互最简单的形式。它们是无序的个别步骤,与服务 进行交互、操作传输数据或者处理异常。 r e c e i v e r e p l y 业务流程通过r e c e i v e 活动和相应的r e p l y 活动把服务提供给它的伙伴。r e c e i v e 活动指定了它期望从哪个伙伴那罩接收,还指定了它期望伙伴调用的端口类型和 操作。r e p l y 活动被用来发送对先前通过 活动被接受的请求的响应。 i n v o k e 使用伙伴链接来引用伙伴提供的w e b 服务。调用可以是同步的请 求响应,也可以是异步的单向操作。 a s s i g n 用新的数据来更新变量的值。可以包括任意数量的基本赋值。 t h r o w 从业务流程中生成故障。 w a i t 允许业务流程指定延迟时间的长短或到某个截止期限。必须指定其中 一个到期条件。 e m p t y 在业务流程中插入“n o o p 指令,可被用于并行活动的同步。 e x i t 被用来立即终止活动实例,但所终止的运行活动不包含终止处理、故 障处理或补偿行为。 r e t h r o w 被用在故障处理中重捕获已采集的故障信息。只能在故障内部被 使用,并且对故障数据的更改必须被r e t h r o w 忽略。 e x t e n s i o n _ a c t i v i t y 引入新活动类型作为w s b p e l 的扩展。 结构化活动 结构化活动规定了一组活动发生的顺序。结构化活动通过将业务流程执行的 基本活动整合到结构中来描述业务流程是如何被创建的,这些结构表达了业务协 议中所涉及的控制模式、数据流、故障和外部事件的处理以及在流程实例之1 1 自j 进 行消息交换的协调。 s e q u e n c e 定义一组按词法顺序先后被执行的活动。 i f 提供条件选择,从一组活动中挑选一个执行。 w h i l e 反复执行个活动,直到某个成功条件被满足。 r e p e a t u n t i l 反复执行一个活动,直到某个成功条件被满足。与w h i l e 不同 在于至少执行包含的条件活动一次。 f o r e a c h 执行包含的活动n + 1 次,n 等于“f i n a l c o u n t e r v a l u e ”减去 “s t a r t c o u n t e r v a l u e ”的差值。 p i c k 等待某个合适的消息的到达或超时警报响起。当其中一个触发器触 发后,相关的活动被执行,该活动也就完成了。 f l o w 指定一个或多个被并行地执行的活动。为了定义任意的控制结构, 可以在并行的活动中使用链接。 合作伙伴链接类型( p a r t n e r l i n k t y p e ) 、合作伙伴链接( p a r t n e r l i n k s ) 和 端点引用( e n d p o i n tr e f e r e n c e s ) w s b p e l 把与流程交互的其他服务称伙伴。每个伙伴由合作伙伴链接类型 来描述。合作伙伴链接这个概念被用来直接模拟对等会话合作伙伴关系。为了描 述两个服务之问的会话关系,合作伙伴链接类型定义了会话中每个服务所扮演的 “角色”,并且指定了每个角色所提供的端e l 类型( p o r t t y p e ) 。 为了表示描述伙伴服务所需的动态数据,w s b p e l 定义了端点引用,端点 引用指定了服务的描述信息、服务名称及端点引用相关的信息。其中,引用属性 主要用于传递一些附属信息,通过与消息属性及赋值操作相结合,端点引用使得 在w s b p e l 中能动态地为某个服务类型选择提供者和调用它们的操作。 作用域( s c o p e s ) 一个s c o p e 提供影响其所包含活动的执行特性的上下文定义。这些上下文可 以声明v a r i a b l e s 、p a r t n e rl i n k s 、m e s s a g ee x c h a n g e s 、c o r r e l a t i o ns e t s 、e v e n th a n d l e r s 、 f a u l th a n d l e r s 、c o m p e n s a t i o nh a n d l e r 和t e r m i n a t i o nh a n d l e r 。当“r o o t ”的内容由流 程构造所提供时,上下文能够被嵌套分层。 每个s c o p e 都有一个定义了j 下常行为的主活动( p r i m a r ya c t i v i t y ) 。这个主活 动可以是一个有着任意深度的多嵌套结构的复杂活动。 作用域的功能,具体体现在如下几个方面: 错误处理( f a u l th a n d l e r s ) 信息交换处理( m e s s a g ee x c h a n g eh a n d l i n g ) 流程中的故障处理( e r r o rh a n d l i n gi nb u s i n e s sp r o c e s s ) 补偿处理( c o m p e n s a t i o nh a n d l e r s ) 终止处理( t e r m i n a t i o nh a n d l e r s ) 事件处理( e v e n th a n d l e r s ) 变量( v a r i a b l e s ) 变量可用于保存组成业务流程状态的消息,所保存的消息往往是己从伙伴那 里接收到的消息或将被发送给伙伴的消息。变量可被指定为i n v o k e 、r e c e i v e 和 r e p l y 等活动的输入变量或输出变量,保存在服务问流动的数据消息。 关联集合( c o r r e l a t i o ns e t s ) 定义了b p e l 业务流中各业务交互的相关集,以指定服务实例中相关联的操 作组。 在业务流程实例的生命期中,它通常与涉及它工作的伙伴进行一次或多次对 话。对话可基于成熟的传输基础结构,这种基础结构通过使用某种形式的对话标 识使对话中的消息相关,并把它们自动地路由到证确的服务实例而无需在业务流 程中注释。但是,在许多情况下,相关对话涉及的参与者不止两个,或使用轻量 级传输基础结构( 即把相关标记直接嵌套在被交换的应用程序数据中) 。 为了处理相关性情况,b p e l 提供了声明性机制,以指定服务实例中操作的 被相关组。一组相关标记可被定义为被相关的组中被所有消息共享的一组属性。 这样的一组属性被称为关联集合。 可扩展性 为了支持扩展性,w s b p e l 允许名称空问限定的属性出现在任何w s b p e l 元素上,也允许其它名称空问的元素出现在w s b p e l 定义的元素中。 扩展是强制的或可选的。当强制扩展不被w s b p e l 实现支持时,则拒绝流 程定义。当可选扩展不被w s b p e l 实现支持时,则忽略该扩展。 此外,w s b p e l 2 0 提供了两个明确的扩展构造:e x t e n s i o n a s s i g n o p e r a t i o n 和e x t e n s i o n a c t i v i t y 。 扩展不能够违反w s b p e l 规范定义的任何元素或属性的语义。 3 w s b p e l 2 0 的新特性 通过对比1 - 1 和2 0 版本: ( 1 ) 引用x s l t 增强数据转换能力; ( 2 ) 增加了新的活动类型:f o r e a c h 、r e p e a t u n t i l 、e x i t 、r e t h r o w 、i f , v a l i d a t e ( 用于验证) 以及e x t e n s i o n a c t i v i t y ( 用于扩展) ; ( 3 ) 删除活动类型:t e r m i n a t e ( 由e x i t 替代) 、s w i t c h ( 由i f 替代) ; ( 4 ) c o n t a i n e r 更名为v a r i a b l e s ( 变量) ,增加v a r i a b l ei n i t i a l i z a t i o n ( 变量初始 化) ; ( 5 ) 允许本地伙伴链接,通过r e c e i v e 和r e p l y 之间的内部相关性实现; ( 6 ) 在流程( p r o c e s s ) 上,增加了e x i t o n s t a n d a r d f a u l t 属性,指流程遇到标准 故障( 非j o i n f a i l u r e ) 时是否退出; ( 7 ) 一些活动的功能、语法发生变化:r e c e i v e 、r e p l y 、i n v o k e 、a s s i g n 、o n m e s s a g e ; ( 8 ) 标准元素( s t a n d a r d e l e m e n t s ) 的定义发生变化; ( 9 ) 相关集( c o r r e l a t i o n ) 的i n i t i a t e 属性增加了可选值“j o i n ”,它的意思是: 当这个相关集没有初始化时,此刻初始化;当这个相关集已经初始化的 时候,进行校验。 从以上变化中可以发现以下趋势:w s b
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论