(计算机系统结构专业论文)基于关系数据库的轻量级工作流引擎研究与设计.pdf_第1页
(计算机系统结构专业论文)基于关系数据库的轻量级工作流引擎研究与设计.pdf_第2页
(计算机系统结构专业论文)基于关系数据库的轻量级工作流引擎研究与设计.pdf_第3页
(计算机系统结构专业论文)基于关系数据库的轻量级工作流引擎研究与设计.pdf_第4页
(计算机系统结构专业论文)基于关系数据库的轻量级工作流引擎研究与设计.pdf_第5页
已阅读5页,还剩54页未读 继续免费阅读

(计算机系统结构专业论文)基于关系数据库的轻量级工作流引擎研究与设计.pdf.pdf 免费下载

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

文档简介

重庆大学硕士学位论文中文摘要 摘要 工作流是种反映业务流程的计算机化的模型,是为了在先进计算机环境下 实现经营过程集成和经营过程自动化而建立的可由工作流管理系统执行的业务模 型。工作流引擎是工作流管理系统的后台核心,工作流引擎的设计是工作流管理 系统设计实现的关键所在。工作流引擎根据建模工具建立的过程模型来推进过程 的执行,并给相应的人员分配任务,从而达到提高工作效率的目的,它为管理系统 提供一系列通用的服务,以实现各种管理系统的具体应用。 针对目前工作流系统普遍存在的柔性差、互操作性差等缺点,通过对 w f m c 的工作流标准进行分析,本论文提出了基于关系数据库的轻量级工作流引 擎并深入研究了它所采用的关键技术。为此本文主要做了以下几方面的研究工作: 1 通过对工作流技术的全面阐述,分析了工作流目前发展的现状和不足,为 自己的相关研究工作划定了问题域范围; 2 介绍了基于关系数据库的工作流引擎所支持的工作流模型体系,并详细介 绍了各个子模型,在实现工作流模型基本功能的前提下,提出了工作流的继承体 系、版本管理等概念。 3 从企事业一般业务需求入手,抽象出工作流对象,分析它们之间的逻辑关 系,组成工作流模型,提出一个系统结构,进行模块划分,数据库设计,类的设 计,最后利用j 2 e e 技术,用m ss q l s e r v e r 2 0 0 0 作后台数据库,j b u i l d e r 9 0 作 开发工具,v s s 作版本控制,实现工作流引擎的开发。 4 从工作流应用对工作流异常处理的实际需求出发,对工作流异常处理问题 进行综述。 关键字:轻量级,工作流引擎,工作流模型,工作流实例,异常处理 重庆大学硕十学位论文英文摘要 t h ew o r k f l o wi sac o m p u t e r i z e dm o d e lw h i c hr e f l e c t st h eb u s i n e s sp r o c e s s ,a n di t i sa l s oab u s i n e s sm o d e l w h i c hc a nb ec a r r i e do u tb yt h ew o r k f l o wm a n a g e m e n t s y s t e m , s e t t i n gu pw i t ht h ep u r p o s eo fa c c o m p l i s h i n gt h ei n t e g r a t i o na n da u t o m a t i o no ft h e m a n a g e m e n tp r o c e s su n d e rt h ea d v a n c e dc o m p u t e rc i r c u m s t a n c e s w o r k f l o we n g i n ei s t h ec o r eo fb a c k g r o u n di nw o r k f l o wm a n a g e m e n ts y s t e m ( w f m s ) d e s i g n i n gaw e l l w o r k f l o we n g i n ei st h ek e yt or e a l i z eaw f m s a c c o r d i n gt ow o r k f l o wp r o c e s sm o d e l s b u i l tb ym o d e l i n gt o o l s ,w o r k f l o we n g i n ec a np r o m o t et h ee x e c u t i o no fw o r k f l o w p r o c e s s e sa n da s s i g nt a s k st or e l e v a n tp e o p l e u s a b i l i t ya n de f f i c i e n c yo fw f m sc a l l b ea d v a n c e de f f e c t i v e l y t h ew o r k f l o we n g i n eo f f e r ss e r i e so fc o m m o ns e m c e sf o rt h e m a n a g e m e n ts y s t e m sw i n lt h ep u r p o s eo f b r i n g i n ga l lk i n d so f m a n a g e m e n ts y s t e m st o b ea p p l i e dc o n c r e t e l y b yd i s c u s s i n gt h ew e a k n e s so ff l e x i b i l i t ya n dc o o p e r a t i o ni nw f m sa tp r e s e n ta n d a n a l y z i n gt h ew o r k f l o ws t a n d a r d si s s u e db yw f m c ,t h i sd i s s e r t a t i o np r o p o s e san e w w o r k f l o we n g i n eb a s e do nr e l a t i o n a ld a t a b a s ea n dt a k e ss o m ed e e pr e s e a r c h t h e m a i nc o n t e n t so f r e s e a r c hi nt h i sd i s s e r t a t i o na r ea sf o l l o w : 1 ) a n a l y z et h ec u r r e n ts t a t u sa n dt h es h o r t a g eo fw o r k f l o wd e v e l o p m e n tb y i n t r o d u c i n gt h ew o r k f l o wt e c h n o l o g i 鹤d e t a i l a d ,w h i c hd r a w st h ed e m a r c a t i o no f c o n o _ :e i t i e di s s u e si nr e s e a r c h 2 ) p r o p o s ean e wl i g h t w e i g h tw o r k f l o we n g i n eb a s e do nr e l a t i o n a ld a t a b a s e , i n t r o d u c et h ef r a m e w o r ko fe n g i n ea n dt h ew o r k f l o wm o d e l s s u p p o r tb yt h i s a r c h i t e c t u r e n o to n l yr e a l i z et h eb a s i cf u n c t i o n so f w o r k f l o wm o d e l s ,e n g i n ec a na l s o s u p p o r ta l li n h e r i t e da r c h i t e c t u r eo f w o r k f l o wm o d e l s 3 ) o b t a i nf x o mg e n e r a lb u s i n e s ss e r v i c ed e m a n d , a b s t r a c tt h eo b j e c tt h ew o r k f l o w , a n a l y s i sl o g i c a lr e l a t i o n sb e t w e e nt h e m ,c o m p o s ew o r k f l o wm o d e l ,p r o p o s e sas y s t e m s t r u c t u r ea n dc a r r y0 1 1t h em o d u l ed i v i s i o n ,t h ed a t a b a s ed e s i g na n dt h ec l a s sd e s i g n f i n a l l y n s et h ej 2 e e t e c h n o l o g y , m a k et h e b a c k s t a g e d a t a b a s ew i t l l m s s q l s e r v e r 2 0 0 0 ,m a k et h ed e v e l o p m e n tk i t 嘶t l lj b u i l d e r 9 0 ,m a k et h ee d i t i o n c o n t r o lw i t hv s sa n dr e a l i z et h ed e v e l o p m e n to f t h ew o r k f l o we n g i n e 4 1i n t r o d u c et h es o l u t i o no f e x c e p t i o nh a n d l i n go f t h ew o r k f l o w k e y w o r d s :l i g h t w e i g h t ,w o r k f o we n g i n e ,w o r k f l o wm o d e l ,w o r k f l o wi n s t a n c e , e x c e p t i o n - h a n d l i n g i i 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取 得的研究成果。据我所知,除了文中特别加以标注和致谢的地方外,论文 中不包含其他人已经发表或撰写过的研究成果,也不包含为获得重庞太堂 或其他教育机构的学位或证书而使用过的材料。与我一同工作的同志对本 研究所做的任何贡献均已在论文中作了明确的说明并表示谢意。 学位论文作者签名:炽迎弁签字日期:j 1 年jj e j 一, 日 学位论文版权使用授权书 本学位论文作者完全了解 重庞太堂有关保留、使用学位论文的 规定,有权保留并向国家有关部门或机构送交论文的复印件和磁盘,允许 论文被查阅和借阅。本人授权重庆太堂可以将学位论文的全部或部 分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段 保存、汇编学位论文。 保密() ,在年解密后适用本授权书。 本学位论文属于 不保密( 一) 。 ( 请只在上述一个括号内打“4 ”) 学位论文作者签名:;i :踅砰 签字日期:卅年f 月:。日 导师签名: 签字日期:1 刀置f 月歹白 重庆大学硕士学位论文 1 绪论 1 绪论 1 1 工作流的起源及发展 工作流是一种反映业务流程的计算机化的模型( “。它的目标是使企业中大量 基于知识与规则的任务和活动能够相互协调一致、高效运作,在正确的时间能够 将正确的信息传递给正确的人。工作流是一个年轻却又具有良好发展前景的研究 方向。它源于计算机软件的商业应用,是一个多学科交叉的新领域,涉及计算机 科学与管理科学的多种原则、方法与技术,包括数据库、形式化描述语言、应用 与系统的集成、软件工程、文档管理、组织与资源管理、仿真技术、企业重组、 分工协作等。工作流管理技术是一种有效的控制和协调复杂活动的执行、以及人 与应用软件之间交互的信息技术手段。它在企业的业务流程建模、分析、优化和 重组等方面也发挥着重要作用。越来越多的企业将采用工作流管理技术来提升企 业管理信息系统设计和实施水平,以及利用工作流管理技术来进行业务流程重组。 所以,对工作流技术进入深入的研究对提高我国企业的信息化程度、运行效率及 竞争能力都也有着重要意义。 工作流的概念最早起源于生产组织和办公自动化领域。它是针对日常工作中 具有固定程序的活动而提出的一个概念。工作流系统通过将工作分解成定义良好 的任务和角色,按照一定的规则和过程来执行这些任务,并对它们进行监控,从 而达到提高办事效率、降低生产成本、提高企业生产经营水平和企业竞争力的目 的。实际上,自从进入工业化时代以来,有关过程的组织管理与流程的优化工作 就一直在进行,这是企业管理的主要研究内容之一。 2 0 世纪8 0 年代初期,在个人计算机尚未作为信息处理工具出现的时候, 人们为了提高信息收集、处理、存储、应用、传递、共享的效率,而希望建立一 种无纸化的计算机工作环境,于是一些公司建立了自己专用的或可商品化的表单 传递应用系统( f o r m s r o o t i n ga p p l i c a t i o n ) ,这些系统通常运行在大型机或小型机 上,用于实现日常表单处理的电子化和自动化,这种系统可以看成是现代工作流 管理系统的一个雏形【”。 2 0 世纪8 0 年代中期,f i l e n e t 和v i e w s t a x 等图形化处理公司率先开拓了 工作流产品市场,成为最早的一批工作流产品供应商。他们把图像扫描、复合文 档、结构化路由、实例跟踪、关键字索引以及光盘存储等等功能结合在一起,形 成一种用于文档处理的图像处理系统,它可以把扫描得到的计算机文档,按照一 定的规则发送给相关人员,这便是早期的工作流管理系统。f i l e n e t 于1 9 8 4 年推 出的w o r k f l o wb u s i n e s ss y s t e m 、v i e w s t a r 于1 9 8 8 年推出的v i e w s t a r 、 重庆大学硕士学位论文 1 绪论 a c t i o n t e c h o n o g y8 0 年代推出的c o o r d i n a t o r ,便是其中的典型代表”j i “。 进入2 0 世纪9 0 年代,随着计算机的普及,计算机网络技术的迅速发展, 企业的信息化程度提高,企业信息资源越来越表现出一种异构分布、松散耦合的 特点。企业的分散性、决策制定的分散性和对日常事务活动详尽信息的需求,以 及c l i e n t s e r v e r 体系结构,分布式处理技术( c o r b a 、w w w 、c o m d c o m 、j a v a ) 的日益成熟,都说明了这样一个事实:集中式信息处理的时代已经过去,实现大 规模、异构、分布式执行环境,使得相互关联的任务能够高效运转并接受密切监 控成为一种趋势。h t t c m c t 的发展和普及为电子商务( e c o m m e r c e ) 提供了技术可 能,电子商务的独特优势是必将成为未来商务活动的新模式。而电子商务的重要 功能就是商务流程的管理和监控,如企业供应链管理系统s c m ( s u p p l y c h a i n m a n a g e m e n t ) 和企业客户关系管理 c r m ( c u s t o m e rr e l a t i o n s h i p m a n a g e m e n 0 。 在这种技术背景下,工作流管理系统也由最初的无纸化办公环境转而成为实 现业务流程自动执行的必要工具。这样的一个转变也把工作流技术带入了一个崭 新的阶段,使得人们对工作流从更深层次、更广领域上对工作流展开了广泛的研 究工作。 1 9 9 3 年工作流技术的标准化组织工作流管理联盟w f m c ( 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 的宗旨是促进工作流的应用,并制定了 工作流技术的一系列标准。 虽然工作流产品已逐渐成为许多学者研究的热点和被许多供应商看好的渐 趋热点i t 市场产品。但是当前的工作流管理技术和产品距理想工作流产品尚有 较大的差距,不过随着工作流理论研究的完善和技术产品的成熟,工作流系统被 认为必将成为企业信息环境中不可或缺的软件平台。t h o m a s k o u l o p o u l o s l 5 1 预言工 作流系统将最终成为覆盖各类台式机与网络操作系统之上的业务操作系统 b o s ( b u s i n e s so p e r a t i o ns y s t e m ) ,将带来操作系统、信息管理软件的次革命, 乃至在将来从企业应用步入家庭应用,成为新时代的家庭信息平台f i p ( f a m i l y i n f o r m a t i o np l a t f o r m ) 。 当前工作流管理系统在许多企业信息系统中已得到了一定的应用,如:图像 处理领域、文档管理系统、产品数据管理系统、群件系统,电子商务领域、e r p 系统等。工作流管理系统最直接的用途就是和企业业务流程重构b p r ( b u s i n e s s p r o c e s sr e - e n g i n e e r i n g ) 技术相结合管理企业的各种流程,实现企业流程的自动化。 工作流是业务流程重构技术的实现和延伸。此外当前企事业单位存在大量的老旧 2 重庆大学硕士学位论文 1 绪论 应用系统,各个不同企业间的应用系统存在更加大的区别。针对解决这类“信息孤 岛”的问题,人们提出了许多信息集成的框架,如基于x m l 的信息集成框架、 基于s t e p 标准的工程信息集成框架,纵观这些技术我们认为,它们多局限于静 态信息的交换格式的定义,而对于各个应用系统间相互协作共同完成某项任务的 情形却考虑较少,这种情况下需要多个应用系统按照结构化或非结构化流程来协 同工作,在任务的不同时间激活不用的应用系统,并向应用系统传递相应的参数, 而工作流技术正好满足了这一要求。工作流管理系统可以按照流程的定义,在适 当的时间激活相应的应用系统,传递相应的参数,获取应用系统的处理结果,把 其传递到下一应用,从而实现应用系统的集成。 1 2 国内外研究现状及其不足 工作流的概念起源于生产组织和办公自动化领域【7 l 。它是针对日常工作中具 有固定程序的活动而提出的一个概念。提出的目的是通过将工作分解成定义良好 的任务、角色,按照一定的规则和过程来执行这些任务并对它们进行监控,达到 提高办事效率、降低成本、提高企业生产经营管理水平和企业竞争力的目标。实 际上,自从进入工业化时代以来,有关过程的组织管理和流程的优化工作就一直 在进行,它是企业管理的主要研究内容之一。 进入2 0 世纪9 0 年代,随着计算机和网络技术的迅速发展,特别是在i n t e r n e t 应用日益普及的情况下,工作流技术得到长足的发展。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 , w f m c ) 。此后,该组织颁布了一系列工作 流产品标准,包括工作流参考模型、工作流术语表、工作流管理系统各部分间接 口规格、工作流产品的互操作性标准等。这些举措加速了工作流技术的商品化。 现在,许多公司都基于这些标准推出了自己的工作流产品。 综合考察目前的工作流产品市场,可以根据所实现的业务过程、底层实现技 术及任务项传递机制这三种分类方法对工作流管理系统及其产品进行分类。 根据所实现的业务过程,工作流管理系统可分为四类: 管理型工作流( a d m i n i s t r a t i v ew o r k f l o w ) :在这类工作流中,活动可以预定义 并且有一套简单的任务协调规则: 设定型工作流( a dh o ew o r k f l o w ) :与管理型工作流相似,但一般用来处理异 常或发生机会比较小的情况,有时甚至是只出现一次的情况,这与参与的用户有 关: 协作型工作流( c o l l a b o r a t i v e w o r k f l o w ) :参与者和协作的次数较多。在一个步 骤上可能反复发生几次直到得到某种结果,甚至可能返回到前一阶段; 生产性工作流( p r o d u c t i o nw o r k f l o w ) :实现重要的业务过程的工作流,特别是 重庆大学硕士学位论文1 绪论 与业务组织的功能直接相关的工作流。与管理型工作流相比,生产型工作流一般 应用在大规模、复杂的和异构的环境下,整个过程会涉及许多人和不同的组织。 根据底层实现技术,可将工作流产品分为三类: 以通讯为中心:以电子邮件为底层的通讯机制。这种类型的工作流管理系统 适合于协作型工作流和不确定型工作流,而不适合生产型工作流; 以文档为中心:基于文档路由,它同外界应用的交互能力有限。许多基于表 的管理型工作流可以用以文档为中心的工作流实现; 以过程为中心:这种工作流系统对应生产型工作流。它们一般建立在数据库 之上,有自己专用的通信机制并且提供了同外部进行交互的接口。 根据不同工作流系统所采用的任务传递机制的不同,市场上的工作流产品有 可以划分为四类: 基于文件的工作流系统:以共享文件的方式来完成任务项传递。这种类型产 品开发得最早、发展最成熟、其产品品种较多; 基于消息的工作流系统:通过用户的电子邮件系统来传递文档信息。这种类 型的产品一般都提供与一种或多种电子邮件系统的集成接口; 基于w e b 的工作流系统:通过w w w 来实现任务的协作。这一类产品起步 较晚( 在9 5 年以后) ,但是发展迅速,其市场前景十分看好。许多供应商纷纷改进 原有产品或开发新产品以增加对w e b 的支持; 群件与套件系统:虽然这一类产品与上面介绍的三类产品在任务传递方式上 有很大程度的重叠,但是在这里却有必要把它们单独划分成一类,因为这一类产 品都需要依赖于自己系统的应用基础结构,包括消息传递、目录服务、安全管理、 数据库与文档管理服务等,它们本身就构成了一个完整的应用开发环境。 目前,市场上工作流产品发展迅速,比较著名的有i b m 的m q s e r i e s w o r k f l o w , u l t i m u s 的u l t i m u sw o r k f l o ws u i t e , a c t i o nt e c h n o l o g i e si n c 的m e t r o 等。 其功能特性分述如下; m q s e r i e s w o r k f l o w 是i b m 公司推出的最新工作流管理产品,是i b m 的 商业集成软件m q s e r i e s 中的一部分。m q s e r i e s w o r k f l o w 是以i b m 的消息队列产 品m q s e r i e s 为底层支持,m q s e r i e s 为m q s e r i e sw o r k f l o w 中的各个部分提供可 靠的消息队列。整个系统是通过消息队列来进行通信联系,因此不需要i d l 调用 或r p c 等其它通信机制。 m q s e r i e sw o r k f l o w 是i b m 公司在f l o w m a r k 基础上进行改进后得到的工作 流产品。它属于生产型的工作流管理系统。f l o w m a r k 的主要目标是实现企业的文 档路i 扫( d o e u m e n t r o u t i n g ) 和过程自动化( p r o c e s sa u t o m a t i o n ) ,这也是传统的工作流 产品的典型特点。m q s e r i e sw o r k f l o w 不仅考虑了企业对于数据传输的要求,还 4 重庆大学硕士学位论文 1 绪论 为整个企业内人员、数据、应用和经营过程的管理提供了一个过程自动化的系统 工具。它还允许外部人员通过i n t e m e t 或i n t r a n n 参与到企业的经营过程中。 m q s c r i c sw o r k f l o w 能够支持多种操作系统,允许客户端和服务器实现跨平台操 作,它能够对各种异常情况进行有效的处理。这使得m q s c r i c sw o r k f l o w 适合需 要大量人员合作和需要集成异构应用( 如供应链管理、保险业、订单管理、信用卡 管理等等) 的企业和机构。m q s c r i e sw o r k f l o w 的目标是方便地对企业内的各种经 营过程进行重组,将企业内的各种异构的应用程序集成起来,最终实现电子商务。 u l t i m u s 的u l t i m u s w o r k f l o ws u i t e 是一套具有弹性化结构,操作简便并支 持i n t e r n e t i n t r a n e t 的企业工作流自动化系统。是一套结合m i c r o s o f tb a c k o 衔c e 与 i n t e r n c t 技术,能提供企业明显效益且易于导入的工作流程自动化解决方案。 u l t i m u s w o r k f l o ws u i t e 不需要任何程序编写,便能提供完成的i n t c r n e t i n t r a n c t 工 作流管理功能,透过m i c r o s o r a c t i v e ) ( 与j a v a s c r i p t 技术,u l t i m u s 使得企业用户 能以图形操作界面设计、测试、模拟、监控与评价工作流程,并能让使用者通过 w e b 浏览器填写电子表单及使用工作流所有功能,是一个基于w e b 的工作流产品。 u l t i m u s 特别适用于企业将i n t a n e f f i n t r a n c t 与日常管理或办公自动化结合的工作。 a c t i o n 技术公司为知识工程师提供了一套基于w e b 的工作流管理软件 a c t i o n m c t r o 。它不仅能够管理确定的过程,并且对过程中不可预见的问题、要求 和机遇也可以进行控制,还为用户提供了管理不确定的协作和任务的工具。用户 可以用a c t i o n 技术公司提供的工具在整个企业甚至企业之间建立一个基于w e b 或c s 的工作流管理环境。a c t i o n 技术公司的产品将i n t e r n e t 技术与s q l 的事务 处理技术结合起来,提供了内置的安全措施,即使对于最复杂的、广泛分布的和 需要不断修改的工作流也能保证经营过程的一致性。其产品能够运行在多个服务 器的分布环境下,支持各种工业标准,如o d b c ,j a v a , a e t i v e xc o r b a ,s m t p , m i m e 等,具有良好的可扩展性和灵活性,从而可以保证用户在1 1 r 方面的投资得 到充分的利用。 a c t i o n 技术公司的工作流产品基于对话行为的模型,在活动的请求者和活动 的执行者之间要对完成的活动达成协议,基于对话机制的模型强调让用户满意, 而不是完成某一项任务。在对话行为模型中,在请求者和完成者之间需要四个交 互步骤来完成一个活动:首先活动的请求者请求活动的完成者完成一项任务,接着 双方对于要完成的活动和活动是否满意的条款达成一致,然后活动的执行者完成 该项任务,最后活动的请求者对于活动的完成情况是否满意给出评价。与传统的 工作流技术相比,a c t i o nm e t r o 更适合于基于知识的工作流,它能够较好地支持 用户与信息源之间的交互( 如信息获取、用户协商、发现并解决问题、进行汇报等) 。 工作流技术在国内的研究起步较晚,产品相对较少,一方面对工作流技术认 重庆大学硕七学位论文1 绪论 识不够重视,另一方面与国内系统软件开发能力不足有关。但是已经有一些公司 开发出了工作流产品。如: 西安协同数码股份有限公司与西北大学开始合作开发出了s y n c h r o f l o w - 协 同工作流管理系统; 重庆长松网络信息有限公司开发出了c s n c tc b p a3 0 长松通用工作流支撑平 台,以及基于该平台的业务流程自动化管理系统; 上海维泰软件公司开发的工作流程管理软件w i s e f l o w o ; 清华大学计算机系在国家高技术研究发展计划( 8 6 3 ) 计划资助下开发的一个基 于w w w 的工作流管理系统w o w w w ! 。 目前工作流系统的应用虽然随着各种各样采用新技术的系统的推出得到越来 越广泛的应用,但是总得来说工作流系统的应用还是处于一个非常谨慎的状态, 根本原因就是当前的工作流系统存在着各种各样的缺陷或者说不足: 工作流运行必须要有底层的通信基础结构的支持:也就是说,工作流系统 必须要建立在适当的底层通信基础之上,以便实现执行工作流所需要的分布计算 环境。比如,c o r b a 、d c o m 、j 2 e e 都是可以选择的,但是,就目前能够实现 分布计算环境的产品来看,他们在实际应用中仍然显得不够成熟,而且在价格上 也给企业造成一定的负担。企业若想部署工作流管理系统,还必须要格外付出经 费与精力去构筑底层环境,这种情况是企业所不希望的,实际上它也限制了工作 流管理系统在企业的广泛应用。 标准化程度差:不同的厂商所提供的工作流产品具有自己独立的一套工作 流模型、工作流定义语言以及a p i 函数。在缺乏标准的情况下,用户一旦选定 一种产品之后,就很难再过渡到其它同类产品上了;而且不同的系统之问缺乏互 操作的接口,使得用户有很多后顾之优。 性能问题:目前大多数工作流产品无法满足企业每天处理上万个,甚至每 小时处理几千个业务的需求。 柔性问题:无论是过程模型的表示还是角色解析,现有的工作流系统表现 出柔性差的特点。一些企业的实际应用常常有对执行路由的动态需求以及工作项 执行人的动态选派,对于这些需求现在的工作流系统都不能很好的给予支持。 鲁棒性问题:工作流系统在企业的实际应用中,常常会由于某些非常规的 操作,造成流程执行的错误。这些非常规操作包括流程定义的不合法性、操作的 时间过长等等。对于这些错误问题的妥善解决也是以后的工作流系统需要做的工 作。 工作流技术尚不成熟:目前没有一种工作流产品或原形系统能够在过程执 行的可靠性达到与关系数据库管理系统同水平的功能。 6 重庆大学硕十学位论文 1 绪论 1 3 本文研究内容 针对关键业务应用的开发离不开工作流技术的支持,通过对关键业务的实 际开发需求的分析,在传统的关系数据库基础上,提出了一个适用于关键业务开 发的基于关系结构的轻量级工作流引擎的框架结构,并深入讨论了采用关系结构 和轻量级理念来设计工作流引擎的原因,并详细地给出了相关的机构模型、信息 模型和控制模型的设计原理而且将研究内容主要集中在 第一章主要介绍了工作流的起源以及发展现状。 第二章主要介绍了工作流的一些基本概念以及基于关系数据库的轻量级工 作流引擎的体系结构。 第三章主要介绍了基于关系数据库的轻量级工作流引擎系统的分析与设计 第四章主要介绍了基于关系数据库的轻量级工作流引擎系统的具体实现。 第五章本章结合了当前工作流系统中事务研究的成果,提出了工作流引擎 系统的异常处理机制。 第六章对基于关系数据库的轻量级工作流引擎的体系进行综合评价,指出其 不足之处。 第七章对基于关系数据库的轻量级工作流引擎的体系的研究设计进行总结 并对今后的研究方向进行展望。 1 4 本章小结 在阐述了工作流的起源与发展的基础上,本章首先介绍了工作流系统在各个 行业中的应用,目前工作流研究的现状以及不足之处,最后提出了本文研究的主 要内容。 7 重庆大学硕七学位论文2 基于关系数据库的轻量级- 亡作流引擎体系结构 2 基于关系数据库的轻量级工作流引擎体系结构 2 1 工作流及有关概念 2 1 1 工作流基本概念 工作流技术是一项快速发展的技术,它是自动运作的业务过程的部分或整体, 表现为参与者对文件、信息或任务按照规程采取行动,并令其在参与者之间传递。 简单地说,工作流就是一系列相互衔接、自动进行的业务活动或任务【8 】。 工作流经常与“过程重组( 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 r i n g ) ”联系在一起。 b p r 是关于企业( 组织) 核心业务过程的评估、分析、模拟、定义以及其后的操作 实现。尽管,不是所有的b p r 都是采用工作流实现的,但是工作流技术是最佳 的方法,主要因为工作流技术提供了业务过程逻辑与i t 操作支持的分离,从而 以后可以修改过程规则来重定义业务过程。相反,工作流技术并不只在b p r 中 采用。 随着工作流这一概念的出现,作为支撑工作流的软件系统工作流管理系 统( w f m s ) ,通过详细定义、管理并执行 w o r k f l o w s ,并通过运行一些软件来执 行工作流。因此,工作流管理系统在很大程度上,为企业业务系统的运行提供了 一个软件支撑环境。一个单个的商务过程可以有一个生命周期,根据其复杂性, 即不同的组成活动的持续时间,该周期可以从几分钟到几天甚至几个月。因此, 这样的工作流管理系统可以有许多不同的实现方法。 虽然不同的工作流管理系统具有不同应用范围和不同实施方式,但他们还是 具有许多相同的特性。工作流参考模型描述了工作流系统的个公共模型,通过 抽象发现在最高层,所有的w f m s 都有相同的特性。一般都提供了下三个方 面的功能支持: 建立阶段的建模功能( b u i l d t i m e ) :包括组织成工作流过程的活动以及执行 逻辑关系的定义。 运行阶段的控制功能( r u n - t i m e ) :包括实例化并执行工作流过程,以及对工 作流过程中的活动按建模中定义的执行逻辑进行调度执行。 运行阶段的交互功能:与用户和i t 应用工具之问的交互作用。 对于建立阶段的功能模块,主要适用于把现实世界的业务过程翻译成为正式 的有计算机处理的过程定义。这是通过使用分析,建模及系统定义技术来实现的。 作为这个功能模块的结果的定义叫过程模型、过程模版、过程元数据等。 过程定义的定义:是业务过程的计算机形式化的表示。他定义的是过程运行 中会涉及到的各种参数,如业务过程的开始和结束条件,各个工作环节及其相互 g 重庆大学硕士学位论文2 基于关系数据库的轻量级工作流引擎体系结构 之间的控制流动与数据流动关系等。 不同的工作流系统所实现的工作流模型是不相同的。早期的具有工作流管理 功能的应用中,这种表示是通过“硬编码”的方式完成。这导致修改工作流程发生 困难。后来的系统出现了采用有向图、p e t r i 网、对象模型、语言动作( l a n g u a g e a c t s ) 理论、基于约束条件的形式语言文法表示以及基于目标的表示等。这些系统一般 都提供一个可视化的业务过程建模工具,以便用户可以比较直观的对实际的业务 过程进行建模,并得到相应的形式化表示。好的过程模型应该具有比较强的描述 能力、易于使用、易于修改以便适应不断变化的工作环境的要求。 过程实例的定义【j 2 】:是某个工作流过程的第一次执行。在实例的执行过程中, w f m s 将解释相应的过程定义,生成有关的活动实例并根据过程定义中的控制规 则协调这些活动实例之间的顺序关系,同时根据数据流动关系的定义完成活动实 例之间的数据传送。一股情况每个活动实例都表现为一个工作项( w o r k i t e m ,它将 由某个或某组用户负责完成1 。因此,从用户角度说,实例的执行实际是由用户调 用相应的应用程序对他所涉及的那个环节有关的数据进行处理,处理完后由 w f m s 根据相应的结果决定激活后续的哪个活动并生成相应的工作项,同时,通 知与此有关的用户进行处理。由此一次反复进行直到整个过程的完成。某个用户 所负责的所有工作项将构成其工作项列表。那些被各环节所调用的应用程序所处 理的数据被称为工作流应用数据,其中将有一部分数据将同工作流过程定义一道 用于控制工作流的执行。这部分数据一般被称为工作流相关数据。 对于运行阶段的控制功能,它解释过程定义,并创建和控制过程的实例,调 动过程中的活动及调用恰当的人和i t 资源。他构成现实生活中的过程和真正运 行过程的桥梁。其核心组件是基本的工作流管理控制软件既工作流引擎。他是负 责过程创建、删除及对某过程中的活动进行调度并与人或i t 资源交互。引擎通 常是分布在多个平台上以支持地理上分布的工作组。 单个过程中的单个活动典型的要涉及人员操作,这通常包括由人员使用某个 i t 工具或用某个特定的应用程序在某些确定信息上对这些信息进行处理来实现。 而且在各种活动之间也必须和引擎交互以便传输控制并确保过程处于可操作状 态,以及调用某些应用工具和传递恰当数据等。因此如在这些类型的交互通知哪 个使用一个标准的框架,包括使用对多个工作流系统都一致的接口及与开发不同 的工作流参评协同工作的通用应用工具的能力是很有用的。 在参与这之间分布任务和信息是工作流运行时支撑结构的突出特点。分布功 能可以在不同层上实现,可以使用许多底层通信机制。 工作的流程可能涉及在不同的工作流产品之间进行任务传递以便支持当某些 业务工程的予过程使用与不同的平台并使用特定的产品的业务过程。如某过程中, 9 重庆大学硕士学位论文2 基于关系数据库的轻量级, 作流引擎体系结构 活动l ,2 可能有一个工作流系统执行,但是活动3 ,4 则由另外一个系统执行。 支持这种工作流控制转移的标准时的用不同的工作流产品作为一个逻辑实体共同 协作而形成一个新的复合工作流应用成为可能【1 4 】。 2 1 2 、阡m c 工作流参考模型 工作流参考模型【3 l 来源于对普通工作流程序结构的分析,确定结构中的接口, 这些接口可以使用不同产品在不同的接口层次上协同工作。所有工作流系统都包 含一系列的公共组件,组件间采用一套被定义好的方法进行协作:不同的产品在 这些公共的组件中,会表现出不同的处理能力。为了实现不同工作流产品间的协 同工作,需要在这些组件间制定一套标准的接口和数据交换格式。通过实现这些 标准接口,可以达到产品间的协同工作,如图2 1 。 图2 1 工作流参考模型 f i g2 1w o r k f l o wr e f e r e n c em o d e l 在工作流执行服务周围的接口统称为工作流应用接口w a p l ( w o r k f l o wa p i ) 和互换格式。这些可以看作一系列的结构,通过他们,工作流系统的服务可以被 访问并且可以控制软件和其他系统组件之间的交互。在这五个接口内的许多功能 是共享某些接口服务的。因此更恰当的是把w a p i 看成一个统一的服务接口,该 接口被用来跨越这五个接口区提供工作流管理功能,而不应该看作五个单独的接 口。 1 0 重庆大学硕士学位论文2 基于关系数据库的轻嚣级工作流引擎体系结构 2 2 基于关系数据库的工作流引擎体系结构 2 2 1 为什么要基于关系数据库 所谓基于关系的工作流引擎指的是工作流引擎中的数据模型( 即核心模型和 支撑模型) 全部通过关系结构来表达;控制工作流引擎运作的各种程序逻辑也是通 过常规关系数据库管理系统中所提供的存储过程、触发器等机制来实现;同时, 事务的并发控制也通过数据库系统所提供的机制来实现。 从技术角度来说,使用关系结构来表达工作流引擎中的数据模型可以降低工 作流引擎开发过程中的技术难度和工作量。具体表现在: 与工作流引擎相关的各种控制数据( 包括业务活动的状态数据) 可以存储 在数据库系统中; 与此相关的数据的完整性可以由数据库管理系统来维护; 利用关系结构可以方便地定义工作流引擎中的各种数据格式和数据结构: 可以方便地利用数据库管理系统提供的各种d m l 语句来操纵工作流引 擎所需的各种数据。 从开发应用系统的角度来看,在同一数据库环境下为开发者提供一个基于关 系结构的工作流引擎,并且如果这个工作流引擎所提供的功能可以方便地嵌入到 应用的开发环境中,则可以降低开发应用的难度。这是因为: 针对关键业务的应用系统通常会采用一个常规的关系数据库系统作为后 台的支撑; 应用系统的开发者往往会采用一种他们所熟悉的并且适合此数据库系统 的前端开发工具来开发具体应用,这些前端开发工具一个显著特征是开发功能强 大,但一般不具备工作流机制。 因此,采用基于关系结构的工作流引擎很容易与应用的开发环境做到无缝的 集成。 从引擎与应用系统集成的角度来看由于数据库管理系统所具有的技术特征。 使得基于关系数据库的工作流引擎与应用系统集成时,在许多方面的处理变得非 常简单。 事务处理。一方面,利用数据库系统的事务处理机制,保证了工作流管理 系统中某些操作的原子性;另一方面,尽量减少在工作流管理系统中不必要的事 务处理控制,从而为应用系统提供更多事务处理的灵活性。 异常处理。使用数据库异常处理机制,保证了工作流管理系统运行异常的 有效捕获。 互操作性。由于数据库系统具有丰富的标准访问方法,因此,能够很方便 地开发出符合互操作性标准的接口。 重庆大学硕士学位论文2 基于关系数据库的轻晕级工作流引擎体系结构 性能优化。数据库管理系统为数据库应用的设计和实现提供了许多进行优 化的方法和手段。 备份与恢复。利用数据库的备份机制,可以保证在出现异常的情况下,各 集成应用系统的数据能够得到一致的恢复。 2 2 2 为什么要采用轻量级 轻量级的工作流引擎指的是从够用、灵活和低成本的设计原则出发,不追求 工作流引擎的功能的完备和复杂,只是实现其中必不可少的功能和特征。在设计 工作流引擎时主要考虑对其数据模型的定义和解释、活动之闻的协调以及任务的 分配和控制等功能提供支持,丽不支持诸如提供内建( b u i l t i n ) 的应用开发工具、 对应用数据的定义和完整性维护、完善的异常处理以及长事务控制等功能。 我们之所以采用“轻量级”这一特征来刻画工作流引擎主要出于如下考虑: 许多现有的工作流产品都在不同程度上提供了对外部工具的集成功能,部 分产品还提供了基于表单的应用逻辑的定制和开发环境。但是,外部工具的多样 性和复杂性决定了对外部工具的集成难

温馨提示

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

评论

0/150

提交评论