(计算机软件与理论专业论文)基于时序eca的分布式工作流管理系统研究与应用.pdf_第1页
(计算机软件与理论专业论文)基于时序eca的分布式工作流管理系统研究与应用.pdf_第2页
(计算机软件与理论专业论文)基于时序eca的分布式工作流管理系统研究与应用.pdf_第3页
(计算机软件与理论专业论文)基于时序eca的分布式工作流管理系统研究与应用.pdf_第4页
(计算机软件与理论专业论文)基于时序eca的分布式工作流管理系统研究与应用.pdf_第5页
已阅读5页,还剩55页未读 继续免费阅读

下载本文档

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

文档简介

山东大学硕士学位论文 摘要 且前。工作流技术是发展最快的技术研究领域之一工作流系统是业务流程管 理的重要基础,通过企业经营过程模型的建立、部署和实施,能够促进及监控经营 过程的高效运行并且使其具有相应的人机交互能力随着计算机网络技术的不断成 熟和发展,企业的规模越来越庞大,在各个部门的处理实体呈异构、自治、分布的 特征的环境中,分布式工作流管理技术也得到了飞速的发展。但是,现在缺乏一个 标准化的集成框架来支持分布式应用的集成,而大多数商业化的分布式工作流管理 系统及研究模型都采用了集中式管理体系,即在分布式工作流执行中有一个主控工 作流引擎负责从属工作流引擎的控制、协调与合作,这种管理结构存在开放性、可 扩展性、可维护性等方面的问题。同时,分布式工作流系统中有很多基于时序的问 题没有解决,限制了其功能的发挥本文在对工作流技术标准的理解以及对其它工 作流体系结构的分析的基础之上,提出种基于时序e c a 技术和事件通讯机制的分 布式工作流系统实现方案。该系统是遵从于工作流管理联盟的工作流系统参考模型 的、通用的分布式工作流执行模型,它通过工作流引擎的时序e c a 规则完成工作流 中任务的执行。 本文的创新主要表现在利用时态逻辑在描述时序条件方面强大的功能和e c a 规 则动态交互的特性扩展了工作流模型的描述,解决了e c a 规则的语义在描述与时间 相关的复杂过程时能力不足的问题,使之有丰富的可用性;利用活动图进行过程定 义,增加了模型元素工作流逻辑符号和时序e c a 规则,使其更加适合为工作流 过程建模,拓展了工作流模型整体描述能力,并对模型的执行情况做了详细分析: 提出了基于时序e c a 的分布式工作流的整体架构,并将该体系引入医疗保险的应用 中,重点介绍了工作流系统的核心工作流引擎的组成结构,并为工作流系统划 分了模块,把系统分成过程定义、模型部署、多工作流引擎、运行时库,运行监控 和事件服务等几个模块。在这个方案中,过程和活动都被封装在分布式工作流引擎 中,各引擎彼此之间逻辑上独立,利用事件进行通讯和同步。该系统具有集成性、 开放性、支持分布式应用和系统的动态可重构性等显著特点,它不仅适应分布办公, 更以系统开放的环境为实现跨部门、跨企业的不同工作流互操作打下了基础,使客 户、供应商或合作者都可方便地与企业进行协同工作。 关键词:时态逻辑,时序e c a ,事件,分布式工作流 i l l 山东大学硕士学位论文 a b s t r a c t n o w a d a y s ,w o r k f l o wt e c h n o l o g y i so n eo ft h ef i e l d sd e v e l o p i n gm o s t r a p i d l y w o r k f l o ws y s t e mi st h em o s ti m p o r t a n tf o u n d a t i o no fb u s i n e s sp r o c e s s m a n a g e m e n t ( b p m o nt h eb a s i so fs e t t i n gu p ,d e p l o y i n ga n di m p l e m e n t i n gt h e o p e r a t i n gp r o c e s sm o d e lo f t h ee n t e r p r i s e ,t h eo p e r a t i n gp r o c e s sw i l lb em o r e e f f i c i e n ta n ds a f e ,a n dg u l w i l l b ef r i e n d l i e r w i t ht h ed e v e l o p m e n to f i n t e r n e t i n t r a n e tt e c h n o l o g y ,t h es c a l e o ft h ee n t e r p r i s ei sl a r g e ra n d l a r g e r w h e np r o c e s se n t i t i e so fa l lt h eb r a n c h e sa r ei nt h eh e t e r o g e n e o u s , a u t o n o m o u sa n dd i s t r i b u t i n ge n v i r o n m e n t ,d i s t r i b u t e dw o r k f l o wm a n a g e m e n t t e c h n o l o g yh a sm a d eag r e a tp r o g r e s s b u tc u r r e n t l y w ed o n th a v eas t a n d a r d a r c h i t e c t u r et os u p p o r ti n t e g r a t i o no fd i s t r i b u t e da p p l i c a t i o n ,b e c a u s em o s t o ft h ec o m m e r c i a ld is t r i b u t e dw o r k f l o wm a n a g e m e n ts y s t e m sa n dr e s e a r c h m o d e l sh a v em a d eu s eo fc e n t e r e dm a n a g e m e n ts y s t e m ,n a m e l yi nt h ed i s t r i b u t e d w o r k f l o we x e c u t i o n ,t h e r ei so n l yo n ep r i m a r yw o r k f l o we n g i n ei nc h a r g eo f c o n t r o l l i n g ,c o o r d i n a t i n ga n dc o o p e r a t i n gt h es u b o r d i n a t ew o r k f l o we n g i n e s t h i sa r c h i t e c t u r eh a ss o m ef a u l t sd u r i n gr u n n i n g i nt h es a m et i m e d u et o s o m et e m p o r a lp r o b l e m sw i t h i nt h ew o r k f l o ws y s t e mn o ts e t t l e d ,t h ea r e ao f t h ea p p l i c a t i o ni sl i m i t e d s o ,u n d e rt h ea n a l y s i so ff o r m e rd i s t r i b u t e d w o r k f l o wa r c h i t e c t u r e s ,w ep r o p o s ead i s t r i b u t e dw o r k f l o wm a n a g e m e n ts y s t e m b a s e do nt e m p o r a l e c ar u l e s a n de v e n t - c o m m u n i c a t i o nm e c h a n i s m t h es y s t e m o b e y sw o r k f l o ws y s t e m r e f e r e n c em o d e lo fw f m c ,a n di t i su n i v e r s a l d i s t r i b u t e dw o r k f l o we x e c u t i o nm o d e l i tc o m p l e t e st a s k si nw o r k f l o wb y t e m p o r a l e c ar u l e so ft h ew o r k f l o we n g i n e s w em a k eu s eo ft h ef u n c t i o no ft li nd e s c r i b i n gt e m p o r a lc o n d i t i o n sa n d t h ec h a r a c t e r i s t i c so fe c ar u l e si nd y n a m i ci n t e r a c t i o nt oe x p a n dd i s t r i b u t e d w o r k f l o wm o d e l ,r e s o l v et h ep r o b l e m so fe c ar u l e sd e f i c i e n ts e m a n t i c f u n c t i o ni nd e s c r i b i n gc o m p l e xp r o c e s sr e l a t e dt ot i m e ,d e f i n et h ep r o c e s s 山东大学硕士学位论文 b ya c t i v i t yd i a g r a m ,a d dm o d e le l e m e n t st oa c t i v i t yd i a g r a m , e n l a r g et h e d e s c r i b i n ga b i l i t yo fw o r k f l o wm o d e l ,a n a l y z et h ee x e c u t i o nc o n d i t i o no ft h e m o d e l s ,p u tf o r w a r d ad i s t r i b u t e dw o r k f l o wa r c h i t e c t u r e b a s e d o n t e m p o r a l e c ar u l e s ,a n di n t r o d u c et h es c h e m ei n t oh o s p i t a l i z a t i o ni n s u r a n c e i l l u s t r a t et h ek e yt e c h n o l o g i e so ft h i ss y s t e m e s p e c i a l l yt h ec o m p o s i t i o n o ft h ew o r k f l o we n g i n e ,a n dd i v i d et h ew o r k f l o ws y s t e mi n t om o d u l e s i nt h i s s y s t e m ,p r o c e s sa n da c t i v i t ya r ee n c a p s u l a t e di nt h ed i s t r i b u t e dw o r k f l o w e n g i n e ,a n da l lt h ee n g i n e sa r ei n d e p e n d e n tw i t he a c ho t h e r t h i ss y s t e mh a s t h ec h a r a c t e r i s t i c so fi n t e g r a t i o n ,o p e n n e s s ,a n dd y n a m i cr e c o n s t r u c t i o n 。 e t c e e yw o r d s :t l ,t e m p o r a l e c a ,e v e n t ,d i s t r i b u t e dw o r k f l o w 气 山东大学硕士学位论文 原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独立 进行研究所取得的成果。除文中已经注明引用的内容外,本论文不包含 任何其他个人或集体已经发表或撰写过的科研成果。对本文的研究作出 重要贡献的个人和集体,均己在文中以明确方式标明。本声明的法律责 任由本人承担。 。 论文作者签名:j i 鳖i 鳖 日 关于学位论文使用授权的声明 本人完全了解山东大学有关保留、使用学位论文的规定,同意学校 保留或向国家有关部门或机构送交论文的复印件和电子版,允许论文被 查阅和借阅;本人授权山东大学可以将本学位论文的全部或部分内容编 入有关数据库进行检索,可以采用影印、缩印或其他复制手段保存论文 和汇编本学位论文。 ( 保密论文在解密后应遵守此规定) 论文作者签名:邂导师签名:期:鲨堕叫 山东大掌硕士学位论文 1 绪论 本章介绍了工作流技术的内容和发展,简要介绍了分布式工作流管理系统应具 有的特点及国内外研究的现状,并对课题研究的内容、意义和本文的组织结构进行 了说明。 1 1 工作流与工作流管理系统 1 1 1 工作流与工作流管理系统的定义 许多学者尝试对工作流和工作流管理系统给出一定的描述,但很难对它们有一 个统一的定义。以下列举一些有代表性的定义: 工作流管理联盟【l l 给出的定义:工作流是企业业务流程完全或部分的自动化,它 根据定的过程规则集把业务所需的文档、信息或任务从一个参与人传递到下一个 参与人。工作流管理系统是利用软件来定义、创建和管理工作流执行的计算机系统, 该系统运行在个或多个能理解流程定义并与流程参与人相互协作、激活相应i t 工 具和应用系统的工作流引擎之上 i b ma l m a d e n 研究中心瞄蛤出的定义:工作流是经营过程中流程的计算机化模型, 它定义了完成整个过程所需的各种参数,这些参数包括组成流程的各个步骤,各个 步骤必须执行的顺序及条件,包括步骤间的数据流、步骤负责人、步骤使用的应用 等。工作流管理系统是用于设计和定义工作流流程、流程执行环境、工作流流程相 关用户和应用接口集的工具集。 s u s h iid a j a d i a p l 给出的定义:工作流是计算机辅助流程,它由一系列趋同于 同一目标的活动组成。工作流管理是工作流中活动的协商、控制和通信工作流管 理系统是管理工作流流程的一系列软件,包括定义、测试、分析、仿真、集成、使 能、监控、跟踪等内容。 y e o n g h o k ,s u kh o k m i 给出的定义:工作流是可被计算机系统自动执行和管理的 商业流程,通常包括相关的所有任务、工具、过程和组织工作流管理系统是使用 计算机表示的流程逻辑来定义、管理、执行流程的应用。 a m i ts h e t h i s 给出的定义:工作流是涉及多任务协调执行的活动,这些任务分剐 山东大掌硕士学位论文 由不同的处理实体来完成,一项任务定义了需要做的某些工作,它可用多种形式来 进行定义,包括在文件或电子邮件中的文本描述、一张表格、一条消息以及一个计 算机程序,用来执行任务的处理实体可以是人,也可以是计算机系统,比如一个应 用程序或一个数据库管理系统。 综上所述,工作流就是过程、业务程序的自动化处理,文档、信息或者任务按 照定义好的规则在参与者之间传递,来完成整个业务目标或者为整个业务目标的完 成做贡献。工作流具有以下特点: 计算机管理:工作流是由计算机管理的企业业务流程,而不是手工管理的流 程,也不是部分步骤由计算机来完成的计算机应用; 自动流转:流程实现任务及任务信息在流程参与人间的自动流转,而无需手 工指派任务( 当然在必要时也可进行手工指派) ; 流程有显式或隐式的计算机定义:定义明确描述了流程在计算机上执行所需 的一切信息。 工作流管理系统1 6 1 就是能完整的定义和管理工作流,并按照计算机表示的工作流 逻辑规定的次序,以执行软件的方式运行工作流。工作流管理系统的主要目标是对 业务过程中各个步骤( 或称活动、环节) 发生的先后次序及与步骤相关的相应人力 或信息资源的调用等进行管理而实现的自动化。当然此种管理可能会在不同的信息 及通信环境下实现,所涉及的范围可以小至几个人的工作组,也可大到企业与企业 之间。工作流管理的最大优点是将应用逻辑和过程逻辑分开,在不修改具体功能的 情况下,完成对生产经营的部分过程或全部过程再造和集成管理数据库管理系统 分离了企业经营业务过程和数据之间的依赖性,工作流管理系统分离了业务流程之 间的依赖关系。业务过程有各自的生命期,这取决于过程的复杂度和各个活动步骤 的持续时间。因此工作流管理系统的实现是非常多样的,在不同的应用层次上,工 作流的概念模型、底层技术都不尽相同。 一个完整的工作流系统必须具备以下特性: 基于组件:基于组件的系统能更好的支持软件的模块化,实现模块间的松散 耦合和位置透明性,在一个异构、自治、分布的系统环境中提供整合和互操 作的能力: 支持工作流应用;这是为了实现访问多个异构、自治、分布的系统的业务过 山东大学硕士学位论文 程; 保证过程的正确性和可靠性:这是为了并发、死锁和容错等因素而考虑的; 支持工作流应用和组件的演化,替换,添加;以此实现业务过程的重规划。 1 1 2 工作流管理系统的特征 尽管存在实现的多样性,所有的工作流管理系统都表现出了共同的特性,为不 同产品的集成和互操作提供了基础工作流管理联盟参考模型【7 1 描述了构造工作流 系统的通用模型,确定了它是如何联系到各种实现方式上去的。 过程设计及定义 建 立 时 运 行 时 过程实例化及控制 同用户及应用的交互 图i 1 工作流管理系统功能模块划分 如图1 1 所示,在最高层上,工作流系统的特征是对下面三个功能领域的支持: 1 ) 建立阶段的功能:主要考虑工作流过程及相关活动的定义和建模功能;在这 个阶段,通过使用一个或多个分析、建模和系统定义工具,把实际中的业务 过程转变成形式的、计算机可以处理的定义。通常把定义的结果称为过程模 型、过程模板,过程元数据或者过程定义。 2 ) 运行阶段的控制功能:在一定的运行环境下,执行工作流过程,管理不同活 山东大掌硕士学位论文 动的执行顺序。在运行时期,过程模型由负责创建,控制过程实例的软件所 解释,这个软件负责安排过程中各个活动的执行时间,调用适当的人员、应 用程序资源等。上述两个阶段的功能主要由企业中的系统管理员用户在系统 后台完成。 3 ) 运行阶段的人机交互功能:通过用户与应用程序( 或工具) 的交互来执行各 种活动,这个阶段的主要工作由企业中的普通用户在系统前台完成。作为工 作流管理系统的软件开发人员,主要的工作就是如何设计和开发这样的系统 来有效的实现上述的三个阶段的功能。 1 1 3 工作流管理系统的体系结构 骨 量:篓磊 图1 2 工作流管理系统体系结构 工作流管理系统的体系结构川【9 】如图1 2 所示,从图中我们可以看出,工作流管 理系统主要由三类构件组成: 1 ) 软件构件:完成工作流管理系统不同组成部分的功能的实现; 2 ) 系统控制数据:工作流管理系统中的一个或多个软件构件使用的数据; 3 ) 应用与应用数据:对于工作流管理系统来说,它们不是工作流管理系统的组 山东大掌硕士学位论文 成部分,而是属于外部系统和数据,它们被工作流系统调用来完成整个和部 分工作流管理的功能。 1 1 4 工作流模型的概念 工作流模型嘲【9 1 是对工作流的抽象表示,也就是对企业经营过程的抽象表示,它 从实际业务流过程中分离出来,用高层的( 图形化的) 工作流定义和抽象的工作流 执行特征表示。工作流模型就是以说明业务过程为目的,或者说这个模型以描述业 务过程为目标。工作流模型是定义了工作流中的各种要素以及各种要素之间的关系 的元模型,它包含了描述一个能够由工作流执行系统执行的过程所需要的所有信息。 这些信息包括过程的开始和完成条件、构成过程的活动、活动执行实体、活动间依 赖关系、用户所需要完成的任务、可能被调用的应用、工作流引擎的引用关系,以 及所有与工作流相关的数据的定义。 工作流管理系统建立阶段的功能主要是完成经营过程的计算机化的定义,也就 是完成过程建模的任务。在这个阶段,利用一个或多个建模方法及其相应的建模工 具,完成实际的经营过程到计算机可处理的形式化定义的转化,所得到的定义就是 过程模型,也称为过程定义过程建模工具以计算机能够处理的形式进行过程的定 义。它可以基于形式化的过程定义语言或对象关系模型来进行过程模型定义。 工作流建模工具应输出一个能被工作流引擎解释并执行的过程。 工作流模型的作用表现在两个方面: 1 ) 工作流模型决定了工作流管理系统提供的工作流描述语言的描述能力。在工 作流模型中规定了工作流描述语言能够描述什么样的活动、活动之间以什么 样的顺序执行、活动中可以使用哪些应用程序和哪种类型的数据。正是这些 因素决定了工作流描述语言的描述能力的大小 2 ) 工作流模型对工作流管理系统的系统结构设计有很大的影响。例如,一个支 持多层次嵌套的分散式定义方式的工作流模型使得工作流管理系统更适合 采用多工作流引擎的分布式结构。 工作流模型有多种子模型,如数据模型、组织模型、活动模型和过程模型等。 这些子模型共同构成了工作流模型。子模型是相对独立的,它们分别刻画了工作流 中某一个方面,这样可以使工作流模型的概念更加清晰,更易于理解。各个子模型 山东大学硕士学位论文 的主要内容分别是:数据模型描述了在活动中访问的数据的类型、结构等特性;组织 模型描述了活动执行实体以及活动执行实体之间的层次和隶属关系;活动模型描述 了工作流中活动的内容,即建立活动中使用的软件工具和数据的关系;过程模型描 述了工作流过程中活动之间的依赖关系,即活动的执行顺序的规则等 1 1 5 当前工作流管理系统存在的问题 工作流技术在初期主要由工作流产品开发公司推动其发展,随着其在实际应用 中不断取得良好的效果,得到了充分地重视并迅速发展起来。相对于工作流产品市 场的繁荣,相关工作流理论的研究显得有些滞后在过去很长时间里,有关工作流 方面的技术主要由商品化的工作流管理系统的开发商所领导。1 9 9 3 年工作流管理联 盟( 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 ) 的成立标志着工作流技术进入了相对成熟的 阶段,为了实现不同工作流产品之间的互操作,工作流管理联盟在工作流管理系统 的相关术语、体系结构及应用编程接口等方面制定了一系列标准,使人们可以从更 深的层次和领域对工作流技术展开研究。工作流管理联盟还和其他组织合共同探讨, 研究新兴技术在工作流管理中的应用,例如,与对象管理联盟联合定义工作对象和 元数掘所需的接口及定义等。 目前工作流管理系统存在着以下方面的问题【8 】u o : 系统的互操作性差:在工作流管理系统开发的早期。由于缺少统一的标准, 大多数工作流产品之间存在很大差异、互不兼容,一个系统很难和另一个系 统交互操作共同完成某项任务,工作流迁移困难,未能发挥工作流管理系统 应有的效能。虽然后来工作流管理联盟提出了一套工作流管理系统的标准, 但是要实现工作流之间无缝的互操作还有相当的工作需要开展。 系统的可靠性差:工作流实例在运行过程中,可能出现多个活动同时访问共 享资源的情况,各个活动在数据操作上会相互重叠。为了保证系统正常运行, 必须进行并发控制,防止出现“脏数据”等现象。另外,当工作流非正常中 断时,如何恢复数据的一致性也是需要解决的问题。 性能问题:目前大多数工作流产品无法满足企业的每天处理上万个、甚至每 小时处理几千个业务的需求。系统往往出现因为小的问题而瘫痪的情况,系 统容错性能较差,不能象数据库管理系统一样能适应成千上万个用户的并发 山东大学硕士学位论文 执行的要求。 系统的智能化程度差:不能适应灵活多交的运行环境,实施单位在使用时需 要做大量的工作。 缺乏对工作流系统进行分析、仿真和纠错的工具。 1 2 分布式工作流管理系统介绍 1 2 1 分布式工作流系统的特点 随着计算机与网络技术的迅速发展,特别是在i n t e r n e t 应用日益普及的情况下, 现代企业的信息系统的分布性、异构性和自治性的特征越来越显著,相应的企业信 息资源也分布在异构的计算机环境中,信息源之间的连接表现出松散耦合的特点 在这种客观背景下,工作流技术也随之进入了一个新的发展阶段分布式处理阶 段1 i 】【1 2 】。工作流管理系统从支持单个工作组环境开始,现在逐步提高到企业级的功 能需求。这样,单个工作流程就要允许跨越广域网上的多个工作流引擎和客户端, 通过并行计算,资源共享,分布操作使其可扩展性,可管理性得以充分体现。基于 这种现状,工作流学者提出了分布式工作流的概念分布式工作流采用分布式策略 将工作流系统功能离散化或模块化,这些模块既可以在同一机器上运行,也可以在 通过网络连接起来的几台不同机器上运行,通过各个模块间的相互协调工作,实现 预定的功能。 确定一个工作流系统的实现方案主要考虑两个方面的内容:首先是选择系统所 采用的底层通信基础结构。这一基础结构将关系到系统中各个组件之间以什么方式 来进行连接,是分布式应用的基础。另一方面是要确定系统各个组成部分之间的协 作过程。从模型的提交、运转到监控都涉及多个软件模型间的协作。这些具有不同 功能且互相独立的模块之间所进行的互操作过程实现了工作流系统的运转。这部分 工作主要包括接口定义、数据维护方式、操作处理过程等的确定。工作流引擎是工 作流管理系统提供执行服务的核心模块,工作流引擎的分布式执行也是分布式工作 流技术实现的关键所在。在集中式工作流引擎的情况下,一个工作流引擎控制所有 计算机上活动的执行。这种集中处理方式在系统的可靠性、可扩展性、实用性以及 吞吐量等方面都难以满足企业执行大规模复杂应用的需求。分布式工作流引擎则是 山东大学硕士学位论文 通过一组分布在不同节点上的工作流引擎共同协作来完成整个工作流实例的执行 通过分布在不同网络节点的多个服务器协作运行工作流过程可以更好地满足大规模 地异构分布式信息处理与应用执行环境的需要。 随着分布式技术的发展,各种各样的分布式工作流系统解决方案不断的涌现出 来。基于c o r b a 、d c o m 以及j a v ar m i 技术的分布式工作流系统都出现了,随着j 2 e e 的推广,也相应的应用到了分布式工作流系统上。 1 2 2 现有的分布式工作流技术 在现有的分布式工作流管理系统原型中,典型的有i b ma l m a d e n 研究中心的 e x o t i c a f m q m 系统、b a b a r a 等人开发的i n c a s 系统、美国佐治亚大学计算机系的 m e t e o r 系统、五国联合工作组的w i d e 系统、瑞士苏黎士大学的e v e 结构等 ( 1 ) i b ma l m a d e n 研究中心的e x o t i c a f m q m 系统【8 l u 3 e x o t i c a f m 蛳系统由i 踟a l m a d e n 研究中心提出,它采用持久消息来保存和传 递工作流相关执行信息,使得每一个执行节点都能够独立运行。e x o t i c a 的设计方 案是建立在底层的消息传递系统上的,它采用i b m 公司的m q s e r i e s 作为消息传递系 统。此消息系统为上层的应用隐藏了复杂的通信实现代码,并且屏蔽了操作系统、 网络协议的异构性,这些特点使其适合于连接分布式应用,实现分布环境下的工作 流管理功能。在消息系统所构成的信息基础结构上,分布的执行节点问通过发送与 响应消息来相互联系。持久消息是指被保存在可恢复消息队列中的消息,它们被放 入消息队列后,将一直被保存,直到相应的消息处理事务完毕以后,才从消息队列 中取走。在执行阶段,由于每一个执行节点只能够完成过程中的一个或几个活动, 所以,完整的过程定义就被分解成多个独立的部分,这些独立的部分将被传送并被 保存在不同的执行节点上。 基于持久消息队列的分布式结构的优点是:每一个单独的执行节点都能够独立 完成相应的工作流活动,从而实现了比较彻底的分布式工作流运行方式,提高了系 统的可靠性;而且,通过增加执行节点的数量,可以提高工作流系统的任务处理能 力,避免了集中式的情况中服务器端出现的性能瓶颈问题。 但是,采用此结构的工作流管理系统也具有它的缺点:首先,它使得在集中方 式下的一些简单的问题变得复杂。如对实例状态的监控问题;其次,工作流模型进 山东大学硕士学位论文 行的是静态分割,这对那些工作流建模时尚不能确定某些活动的执行者是谁的情况 并不适用;而且,各个执行站点得到的只是工作流模型的一部分,无法实现工作流 模型的动态更改;再次,在某些情况下,全部使用持久消息系统开销可能很大。 ( 2 ) b a b a r a 等人开发的i n c a s 系统f s j 嘲 b a r b a r a 等人提出的i n c a s 系统是一个支持异构、分布、自治环境的工作流系统, 工作流的执行环境由许多具有自治能力的处理站点组成。在这个体系结构中,最基 本的概念是i n c a ,即i n f o r m a t i o nc a r r i e r ,它是一个可移动代理。在一个i n c a 中, 包含有所请求的服务以及与执行此服务相关的信息,也就是将工作流的控制流和数 据流都编码在i n c a 中。工作流的执行是通过将i n c a 提交给每个处理站点向前推进 的,当接收到i n c a 时,每个处理站点就会执行在i n c a 中所请求的服务,并且推动 工作流程向前进行。 i n c a 模型支持动态工作流过程,属于完全分布式的体系结构。它的优点是不需 要集中式控制,也不需要集中服务器。缺点是需要将工作流执行所需的控制规则和 相关数据都封装在i n c a 中,特别是在实例的过程定义非常复杂时,在处理站点问迁 移数据通讯量很大,需要占用很大的网络带宽,甚至难以实现通信。 ( 3 ) 美国佐治亚大学计算机系的m e t e o r 系统f 1 3 】 m e t e o r 系统是由美国佐治亚大学计算机系的l s d i s 实验室开发的一套工作流管 理原型系统,该系统采用了完全分布的体系结构,在系统中设计并实现了分布式调 度模块来完成工作流任务的最优调度。它能够支持多种操作系统,并采用了w e b 和 c o r b a 技术,为分布式环境下的互操作提供了良好的支持。 ( 4 ) 西班牙、意大利和荷兰等五国联合工作组的w i d e 系统f s j f l 4 j w i d e 系统是西班牙、意大利和荷兰等国的五个合作伙伴联合开发的工作流管理 系统。它提供了功能强大的组织模型,并且对正常活动流动过程中出现的异常情况 提出了自己独到的见解,使得系统可以灵活实现不同类型异常情况的处理,它还通 过采用主动数据库技术和事务管理技术为分布环境下的工作流管理系统提供了先进 的支持。 ( 5 ) 瑞士苏黎士大学的e v e 结构1 8 】1 9 瑞士苏黎士大学计算机系的研究人员提出了一种基于事件的工作流执行服务中 间件平台体系结构,称为e v e ,用于集成工作流执行过程中松散耦合的分布式功能 山东大学硕士掌位论文 组件。在e v e 体系结构中,工作流的执行是由分布在网络上的代理通过检测到的事 件来完成的。本文深入研究了e v e 架构的特点,总结了e v e 架构适应的环境及相应 的缺点,对这种体系结构做了大量优化和扩充的工作,形成了独特的基于时序e c a 的分布式工作流管理系统,使适应能力、容错能力、可靠性、智能性等有了更大的 提高。 i 2 3 工作流技术发展趋势 随着信息技术、分布对象技术、i n t e r n e t i n t r a n e t 技术的发展,从技术与应用 的角度看,在今后一段时间内,工作流技术研究的方向大体有两个:一是为工作流 技术的发展解决理论上存在的问题,探讨工作流模型和语义的形式化表示方法等; 二是从工作流技术实现的角度探讨利用先进的信息技术提高工作流管理系统的性 能 工作流管理技术研究及产品的发展趋势御1 1 3 】【l q 是: 1 ) 向复杂企业应用的工作流管理系统方向发展:企业对工作流技术的需求日益 增加,目前的工作流技术和产品还难以支持复杂的企业应用,对已有企业应 用的集成能力也显得不足。因此,支持复杂企业应用和应用集成的工作流管 理系统将会得到充分的重视和长足的发展 2 ) 扩展工作流模型的描述能力:现有工作流模型在企业应用中的描述能力不 足,主要反映在工作流模型的语义在描述复杂过程时能力不足和活动属性的 定义不够丰富上。因此需要在迸一步深入分析的基础上丰富工作流模型的语 义和活动属性的定义。 3 ) 将代理技术与工作流管理技术结合:代理技术与工作流技术都是在近年来受 到了广泛重视并得到长足发展的计算软件技术,在分布对象技术的基础上, 充分发挥工作流技术在灵活性方面的优势和代理技术在知识表达、事务处 理、智能性能方面的优势,将这两种技术进行有效的结合,以工作流管理为 基础,以代理技术为核心,将会开发出具有良好前景的应用软件产品。 4 ) 内置到商用企业应用软件包中:在过去的几年里,为了使通用软件能够满足 客户提出的特别需要,s a p 等公司将工作流技术引入到他们的产品中,这样, 用户可以按照预定的顺序调用这些产品的不同功能模块,以满足本企业的特 山东大学硕士学位论文 殊需求 5 ) 基于w e b 的工作流:随着w e b 技术的普及,基于w e b 的工作流技术将得到充 分的发展,工作流可以通过w e b 扩展到多个企业,并且将会实现多个基于 w e b 的工作流服务器之间的协同工作 6 ) 分布式工作流:经过几年的发展,工作流管理系统的结构已经由原来的只能 支持单一的工作组环境发展到现在可以支持企业级( 甚至企业问) 的工作流 环境。一个工作流实例可以通过局域网、广域网分布在不同的服务器端和客 户端,而且服务器的故障所造成的影响将减少到最小因而大大提高了系统 的可扩展性、实用性和管理能力 7 ) 融入事务管理的概念:目前大部分工作流产品不支持事务的概念,甚至于不 能保证活动的执行是一个原子性、一致性、隔离性、持久性的事务。这意味 着系统不能保证工作流实例的正常运行,也无法保证系统能够正常运转,工 作流产品在这方面的性能还有待改进。 8 ) 增加工作流模型的分析和仿真工具:目前越来越多的用户要求能够对模型进 行评估和性能测试,仿真和性能监控工具的引入将不可避免地成为新一代工 作流产品的发展趋势。 1 3 课题研究的内容与意义 目前,工作流技术是发展最快的技术研究领域之一工作流系统是业务流程管 理的重要基础,通过企业经营过程模型的建立、部署和实施,能够促进及监控经营 过程的高效运行并且使其具有相应的人机交互能力工作流的典型应用有银行信用 卡申请流程、医疗保险支付处理等。随着计算机网络技术的不断成熟和发展,企业 的规模越来越庞大,在各个部门的处理实体呈异构、自治,分布的特征的环境中, 工作流管理系统必须高效的在分布式环境下运行。 但是,现在缺乏一个标准化的集成框架来支持分布式应用的集成,而大多数商 业化的分布式工作流管理系统及研究模型都采用了集中式管理体系,即在分布式工 作流执行中有一个主控工作流引擎负责从属工作流机引擎的控制、协调与合作。这 种管理结构存在一定的问题: 1 ) 由于统一的管理而难以实现完全的开放: 山东大学硕士学位论文 2 ) 主控工作流引擎的崩溃将导致工作流执行的完全失败; 3 ) 集中式的管理需要了解系统每一部分的工作内容及工作机制,从而难以维护 各个部门的隐私; 4 ) 在与主控工作流引擎的通信及主控工作流引擎的性能上容易产生瓶颈 本文的工作目的是在考察现有分布式工作流系统结构的基础上,提出一种基于 时序e c a 技术和事件通讯机制的分布式工作流系统实现方案。该系统应是遵从于工 作流管理联盟的工作流系统参考模型的、通用的分布式工作流执行模型,它通过工 作流引擎的时序e c a 规则完成工作流中任务的执行,其特点在于: 1 ) 企业的各种已有的应用用统一的接口集成起来,最大限度的利用企业控制的 软件资源和信息资源,使企业应用整合的任务简单化; 2 ) 工作流的分布执行提供了对运行服务的全面支持,对客户端来说是完全透明 的: 3 ) 通过动态增减时序e c a 规则可以实时修改工作流执行模型,使企业的业务流 程快速适应市场的变化; 4 ) 基于时序e c a 规则的服务实现了体系结构整体的一致性、鲁棒性、扩展性、 灵活性、伸缩性 本文首先在e c a 规则中加入了时态逻辑t l ,扩充为时序e c a 规则,解决了e c a 规则的语义在描述与时间相关的复杂过程时能力不足的问题,使之有丰富的可用性。 本文同时扩展了活动图这一相当成熟的建模工具,增加了模型元素工作流逻辑 符号和时序e c a 规则,使其更加适合为工作流过程建模,拓展了工作流模型整体描 述能力不足的问题。这种基于时序e c a 规则的活动图建模的方法简洁直观、易于理 解,很好的表述了业务过程的各种现象,又达到了作为工作流表示逻辑的高效性。 本文从基于时序e c a 规则的活动图的工作流建模入手,构造了一种从工作流模型到 工作流执行的映射方法,使过程定义得以无缝的转换为可执行分布对象的形式。 本文在持久事件队列的基础上实现了事件服务,为工作流系统提供了一种协作 和同步的通讯机制,保证了系统底层通讯的可靠性和低耦合,并实现了分布式工作 流系统对象的位置和功能透明。本文分析了工作流系统核心工作流引擎的组成 结构,并为工作流系统划分了模块,把系统分成过程定义、模型部署、多工作流引 擎、运行时库、运行监控和事件服务等几个模块。在这个方案中,过程和活动都被 山东大学硕士学位论文 i l l i li 封装在分布式工作流引擎中,各引擎彼此之间逻辑上独立,利用事件进行通讯和同 步。服务通过中介与其它过程和活动进行交互通过服务的代理,异构的过程实体 能映射到一个相对简单的同构的表示层,然后直接转换成可执行的形式 1 4 本文的组织结构 第二章介绍了基于时序e c a 的分布式工作流的技术基础,说明了事件驱动的机 理和e c a 规则的内涵。第三章首先详述了基于时态逻辑的时序e c a 规则,然后描述 了利用基于时序e c a 规则的活动图为分布式工作流建模的理论,同时还介绍了在模 型中判定e c a 规则集可终止性的算法。第四章提出了基于时序e c a 的分布式工作流 管理系统的体系结构,重点介绍了工作流引擎的设计,讨论了基于时序e c a 的分布 式工作流在医疗保险中的应用,分析了系统的些关键技术,如复合事件的合成、 分布式时间同步管理、事件历史等。第五章是总结与展望。 山东大学硕士掌位论文 2 基于时序e c a 的分布式工作流的技术基础 本章介绍了基于时序e c a 的分布式工作流的技术基础,主要着眼于事件在工作 流中的定义、分类、特点及形式化描述,并说明了e c a 规则的语义、语法和执行方 式。 2 1 工作流事件 2 1 1 事件的概念 事件是一种系统行为的瞬间发生系统行为可以是数据库操作、事务管理活动、 时间行为或与外部环境的交互行为,它们可用一个特定的时间点来标识由于系统 行为往往是个有限过程而非一个瞬间点,故事件的定义包含其参照时间点的选定 事件包含两方面含义:一方面作为某种系统行为的标志,另一方面标志一个时间点。 事件具有“原子性”,在某一时刻要么发生,要么不发生提出事件概念的目的在 于提供一种协调和同步过程活动的机制。事件技术是一种非常适合用于分布式异构 系统之间松散耦合的协作技术,基于事件技术的应用系统同样继承了这一优点,因 此以事件来驱动协作是最好的选择为了支持灵活的分布式协作,系统所依赖的事 件服务系统必须是分布的,同时还要考虑系统的可扩展性,所以作为基础结构的事 件服务系统也必须自治和对等,并且能够动态扩展。因为工作流引擎之间的许多通 信都要依赖于事件服务系统这个基础结构来进行,所以它应该提供足够强大的能力, 包括对复合事件的支持。还应该是个高效的服务,要能有效的减小网络的流量。功 能强大同时又十分灵活机动的分布式事件服务系统是分布式工作流的基础设施。 工作流事件【9 】,区别于其它应用的事件,是一个拥有参数的结构化信息行为,承 担着消息传递、分布环境的集成、工作步骤之间的连接、控制执行四大功能。每一 个事件通常包括多个属性:事件类型、事件发生的地点、事件标识、事件的时间戳、 所要求的服务名称、事件所在的工作流实例的标识、产生事件的代理的标识、事件 的参数列表等。 一个工作流事件由两个方面组成:触发( 原因) 和动作( 反应) 。触发是系统预定义 的引起特定动作的状态集。一个工作流事件可以由两种类型的原因触发。一种是显 山东大学硕士学位论文 式的活动,是由应用程序通过w a p i 调用触发的事件,例如一项任务因为缺乏资源而 无法执行时向系统报告的“资源不足”事件;另一种是预先定义的不同过程实例的 同步点,例如某项任务为效率起见要求同时被几个过程实例执行,系统在该项任务 之前设置一个“与连接”同步点,在积累了一定数量的工作项后才触发该项任务 动作是达到触发条件后系统的反应,它有显式动作和隐式动作两种类型。显式动作 是过程定义中定义的动作,通常是要求工作流管理系统执行一个特定的工作流控制 动作,或者是设置工作流相关数据项。隐式动作是特定活动或过程实例对事件发生 的关注,事件的接收者是应用程序,工作流系统通常不关心这些事件的细节。 2 1 2 事件的分类 事件通常可描述为在什么时间、什么地点,哪些人或组织( 主体) 对哪些相应数 据( 客体) 发生了哪些活动( 操作) ,导致了怎样的结果 按照事件中包含活动的个数进行分类,事件分为两类:原始事件和复合事件。原 始事件是指不能再分的事件,是最小的事件单元,仅包括一个活动,同时包含执行 这个活动的角色人员、活动相关数据及活动发生的时间和地点为了表达工作流执 行中复杂逻辑,多个原始事件可以通过逻辑表达式形成复合事件。 按照事

温馨提示

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

评论

0/150

提交评论