




已阅读5页,还剩99页未读, 继续免费阅读
(系统工程专业论文)工作流引擎规范接口的设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 面对目前工作流协同化发展的现状,业界对工作流管理系统的标准化需求 越来越明显。本文旨在遵照w f m c 参考模型,在自主研发的工作流引擎r r f i o e n g 的基础上实现规范的引擎接口。本文首先通过对工作流管理技术的概述以及技 术发展方向的介绍,引出工作流管理系统对标准化的需求,突出撰写本文的实 际背景意义。然后,本文对在工作流领域已被普遍认同的w f l i c 参考模型做出 的介绍,并且详细说明以此为模型基础的自主研发的工作流引擎r r f i o e n g 的体 系架构、功能模块和流程推动机理,为后续规范接口的设计和实现,奠定了核 心引擎基础。紧接着,作为本文的重点。根据对r r f i o e n g 的应用编程接口w a i i 的分类,逐一详细介绍在引擎r r f i o e n g 基础上的设计和实现。最后,针对工作 流引擎在实际应用系统中的两个应用,给出相应的案例介绍,以此检验本文实 现的工作流引擎规范接口的实际应用情况。 关键词:工作流管理系统,工作流引擎( 工作流机) ,w f m c 参考模型,r r f l o e n g , 工作流应用编程接口 a b s t r a c t f a c i n gt od e v e l o p i n gs t a t u so fw o r k f l o wc o o p e r a t i n g , i ti sm o t ea n dm o 坨 n e c e s s a r yf o rs t a n d a r d i z a t i o no fw o r k f l o wm a n a g e m e n ts y s t e m t h et h e s i sa i m st o d e m o n s t r a t et h ed e s i g na n di m p l e m e n t a t i o no fs t a n d a r di n t e r f a c eo fw o r k f l o we n g i n e , b a s e do nt h ew o r k f l o we n g i n e - - - r r f l o e n g , c o m p l i a n tt ow f m cr e f e r e n c em o d e l f i r s t l y , i ti n l m d u c e st h eg e n e r a lc o n c e p t i o na n dt h e o r yo fw o d d l o wa n dd i r e c t i o no f w o r l d l o wd e v e l o p m e n tt or e s s o no u td e m a n df o rs t a n d a r d i z a t i o no fw o r k f i o w p r o d u c t , w h i c hi sb a c k g r o u n da n dp u r p o s eo ft h i st h e s i s i ns u c c e s s i o n , i td e s c r i b e s t h ew o d d l o wr e f e r e n c em o d e lr e g a r d e da sas t a n d a r dc r i t e r i o na n dag e n e r i c w o r k f l o wm a n a g e m e n ts y s t e m , i n c l u d i n gt h ec o m p o n e n t s ,t h ef u n c t i o n s ,a n dt h e a r c h i t e c t u r eo fs y s t e m s e c o n d l y , i ta n a l y s e so u rr r f i o e n gi nd e t a i l ,r e s e a r c h e st h e s t r u c t u r ea n df u n c t i o n so ft h ee n g i n ea n dt h ec o r ed i s p a t c h i n gm e c h a n i s m a st h e k e y s t o n eo ft h et h e s i s ,b a s e do nt h er r f i o e n ga st h ef o u n d a t i o n , i td i a s e r t a t e sh o w t o d e s i g na n di m p l e m e n tt h es t a n d a r dw o r k f l o wa p p l i c a t i o np r o g r a m m i n gi n t e r f a c e , a c c o r d i n gt oc l a s s i f i c a t i o no fi n t e r f a c eo fw o r k f l o wr e f e r e n c em o d e l l a s t l y , a i m i n g a tt h ei m p l e m e n t a t i o no fw o r k f l o we n g i n ei nt h es p e c i 丘e db u s i n e s sa p p l i c a t i o n s y s t e m t h ea u t h o rd e l i v e r st h et w oa c t u a lc a s 髓w h i c hi n d i c a t er e s p e c t i v e l yh o wt o u t h es t a n d a r di n t e r f a c ei m p l e m e n t e di nt h i st h e s i s k e yw o r d s :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 i o we n g i n e ,w f m cr e f e r e n c e m o d e l , r r f i o e n g , w o r k f l o w a p p l i c a t i o np r o g r a m m i n gi n t e r f a c e 学位论文版权使用授权书 本人完全了解同济大学关于收集、保存、使用学位论文的规定, 同意如下各项内容;按照学校要求提交学位论文的印刷本和电子版 本;学校有权保存学位论文的印刷本和电子版,并采用影印、缩印、 扫描、数字化或其它手段保存论文;学校有权提供目录检索以及提供 本学位论文全文或者部分的阅览服务;学校有权按有关规定向国家有 关部门或者机构送交论文的复印件和电子版;在不以赢利为目的的前 提下,学校可以适当复制论文的部分或全部内容用于学术活动。 经指导教师同意,本学位论文属于保密,在年解密后适用 本授权书。 指导教师签名:学位论文作者签名: 年月日年月日 啼嵴卵篓 同济大学学位论文原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师指导下,进行 研究工作所取得的成果。除文中已经注明引用的内容外,本学位论文 的研究成果不包含任何他人创作的、已公开发表或者没有公开发表的 作品的内容。对本论文所涉及的研究工作做出贡献的其他个人和集 体,均已在文中以明确方式标明。本学位论文原创性声明的法律责任 由本人承担。 签名:啉辛 一年) 月 第一章绪论 1 1 课题背景 第一章绪论 本课题来源于上海市科委重大项目“支持快速流程重组的工作流管理系 统”。随着全球经济一体化和快速变化的市场需求,企业产生了对流程快速重组 的需求。课题组在总结和分析企业流程快速重组的需求和工作流管理系统特点 的基础上,提出了面向企业流程快速重组的工作流管理模式。目标是将业务流 程中工作如何组织协调在一起的规则抽象出来,从而分离了具体工作逻辑和流 程组织逻辑,使之在工作流管理系统的协助下,开发人员遵从一定的编程接口 及约定,就可以开发出更具灵活性的事务处理系统,最终用户无需重新开发事 务处理系统,就可以自己更改工作流程,以适应业务变化的需要 工作流管理系统w f m s ( w o r h l o wm a n a g e m e n ts y s t e m ) 是以计算机支持的 分布式、协同工作业务流程的自动或半自动化为研究目标的软件系统,定义、 创建和执行工作流的系统,也是一种特殊的计算机支持的协同处理c s c w ( c o m p u t e rs u p p o r t e dc o o p e r a t i v ew o r k ) 系统f 1 1 。 相对于传统的工作流管理模式,面向企业流程快速重组的工作流管理模式 的特点为:从企业流程建模、仿真分析与优化出发,经过流程解析与释放,至 流程自动执行的整个流程生命周期,工作流管理支持流程随着外界市场需求而 动态变化的特点,即在流程执行过程中动态改变流程的逻辑结构和相关的执行 参数,以适应市场需求。 在课题研究中,我们以工作流管理联盟( w f m c ) 的参考模型和基于沮。 的流程定义语言( ,d l ) 为基础,参考一些开放源代码的工作流系统( 如o b e 、 s h a r k _ 1 2 等) ,来构建工作流管理系统的原型。在工作分配上,笔者负责工作流引 擎部分,特别是对引擎规范接口设计与实现。满足w f m c 接口规范的基础上, 笔者深入分析了上述开源工作流管理系统的流程引擎接口实现,比较了它们各 自的优缺点,并取短补长,构建了一个工作流管理系统的规范接口的实现方式。 同时,笔者阅读了大量的国内外有关工作流的文献。随着认识的加深,笔者认 识到通过调用工作流引擎规范接口能一定程度上提高企业的灵活性,不仅适用 第一章绪论 于办公自动化领域内的公文流转,而且可以实现应用的集成,实现企业级的入、 流程和应用的集成 由上述可知,基于规范的引擎接口能更好地实现工作流管理系统的协同性, 支持快速流程重组。本文的内容就是研究如何完成工作流引擎规范接口的设计 与实现,并且作为课题“支持快速流程重组的工作流管理系统”的一个研究部分。 1 2 工作流技术的起源与发展 工作流技术与工作流管理系统本身,也经历了一个发展进化的过程。在工 作流管理概念提出之前,一些工作流的思想已经在某些应用系统中有所体现大 致可分为以下几个阶段1 3 1 : 1 、文件版本控制系统:管理文件的版本变化过程,主要是记录手工过程的 历史数据,还未真正涉及过程管理。 2 、常用过程控制软件:针对某一专用领域开发的过程控制软件,如图纸审 批、验收审批,应用范围狭窄。 3 、文档管理系统与项目管理系统:开始从对象的生命周期的角度看待过程, 但一般局限于部门内,管理单个对象的处理过程。 4 、通用工作流管理系统:按照工作流管理的需要开发的应用系统,适用于 不同的领域,可以管理跨部门或跨企业的工作流程,处理并行、同步、投票等 复杂关系。 这个发展过程是企业需求推动的结果,但也离不开计算机技术进步的作用 每一次相关技术的进步,都伴随着工作流管理系统结构上和实现形式上的重大 变化,主要的方面有: 网络系统的体系结构:从早期的主机终端、单机式、到客户机服务器, 又发展到目前的陆啪咧w 西,使得工作流管理系统的应用范围从部门内扩展到 整个企业,现在正向全球范围扩展。 软件开发技术:从面向过程,到面向对象,再到目前的分布式对象技术, 为实现工作流管理系统从封闭到开放、分布式运行,提供了支持 底层数据管理技术:从文件系统,到数据库管理系统,又到产品数据管 理系统,形成了一个集成的,面向对象的数据管理平台,简化了系统实现和集 成。 2 第一章绪论 所以,研究工作流管理系统的技术与实现,同时也必须关注这些相关技术 以及相关工作流产品的最新进展。 纵观工作流软件产品几十年的繁荣,我们可以把它总结为三个阶段【4 l :第一 阶段,主要为应用于某些特定领域的、相对独立的应用系统,比如图像、文档 管理系统;第二阶段,主要表现为具有底层的通讯基础结构、能够实现任务协 作的应用系统,比如具有消息传递功能的工作流系统;第三阶段,具有图形用 户界面的过程定义工具、用户定义与任务执行完全分离的工作流系统,其体系 结构基本上符合工作流管理联盟所提出的标准结构。经历了这三个阶段的发展, 工作流产品基本上确定了它在计算机应用软件市场上的独立位置。在工作流这 一框架下,比较基本的、主要的研究内容以下几个方面:0 ) t 作流管理系统体 系结构的研究:( 2 ) 工作流模型与工作流定义语言;( 3 ) 工作流的事务特性,研究 的目的在于将高级事务处理技术与工作流管理技术相结合,用良好定义的模型 语义与恢复机制来更好地支持企业的经营过程,提高工作流系统的可靠性与实 用性;( 4 ) 工作流的实现技术:包括面向对象技术、异构分布式计算、图形用户界 面、消息通讯、数据库、w w w 等在内的与工作流系统的设计实现有关的各项 技术、方法;( 5 ) 工作流的仿真与分析方法;( 6 ) 工作流的集成与互操作技术:研究 异构应用系统的集成以及不同工作流系统之间的互操作问题;仍工作流与经营 过程重组:研究如何通过工作流系统的实旌有效实现企业的经营过程重组。 本文着重讨论的咖o ( 面向流程快速重组工作流管理系统) ,即是基于对 工作流集成与互操作和实施过程重组的研究基础之上。 1 3 工作流技术概述 关于工作流技术的相关概念目前尚无统一、明确的定义,不同组织和产品 都有不同的描述,但其本质和基本特征是一致的在本文中我们以工作流管理 联盟的定义为标准 工作流管理联盟w f l 讧c 的全称是w o r k f l o wm a n a g e m e n tc o i t i o n ( 工作流 管理联盟) ,它成立于1 9 9 3 年8 月,其主要职责就是负责标准化工作。目前该 组织的成员已经超过了2 个,其中包括软件厂商、科研机构与咨询机构。1 9 9 4 年1 1 月2 9 日w f l c 发布了工作流系统参考模型( w o 止f l o wr e f e r e n c em o & 1 ) , 它详细描述了w f l c 的各主要组成部分、备部分的功能及相互之间的接口 3 第一章绪论 工作流( w o a i l o w ) :是计算机支持的业务流程的全部或部分自动化。在 此流程中,文档、信息或任务按照预定的规则,以网络为载体流转,实现组织 成员间的协调工作,以达到业务的整体目标,或是促使此目标的实现【5 l 。 工作流管理系统( w f m s ) 是一种能定义、创建和管理工作流执行的软件系 统。就是将现实世界中的业务过程转化成某种计算机所能识别的形式表示( 即 工作流逻辑) ,并在此形式表示的驱动下完成工作流的执行和管理。使用w f m s 可以充分利用企业资源、有效地跟踪工作过程,提高工作过程定制的速度与质 量四 业务流程( b u s i n e s s p r o c e s s ) :指在某企业或机构中,能够实现业务目标和 策略的相互连接的过程和活动集。如公文处理流程、投保过程及项目开发过程 等。 活动( a c t i v i t y ) ;t 作流中一个逻辑步骤或环节的工作任务,一般分为人 工操作和自动处理两类。活动是流程执行中的最小工作单元,要求有人员的参 与或由计算机自动完成。 过程实例( p r o c e s si n s t a n c e s ) :实际运行中的一个业务流程。每个实例代 表一个能独立控制执行、具有内部状态的线程。在过程实例的执行过程中,w f m s 将解释相应的流程定义,生成有关的活动实例并根据定义中的控制规则协调这 些活动之闽的顺序关系,同时根据数据流动关系的定义完成活动之间的数据传 送。从参与者的角度来说,实例的执行实际上是由参与者处理他所涉及的那个 环节的数据,完成该环节的任务,之后由w f m s 根据相应结果激活后续环节, 同时通知后续参与者对之进行处理,由此依次反复直至整个过程完成。其中工 作项列表( w o r l d i s t ) 是一个参与者所负责的所有工作项的详细描述;而各个活 动执行中应用程序或参与者所处理的数据称为工作流应用数据( w o r k f l o w a p p l i c a t i o nd a t a ) ,如应用数据库中的记录,被处理的文档等;系统主控部件运 行服务用来控制工作流实例的状态和执行的数据则称为工作流相关数据 ( w o r k f l o wr e l e v a n td a t a ) ,相关数据在流程定义中一般为全局变量,又可细 分为控制数据和参考数据。 工作流模型( w o r k i l o wm o d e l ) :工作流过程依赖于一个形式化的工作流模 型来描述工作流任务之间的控制流和数据流。工作流模型由4 部分组成,它们 分别是过程模型、组织模型、资源模型以及工作流相关数据。过程模型用来定 义工作流的过程逻辑,它包括组成工作流的所有活动以及活动之间的依赖关系。 4 第一章绪论 它是整个工作流模型的基础与核心,其他模型均为其提供支持。组织模型用来 定义企业人员的组织结构,它包括几种不同形式的组织元素以及每种组织元素 内部的递阶层次关系。组织模型的主要任务是为企业人员执行工作流,提供柔 性的组织定义,为过程模型提供“人”的支持。资源模型用来定义企业资源的 组织结构,它包括几种形式的资源容器元素以及容器内部的递阶层次关系,直 至最终的原子级资源个体。资源模型的主要任务是为企业人员执行工作流,提 供“物”的支持。工作流相关数据,用来定义工作流执行过程中需要用到的数 据,它包括简单的数据类型与复杂的企业对象。它主要用于各种条件的判断, 以实现工作流引擎对不同活动的选择性路由。工作流相关数据为工作流的执行 提供了“信息”的支持 代理( a g e n t ) :工作流系统中,一个独立的处理实体被定义为代理( a g e n t ) , 它由所包含的个体、团队成员、工具及他们相应的职责所构成。在组织模型中 代理包括以下两种实体a c t o r :一个a c t o r 是个体处理单元,它可以是员工和自 动工具。与a c t o r 相关联的有工作时问表、身体状况或故障等因素,这些因素 可以综合确定一个a c t o r 的当前状态。g r o u p :一个g r o u p 是a c t o r 的集合组成, 其中a c t o r 的职能具有公共的特征。 角色( r o l e ) :角色是指在过程模型中对某项任务或相关任务集合具有访问 权限和完成能力的处理实体。在一个业务流程中,角色用来指定代理的职责。 代理是扮演一个或多个角色的物理实体,角色表示的是责任的集合。角色的定 义是在过程定义中完成,而代理是在组织模型分析时才定义。针对不同的工作 流系统,同一企业组织结构的划分可能不同,角色与代理实体的映射关系是由 授权完成的。在一个工作流中定义角色具有重要的意义。角色与代理分离保证 了授权的灵活性,使得在组织机构变化时,对工作任务的分配不会有影响;当 一个任务可以被一个以上的代理执行时,角色与代理的动态映射关系有利于管 理能够帮助动态工作负载平衡。例如,如果角色是采购员,一个采购部可能有 几个用户( h u m a na g e n t s ) 都可以作为这个角色。一个采购员的工作负载高时, 系统可以自动地将新的工作任务配给另一个采购员,实现工作负载的平衡 流程定义( p r o c e s sd e f i n i t i o n 也称流程建模,过程定义) :计算机所能识别 的业务流程的形式化描述,用来支持运行过程的自动化。流程一般被分解成一 些子过程和活动,其定义主要包括运行过程中涉及到的各种数据和参数,如过 程的开始和终止条件、各个工作环节活动及相互之间的控制流和数据流关系以 5 第一章绪论 及一些关于个体行为的信息,如组织成员、与1 1 r 相关的应用和数据等。活动之 间依赖关系的语义包括因果关系和时间关系,例如活动q 依赖于活动p ,这意 味着q 需要p 产生的结果作为输入并且q 在p 完全结束之前不能开始。 路由关系和原语集根据w f m c 的定义有以下四种路由关系: 1 顺序( s e q u e n t i a l ) 路由:一个任务接着另一个任务被顺序的执行在图 1 - 1 ( a ) 中,任务b 在任务a 已经完成之后和任务c 开始之前执行。 2 并发( p a r a l l e l ) 路由:在图1 1 ( b ) 中任务b 和任务c 并发执行即任务b 和任务c 同时或以任意顺序执行。为了模仿并发路,由需要两个组成块:a n d - s p l i t 和a n t ) - j o i n 。图1 1 中的a n d - s p l i t 使任务b 和任务c 在任务a 已经完成之后开 始执行,a n d - j o i n 同步两个并发的流程,如在任务b 和任务c 都已经完成后,任 务d 可以开始执行。 3 条件( c o n d i t i o n a l ) 路由:在图1 1 ( c ) 中任务b 或者任务c 互斥的被执行 为了表示在两个或多个之间选择使,用两个组成块:o r - s p l i t 和o r - j o i n 。如果 任务a 已被执行,将在任务b 或任务c 之问选择,任务d 在任务b 或任务c 完成之 后就可以执行。 4 循环( i t e r a t i o n ) 路由:有时需要执行一个任务多次。在图1 1 ( d ) 中任务b 被执行一次或多次。 ( c 图1 1 四种路由结构 w f m c 已经确定了用来描述工作流的六个原语集。用这些原语可以描述任 何可能发生的工作流。这些原语是s e q u e n c e 、a n d - s p r i t 、a n d - j o i u 、o r - s p l i t 、 o r - j o i n 和i t e r a t i o n 。 以下给出的这些基本概念之间的关系如图1 2 所示: 6 孑鹣 第一章绪论 图1 2 工作流基本概念问的关系 1 4 工作流管理系统对标准化的需求 在工作流管理系统开发的早期,由于缺少统一的标准,大多数工作流产品 之间互不兼容。许多软件厂商提供各自的工作流软件产品,而且新的产品也不 断涌现,用户有很大的选择余地,但是如果没有可遵循的行业标准,就会使这 些产品之间存在巨大差异,导致这些产品之间不能协同工作,成为一个个信息 的“孤岛”。虽然后来工作流管理联盟提出了一套工作流管理系统的标准,但 是要实现工作流之间无缝的互操作还有相当的工作需要开展。 有以下两个主要原因,驱使实现工作流功能接口的标准化阁: 1 缝续支持过程重组和操作的夏活性 业务过程重组和与之相应的工作流系统实现都具有重要的战略意义,从而 要求工作流产品要有足够的灵活性来处理不停( 一直) 变化的业务过程,这是 采用工作流技术的主要动机。有时,用不同的工作流产品实现的几个单独的业 务过程,后来业务过程重组为一个单一的复合过程,包括现有的工作流产品进 行交互。这种需求可能由于组织的合并、立法的变化、业务对象的改变等引起。 随着电子数据交换的发展,工作流也包含组织阋通信,就象一个组织内通信。 所以在这些情况下,非常希望在不同的组织或者部门间使用不同的产品,而那 些不能用于协调工作的产品,在过程变化时会产生十分严重的潜在问题。 7 第一章绪论 2 满足产品专业性与市场变化的需求 市场中有非常多的工作流产品,都针对不同方面的应用和不同的数据,应用 程序集成。协同工作标准的制定,将使得我们可以从每一应用领域的产品中最 好的来满足需求。这样的可以从一个开发商处选择过程分析、定义产品,而从 另一开发商处选择工作流引擎软件,然后从第三个开发商处购买客户端任务表 处理程序与前面两个产品集成。 一个工作流,可以方便的拆分为几个子过程,每一个子过程由适合特殊数 据类型、平台、网络环境的专门工具执行。协同工作流标准,提供了采用综合 方法来适应业务过程的需要,把几个专门的工具的链接在一起满足过程的精确 需求。 此外,许多工作流系统需要与其他系统集成,已有的或者将要出现的系统, 从桌面办公室到社团事物处理。标准化的接口可以支持这种集成,并减小产品 的复杂度。 1 5 论文研究内容及章节组织 为了实现不同工作流产品问的协同工作,支持业务流程的快速重组,需要 在工作流管理系统中的不同组件间制定一套规范的接口( w a l l ) 和数据交换格 式。本论文以工作流技术发展的过程中对标准化接口的需求作为背景,参照 w f m c 工作流系统参考模型中定义的接口规范,在课题组自主开发的“支持快 速流程重组的工作流管理系统”e q 基础之上,设计和实现了基于规范的工作流 引擎接口,并且将其应用于实际的应用系统当中,检验了规范接口的可行性。 论文的框架如图1 3 所示 第一章在介绍本论文的课题背景的同时,针对当前工作流技术的发展和需 求,给出了工作流技术的基本概念,做为后续介绍的铺垫另外,为论文的研 究内容及章节安排做出整体的概括。 第二章着重讨论了工作流管理联盟w f m c 给出的工作流系统参考模型。参 考模型详细描述了工作流系统的有关概念,并在此基础上给出w f m s 的主要组 成部分、各部分的功能及相互之间的接口在本章中,主要针对工作流元模型、 参考模型、参考模型体系接口以及工作流管理系统的功能模块分别进行阐述, 8 第一章绪论 来为后续r r f i o 系统的介绍,奠定模型基础。 第三章主要讨论由本课题组自主开发的“支持快速流程重组的工作流管理 系统r r f o ”。作为r r f l o 的核心部件一工作流引擎r r f i o e n g ,则是本部分介 绍的重点。通过对r r f i o e n g 体系结构、功能模块的介绍,分析了引擎的流程推 动机制以及内部的数据交互。为工作流引擎规范接口的设计和实现提供了工作 流引擎原型支撑。 第四章是本文的重点,主要讨论对工作流引擎规范接口的设计和实现本 章首先提出“工作流应用编程接口一w a p r 的概念,结合w f m c 参考模型中5 大功能接口进行阐述。立足于r r f i o e n g 的所支持的功能,将引擎w a p i 根据功 能划分为四大类:过程定义w a ii 、工作流客户端功能w a p i 、应用程序调用功 能w a p i 和系统管理与监控功能w a p i 。紧接着,针对每一部分,结合r r f i o e n g 功能的具体实现方式,详细给出功能接口的设计和实现。 第五章给出r r f i o e n g 规范接口的应用实例。针对目前工作流技术应用的两 大方向:独立的工作流管理系统和工作流中间件集成系统,对本文设计和实现 的工作流引擎规范接口加以应用。本章中,着重描述了如何将规范接口应用于 独立工作流管理系统( 上海汽轮发电机厂报表审批系统) 中。同时,由于接口 调用方法的相似,所以简要概述其在其它应用系统中的应用。 第六章是本文的结束部分。对规范接口设计和实现过程进行了总结,并且 明确了进一步改进的方向。 9 第一章绪论 第一章课题背景及工作流技术概述 u 7 l工作流元模型l 第二章工作 l工作流参考模型i 流系统参考模 i参考模型体系结构i i 工作流管理系统功能模块l 、1w n 讧c 参考模型5 类接口i n 第三章面向快速流程重组的工作流管理系统r r f i o 7 陂圈。系统体系结构、特剧 l r r f l o e n g 体现结构、功能模块| r r f i o e n gh 任嘲o e n g 推动机制、数据交互l n 第四章r r f i o e n g 规范接口的设计与实现 l 过程定义w a p i l i 客户端功能w a p i l r r f i o e n g r a p i i 应用程序调用w a i l i 。i 系统管理与监控w a n i u 第五章r r f l o e n g 规范接口应用实例 , 上海汽轮发电机厂报表审批流程应用 实例 g d e 数据审批流程应用实倒 u 第六章全文总结和展望 图1 3 论文的研究内容与框架 l o 第二章工作流管理系统参考模型 第二章工作流管理系统参考模型 各种不同类型的系统各有其不同的特点,这就给不同工作流产品的互操作 性带来了很大的不方便性。因此,无论从用户的角度来讲,还是从开发者的角 度来讲,追切需要个大家共同遵守的标准;按照此种标准来决定一个w f m s 应该包含哪些组成部分,各部分应当提供哪些标准的服务。按照此种标准开发 出来的w f m s 将能满足上面提出的要求。在这种背景下,w f m c 关于w f m s 钓 参考模型应运而生。1 9 9 4 年1 1 月2 9 日,w f m c 发布工作流系统参考模型。它 详细描述了工作流系统的有关概念,并在此基础上给出w 砒s 的主要组成部分、 各部分的功能及相互之间的接口。 在w f m c 参考模型中,给出的关于工作流管理系统( w o r k f l o wm a n a g e m e n t s y s t e m ,w o o l s ) 的定义是嘲:工作流管理系统是一个软件系统,它完成工作流的 定义和管理,并按照在计算机中预先定义好的工作流逻辑推进工作流实例的执 行。 相似地,g e o r g a k o p o u l o u s 给出的工作流的定义川:工作流是将一组任务( t 矧b 组织起来完成某个经营过程。在工作流中定义了任务的触发顺序和触发条件。 每个任务可以由一个或多个软件系统完成,也可以由一个或一组人完成,还可 以由一个或多个人与软件系统协作完成。任务的触发顺序和触发条件用来定义 并实现任务的触发、任务的同步和信息流( 数据流) 的传递;m ma l m a d c n 研 究中心给出的工作流定义网:工作流是经营过程的一种计算机化的表示模型,定 义了完成整个过程所需用的各种参数。这些参数包括对过程中每一个步骤的定 义、步骤问的执行顺序、条件以及数据流的建立、每一步骤由谁负责以及每个 活动所需要的应用程序。 现行的工作流管理系统产品,通常要参考一些标准的模型来进行设计,目 前主要有w f m c 和o m g 9 ( o b j e c tm a n a g e m e mg r o u p ,对象管理组织) 提出各 自的标准模型。在本人所在的课题组中,所开发的面向快速重组的工作流系统 r r f o ,就依据w t m c 参考模型,所以下文中将主要介绍w t c 的工作流参考 模型 第二章工作流管理系统参考模型 2 1 工作流元模型 每个工作流管理系统都暗含一个元模型,元模型是工作流过程建模语言的 核心,为工作流过程建模语言提供具体的建立结构,是用来定义语义模型的构 造( c o n s t r u c t ) 和规则0 1 n c ) 的,通常称为模型语言的定义模型 1 0 j 。工作流元模型可 以分为基于活动的、基于任务的、基于状态迁移的、基于关系和基于对话的等 许多类型,同一个工作流过程模型可以在统一框架的指导下根据不同人的理解 被不同的工作流建模语言表达并被不同的系统解释和实现,定义良好的工作流 元模型是工作流过程建模语言成功的保证工作流的元模型是用于描述工作流 内部的各个元素、元素之间关系及元素属性的 工作流元模型【1 1 】通常涉及相互关联的4 个子模型,即: ( 1 ) 过程定义模型;模型元素用于定义业务过程,控制工作流的执行。 c 2 ) 组织结构模型:描述单位、部门、人员的组织关系以及所担当的角色。 ( 3 ) 资源应用模型:描述流程中所设计的物质实体、组件工具。 ( 4 ) 相关数据模型:工作流“生产”和“消费”的数据以及它们的流动关系。 w f m c 工作流元模型是工作流管理联盟开发的,是一个基于活动的元模型。 它为工作流模型转换定义了基本的实体集和属性集,一个工作流过程由许多使 用工作流相关数据的活动组成,活动可以是子活动或者复杂活动。每一个过程 定义中,下边列出的实体都必须被定义,或者在过程定义时明确给出、或者直 接从包中继承、或者对包交叉引用,元模型如图2 1 所示。 第二章工作流管理系统参考模型 图2 1 中展示的实体主要包括: 活动:完成工作流的一个逻辑步骤,可提交给用户手工执行或直接调用程 序自动完成。 转移条件:从当前活动到下一活动流转或状态转移的规则,活动之f 司通过 转移相互联系。, 角色:把参与者与一系列活动相联系的机制,是活动的执行者。 工作流相关数据:活动行为决策、应用调用、任务转换中所涉及的数据信 息,有可能影响下一步任务的执行。 应用程序;主要描述用于完成业务过程所采用的工具和手段 上图展示了以上实体间的关系。在属性方面,每个实体都有自己的特征, 但有一些属性是相同的,如标识号( i d ) 、名称( n a m e ) 、描述( d e s c r i p t i o n ) 等。 值得注意的是每个实体都提供了待使用的扩展属性,这些属性可由工作流产品 的厂商定义,以便满足产品的特别需要。 w i m c 元模型采用x m l 过程定义语言x p d l ( x m lp r o c e s sd e f m i t i o n l a n g u a g e ) 1 1 2 来表述模型信息。 2 2 工作流参考模型 为了实现不同工作流产品之间的互操作,w f m c 在工作流管理系统的相关 术语、体系结构、应用编程接n ( w a p d 等方面制定了一系列标准。在w f m c 所 使用的众多准则中,有一个称为工作流参考模型( w o r k f l o w r e f e r e n c e m o d e l ) 1 “l 。 它是工作流管理系统结构的通用描述,其中总结了主要部件和相关接口,包括 五个基本部件和五个基本接口。图2 2 描述了该工作流参考模型。 该模型说明工作流系统的核心是工作流执行服务( w o r k f l o we n a c t m e n t s e r v i c e ) 。系统的这部分推动着流程在组织中的流转。执行服务确保按照正确的 次序由正确的人执行正确的活动。为此,必须使用由流程定义工具( p r o c e s s d e f i n i t i o nt o o l s ) 生成的过程定义和资源分类。除了描述过程和组织,这些工具 还经常为分析技术( 如仿真) 提供便利。工作项通过工作流客户应用程序提供 给雇员。通过选中一个工作项,雇员能够开始执行具体流程的特定任务。执行 任务时,有时需要启动应用程序。可以被工作流系统启动的所有应用程序被称 为被调用的应用程序( i n v o k e da p p l i c a t i o n s ) 。工作流跟踪、案例控制和员工管理 第二章工作流管理系统参考模型 则由所谓的管理和监控工具( a d m i n i s t r a t i o na n d m o n i t o r i n g t o o l s ) 支持切。 图2 2 工作流管理联盟的工作流参考模型 w f m c 工作流参考模型给出的五类接口1 1 1 l 为: ( 1 ) 接口l :工作流服务和工作流建模工具; ( 2 ) 接口2 :工作流服务和客户应用之间的接口,这是最主要的接口规范, 它约定所有客户方应用和工作流服务之间的功能访问方式; ( 3 ) 接口3 :工作流引擎和直接调用的应用程序之间的接口; ( 4 ) 接口4 :工作流管理系统之问的互操作接口; ( 5 ) 接1 2 15 :工作流服务和工作流管理工具之问的接口。 其中,接口1 为在不同物理或电子介质之间传递过程定义的信息提供了交 互的形式和a p i 调用;接口2 定义了通信建立、工作流定义操作等功能;接口3 激活应用程序的a p i 函数应覆盖的几个方面的功能;接口4 完成工作流执行服 务之问需要提供大量的w a p i 来实现互操作,无论是在两个工作流执行服务之间 的直接调用还是通过网关函数;接口5 主要实现对工作流的管理和监视。 工作流执行服务器周围的接口是w a p i ( w o r k f l o wa p i , ) ,通过这些接口可 以访问工作流系统的服务,这些接口还控制工作流控制软件与其他系统组件问 的交互。在这5 个接口中的许多功能,都是被2 个或更多个接口同时拥有的, 因此w a p i 可以看作是统一的服务接口,可以交叉使用这5 个接口来支持工作流 管理功能,而不是单独的使用其中某个接口 1 4 第二章工作流管理系统参考模型 2 3 工作流参考模型体系结构及组成 为了能更好地支持企业经营过程建模、分析和实施,适应世界市场的多元 化趋势,需要建立工作流管理系统的相关标准,从系统结构、术语使用、接口 实施方面提供标准化与规范化的定义,并以此为基础实现不同工作流产品之间 的互操作,方便与其他应用系统的集成。工作流管理联盟提出了有关工作流管 理系统的一些规范,定义了工作流管理系统的体系结构及其与应用、管理监控 工具和其他工作流管理系统之间的应用编程接口。 图2 3 所示为w f m c 提出的工作流参考模型的体系结构图嘲【。该参考模 型的体系结构给出了抽象的工作流管理系统的功能组成部件和接口,它能够满 足工作流管理系统合产品所应该具有的主要功能特征,可为实现工作流产品之 间的互操作提供公共的基础。必须指出,组成w f m s 的每个功能部件可以在不 同的软硬件平台上采用不同的方法实现,同样接口也可以在不同的软硬件平台 上采用不同的设计技术和编程语言进行编程。 图2 3 通用工作流管理系统体系结构图 工作流管理系统经过对业务、公文流转过程的分析以及抽象,围绕着业务 第二章工作流管理系统参考模型 交互逻辑、业务处理逻辑以及参与者三个问题迸行解决,业务交互逻辑对应的 为业务的流转过程,在工作流管理系统中对应的提出了工作流引擎、工作流建 模工具、流程操作来解决业务交互逻辑的问题;业务处理逻辑对应业务流转过 程中的表单、文档等的处理。在工作流管理系统中对应的提出了表单设计器、 与表单的集成来解决业务处理逻辑的问题;参与者对应的为流转过程中环节对 应的人或程序,在工作流管理系统中通过与应用程序的集成来解决参与者的问 题。 工作流管理系统为方便业务交互逻辑、业务处理逻辑以及参与者的修改, 多数通过提供可视化的流程建模工具以及表单设计器来实现;为实现工作流管 理系统的扩展性,多数提供了一系列的a p i 。 一个完整的工作流管理系统通常由工作流引擎、工作流过程建模工具、流 程操作、工作流客户端程序、流程监控、表单设计器、与表单的集成以及与应 用程序的集成八个部分组成。 1 工作流引擎 工作流引擎作为工作流管理系统的核心部分,主要提供了对于工作流定义 的解析以及流程流转的支持。工作流定义文件描述了业务的交互逻辑,工作流 引擎通过解析此工作流定义文件按照业务的交互逻辑进行业务的流转,工作流 引擎通常通过参考某种模型来进行设计,通过调度算法来进行流程的流转( 流程 的启动、终止、挂起、恢复等) ,通过各种环节调度算法( s p l i t 、a n d 、o r 等) 来实现对于环节的流转( 环节的合并、分叉、选择、条件性的选择等) 2 工作流过程建模工具 工作流过程建模工具为可视化的流程设计工具,用户通过拖放等方式来绘 制流程,并通过对于节点的配置来实现对于节点操作、节点表单、节点参与者 的配置。 工作流过程建模工具为用户以及开发商提供了快速绘制、修改流程的方式, 工作流过程建模工具的好坏决定到工作流管理系统的易用性。按照实现方式和 采用的架构可以分为独立的过程建模工具和b s 结构的建模工具。 3 流程操作 流程操作指所支持的对于流程环节的操作,如启动流程、终止流程、挂起 1 6 第二章工作流管理系统参考模型 流程、直流、分流( 单人办理) 、并流( 多人同时办理) 、联审等,象这些流程操作 都是可直接基于引擎所提供的环节调度算法来直接支持的,而在实际的需求中, 通常需要自由的对于流程进行干涉,如取回、回退、跳转、追加、传阅、传阅 抒理等,而这些流程操作对于工作流引擎来说是不合理的,因此必须单独的去 实现。流程操作支持的好坏直接决定了一个工作流管理系统的实用性。 4 工作流客户端程序 工作流客户端程序为工作流系统的表现形式,通常使用w e b 方式进行展现, 通过提供待办列表、已办列表、执行流程操作、查看流程历史信息等来展现工 作流系统的功能 5 漉程监控 流程监控通过提供图形化的方式来对流程执行过程进行监控,包括流程运 转状况,每个环节所耗费的时问等等,而通过这些可相应的进行流程的优化。 以提高工作效率。 6 表单设计器 表单设计器为可视化的表单设计工具,用户通过拖放的方式来绘制业务所 需的表单,并可相应的迸行表单数据的绑定。 表单设计器为客户以及开发商提供了快速修改表单的方法,表单设计器的 易用与否以及功能的完善与否影响到工作流管理系统的易用性。 7 与裹单的集成 通常业务流转需要表单来表达实际的业务,因此需要与表单进行集成来实 现业务意义。与表单的集成通常包括表单数据的自动获取、存储、修改,表单 域的权限控制、流程相关数据的维护以及流程环节表单的绑定。 与表单的集成的好坏影响到工作流管理系统是否能提高开发效率。 8 与应用程序的集成 通过与应用程序的集成来完善工作流管理系统的业务意义,主要涉及到的 是与权限系统以及组织机构的集成。流程环节需要相应的绑定不同的执行角色, 而流程操作通常需要与权限系统、组织机构进行关联 1 7 第二章工作流管理系统参考模型 从图2 3 可以看出,通用工作流系统的主要功能组件有三类: 软件组件:为工作流管理系统的各种功能提供支持; 各种类型的系统定义和控制数据:被一个或多个软件组件所使用; 应用程序和应用程序数据:对于工作流管理系统来说,它们其实并不 是工作流产品的组成部分,而是属于外部系统和数据,但是它们会被工作流产 品调用来完成全部或部分工作流管理的功能,从而成为整个工作流系统的一部
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 水族馆展示缸打蜡保护与清洁协议
- 高端写字楼租赁及综合服务合同范本
- 知识产权纠纷调解与保密合同
- 重庆社区考试试题及答案
- 2025年首脑礼仪考试题及答案
- 土木专业测试题及答案解析
- 幼教专业即兴面试题及答案
- 刘馨教授解读指南健康领域
- SMT设备工程师述职报告
- 急性坏死性肠炎患儿护理要点
- 2025年公文写作试题及答案解析
- 2025江西南昌市西湖城市建设投资发展集团有限公司及下属子公司招聘40人备考考试题库附答案解析
- 2025年工程物探试卷及答案
- 医院后勤考试题库及答案
- 2025至2030中国农业观光园行业发展趋势与产业运行态势及投资规划深度研究报告
- 2025新疆伊犁州伊宁市中小学招聘各学科编外教师考试模拟试题及答案解析
- 2025年军休服务管理机构招聘面试中常见陷阱问题解析与应对方法
- 信息系统维护与升级管理模板
- 2025年南京市事业单位招聘考试卫生类临床医学专业知识试题
- 图解2025年9月10日第41个教师节全文
- 低空旅游项目基础设施建设与可行性研究报告
评论
0/150
提交评论