(计算机应用技术专业论文)分布式事务工作流建模方法与模型实现.pdf_第1页
(计算机应用技术专业论文)分布式事务工作流建模方法与模型实现.pdf_第2页
(计算机应用技术专业论文)分布式事务工作流建模方法与模型实现.pdf_第3页
(计算机应用技术专业论文)分布式事务工作流建模方法与模型实现.pdf_第4页
(计算机应用技术专业论文)分布式事务工作流建模方法与模型实现.pdf_第5页
已阅读5页,还剩113页未读 继续免费阅读

(计算机应用技术专业论文)分布式事务工作流建模方法与模型实现.pdf.pdf 免费下载

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

文档简介

太原理一火学硕士研究生学位论文 y7 8 8 5 8 1 分布式事务工作流建模方法冬模型实现 摘要 在以构建业务流程为主路的信息系统开发中,工作流管理 系统已经成为一个重要的系统部件和开发_ 乎台。运用工作流技 术,可以傻信息系统的敛务流程与具体的应用相分离,降低了 软件复杂度,提高了系统可维护性。然而黼有的工作流技术缺 乏保障工作流事务性的机制,当系统故障发生时,难以恢簸到 正确状态,这就无法保障工作流运行的正确性和一致性。这个 缺陷大大眼铡了工作流技术的应用范围。 本文稳出了一释分层结构的事务工 乍漉模型弱建摸方法, 可驻根据王 乍藏运行情况遴行全建圈滚或郝分强滚,实璇了事 务工作流的松弛原予性。这种事务工作流模裂的实现是在普通 工终流弓 擎基础上,外加事务控制模块。因此能够方便麴与现 煮王作流引擎集成。模型露经典谴词逻辑都函数对事务工作流 翡实现梳饿进行了形式毒艺撼述,胃以直接指导工 乍流事务管理 模块酶安缆。羹井校掭工作漉模型的特点,暴餍u m l 中活羲 图建模符号来描述工作流的静态模型和动态模型,符合软件建 太原理下太学硕七研究生学彼论文 模的通用规范,易予阉开笈人员沟通交流,具有穰强的实露性。 最后,以由嚣钱科技厅业务攘患系统的舞发为鹜景,详纲 论述了电子政务事务工作流系统的设计与实现,并且给出了关 键模块的源代码。 芙键词:工终流,事务处理,模型,松弛艨子性,e g o v 太原理工大学硕士研究生学位论文 d i s t r i b u t e dt r a n s a c t i o n a lw o r k f l o wm o d e l i n g m e t h o da n dr e a l i z a t i o n a 嚣s t l c 誓 i nt h ed e v e l o p m e n to fi n f o r m a t i o ns y s t e m w h i c ha i m s 戳 b u i l d i n gb u s i n e s sf l o w , w o r k f l o wm a n a g e m e n ts y s t e mh a sb e c o m e a ni m p o r t a n tp a r ta n dp r o g r a mp l a t f o r m w o r k f l o wt e c h n o l o g yc a n m a k ei n f o r m a t i o ns y s t e m sb u s i n e s sf l o wa n dc o n c r e t ea p p l i c a t i o n a p a r t ,w h i c hr e d u c es o f t w a r e sc o m p l e x i t ya n di m p r o v es y s t e m s m a i n t a i n a b i l i t y h o w e v e r , t h ew o r k f l o wt e c h n o l o g yi ne x i s t e n c ei s l a c ko ft h es e c u r i t yo fw o r k f l o w st r a n s a c t i o n a lm e c h a n i s m i f t h e r ei ss o m e t h i n gw r o n gw i t ht h es y s t e m ,i ti sh a r df o rw o r k f l o w s y s t e mt ob a c ki n t oac o r r e c ts t a t e s os y s t e m sc o r r e c t n e s sa n d c o n s i s t e n c yc a n n o tb eg u a r a n t e e d ,t h i sd i s a d v a n t a g el i m i t st h e a 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 yt og r e a te x t e n t t h ep a p e rp u t sf o r w a r dah i e r a r c h ys t r u c t u r e dt r a n s a c t i o n a l w o r k f l o wm o d e la n dm o d e l i n gm e t h o d t h em o d e lc a nm a k e w o r k f l o wr o l l b a c kc o m p l e t e l yo rp a r t l ya c c o r d i n gt oe x e c u t i o no f w o r k f l o wa n dr e a l i z et r a n s a c t i o n a lw o r k f l o w sr e l a xa t o m i c i t y t h et r a n s a c t i o n a lw o r k f l o wm o d e lc a nb er e a l i z e dt h r o u g ha d d i n g t r a n s a c t i o nm a n a g e m e n tm o d u l eb a s e do nt h en o r m a lw o r k f l o w e n g i n ei ne x i s t e n c e s oi tc a nb ee a s i l yi n t e g r a t e di n t ow o r k f l o w s y s t e m t h e m o d e ld e s c r i b e st h er e a l i z a t i o no ft r a n s a c t i o n a l w o r k f l o ww i t hc t a s s i c a lp r e d i c a t i o nl o g i ca n df u n c t i o n 1 i i 太原理t 大学硕士研究生学位论文 i na d d i t i o n ,w ed e s c r i b ew o r k f l o ws t a t i cm o d e la n dd y n a m i c m o d e lu s i n gu m l a c t i v i t yg r a p h s t h em o d e l i n gm e t h o da c c o r d w i t hp o p u l a rs t a n d a r do fs o f t w a r em o d e l i n g ,s oi ti s e a s yt o c o m m u n i c a t ew i t hp r o g r a m m e r s ,a n di ti sv e r yp r a c t i c a l a tl a s t ,t h e p a p e r d i s c u s s e st h e d e s i g n a n dr e a l i t yo f e l e c t r o n i c g o v e r n m e n t ( e g o v )s y s t e mt a k i n g b u s i n e s s i n f o r m a t i o n s y s t e m o fs h a n x ip r o v i n c es c i e n c eh a l l a s b a c k g r o u n d ,a n da l s og i v e st h es o u r c ec o d eo fc o r em o d u l e k e yw o r d s :w o r k f l o w , t r a n s a c t i o np r o c e s s i n g ,m o d e l ,r e l a x a t o m i c i t y , e g o v 太原理工大学硕士研究生学位论文 1 1 研究目的和意义 第一章绪论 随羞计算机技术、通信技术以及互联嘲技术的飞速发展,社会经济 的信惑化进程逐渐鸯羁快,戳嘲终经济为主要特征的新经济形态正在发滏 和壮大。网络经济的运行效率幽子信息技术的全方位应用丽显著提高, 进面举动了社会生产力的高速发展。信息化社会的经济和聿士会的健康发 菠需疆良好的秩序船以保诞,瑟窀子政府将髓邂对整个售惠纯社会静蕊 督、管理和服务职能,电子政务的发展正在成为当代信息化的最重要的 领域之一。如何运用先进的信息技术构建电予政府,实践呶予政务,以 电子纯、信息纯手段摄离政府静行竣效能、雩予致管理水平和决策准确毪, 从而蹶科学、更有效地为社会、企业和公众服务,目前已成为各国政府 越来越紧迫的一i 羹工俸。我的研究工 乍就是以由嚣省科技厅、韭务信息系 统的开发需要丽鼗开豹。 分布式计算使得在网络上物理位置分散的各种微机,工作站和服务 器可以协同完成大觏模的复杂计棼任务。在这萃孛情况下,如褥保障信怠 静可纛性和一致瞧裁成了最关键的闷题之一。露事务处毽羧术是保证箔 息可熊性和一致性的重要技术。在引入网络分布计算环境厢,分布式攀 务处瑷就需要解决分布性带来的阀题。所以研究分布式事务处理对采用 网络分布式计算技术的大规模躐络应用丽言,具有缀离的嶷用价值和理 论价值。分布式系统中,对数据资源的完整性具有很高的骚求,数据资 源褒分布应用中占褒重要遗位,但是并非艇褥的分布应用都是以数据宠 太原理一t :人学硕+ 研究生学位论文 整性为目的的。工作流应用就是强调对流程的控制,因此流程的完整性 和可恢复性是工作流应用的核心问题。许多应用领域要求一个工作流作 为一个整体,要么正确提交,要么回滚结束,这说明工作流具有事务的 a c i d 特性。把分布式事务处理技术有选择的引入工作流系统中,就构成 了分布式事务工作流。目前事务工作流的研究还处在起步阶段,许多名 词术语的定义也很不完善。因此,要想在电子政务系统中运用工作流技 术就必须考虑工作流的事务性问题。 事务是具有a c i d ( a t o m i c i t yc o n s i s t e n c y i s o l a r i o na n d d u r a b i li t y ) 特性的原子操作序列。在网络应用中的数据和处理分布在 不同站点机上,这就要求分布式事务处理技术的支持。分布式事务在结 构上可以分为平面事务和嵌套事务。平面事务的所有执行都在同一个层 次完成,且不可能提交或放弃其中的部分执行,要么全部提交要么全部 放弃。相比之下嵌套事务模型具有优势:嵌套事务模型中,在同一个层 次运行的事务可以并发运行,从而提高事务内的并发度;由于子事务可 以在不同的服务器上并发执行,从而提高了整个事务处理的性能效率; 子事务可以独立地提交或放弃,嵌套事务具有更好的强壮性,不会因为 某一个子事务的失败而导致熬个事务放弃。传统的攀务模型即平面攀务 模型遁弱于黢事务,嚣在处璎长事务辩存在擞本不足。嚣为袋用平嚣事 务模挺处理长事务会过多的占用系统资源且不能及时释放,降低了熬个 系统豹莠发爱嚣接麓。褒套攀务一方霆逶过朦次纯缝梅增强了事务黪模 块化,另一方面支持子事务之间的并发执行。为了保证事务执行时的并 发度,可鼓采糟嵌套攀务模羹。兔了保证事务静原予性,分布式事务处 理应采用两阶段提交协议。工作流事务实际上是一种更为复杂的扩腱事 务模型。它结合了事务处理技术和工作流技术两者备自的特点,可以更 好地支持分襁式应用。在电予政务系统中,工作流的事务性不应是抽象 太原理工火学硕士研究生学位论文 的,巍工作流回滚时,并不能麓单的撤销,丽是要考虑到具体的业务规 到。阂既事务往工作流静实琉至少在囊输敬怒不能麓离应褥实际豹。 在电子政务i 页目的开发实践中,工作流技术以成为不可缺少的组成 部分。国内外的很多的电子政务软件产品都熊成了工作 j l i 技术。这是因 为工作流技术通道信患技术豹支持为企盘酌经营过程提擞了一个及摸型 分析、建立、管理、仿真到运行的完整框架,是实现业务过程管理与控 制的一项关键性技术。在工作溅建模方面,p e t r i 嚼等形式化工具的引入, 使褥软件控镄流獠豹竣诗更为精确。随着阚络分布式技术豹发震成熟, 网络已经为我们撮供了跨越网络透明访问各种信息资源并协同处理的能 力。瞧予软件本身的特殊性和多榉性,在开发这种类型的信息系统时, 必然会瑶箍诲多新的润题和热蔽。两电子竣务系统就是这样馥一个复杂 的分布式信息系统。在实际中很多政府机关往往包含若干下属部门,这 些下属部门往往嫩在不同的地理位置上,即使是处于同一个地点的单位, 它酌各个部门 羹怒分布在不稳静办公逾点:壤是处于不潮豹办公楼或麓 不同的楼层。因此电子政务系统必须把它们联接起来构成分布式处理系 统,才s 真正发撵滋协同工作的优势。事实上实施电子政务系统的关键 就怒对致务滚程鬟新梳理调整,腻而褥囊一个高效合理豹运 乍流程豹过 程。因此,如何设计合理高效的电子政务流程的问题就成了实施电子政 务系统成败的关键。 1 2 分布式计辣环境研究现状 1 分布式计算的特点 随羞网络技术的发展和应用嚣求的增长,网络分布式计算已成必毅一 3 太原理一1 :大学硕十研究生学位论文 代计算机应用的主流。网络分布式计算提供跨越网络透明访问各种异构 信息资源并处理的能力,是大规模网络应用的基础。网络分布式计算是 通过网络分布式系统来实现的。分布式系统是基于网络互相连接的若干 计算机单元协同计算的软件实现。它有两个属性: ( 一) 它所包含的计算单元的自治性,每个计算单元都具有自己的物理 存储和处理器,可以独立自治的进行工作。 ( 二) 各个计算单元的同一性,计算单元之间相互通信协同工作,呈现 给用户的是逻辑上同一的系统。 另外,分布式系统还必须是可动态扩展的,支持不定数目的计算单元和 进程。 分布式系统应该具有下列的若干定义属性: 任意数目的计算单元( p e ) ,每个p e 称之为物理资源。 任意数目的进程,每个进程称之为逻辑资源。 进程之间通过消息传递进行通信。 通信延时不可忽略。 任何单个逻辑或物理的资源故障不会导致整个系统的崩溃。 在资源故障的隋况下,系统必须具有重新配置和处理故障的能 力。 目前的主流分布式系统( 如:基于中间件的分布式系统,分布式多处理机 系统等) 都满足上述所列属性。 2 分布式系统【2 l 目前主要的几种网络分布式计算技术包括: 1 中阳j 件技术:最早具有中间件技术思想及功能的软件是i b m 在6 0 年 代开发的c i c s ( c u s t o m e ri n f o r m a t i o nc o n t r o ls y s t e m ) 。8 0 年代 初期,s u nm i c r o s y s t e m s 开发了一种最早的中间件,作为其开放网 4 太原理t 大学硕士研究生学位论文 终体系结构的一部分,这种中间件是基于r p c 协议的。但出于c i c s 不是分布式环境静产耱,褥s u nm i c r o s y s t e m s 开发麓不是完整静中 间件产品,因此人们一般把t u x e d o 作为篇一个严格意义上的中间件 产晶,t u x e d o 是在1 9 8 4 年幽a t & t 的贝尔实验室开发完成躲。到9 0 年代,中闽俘技零褥到了重大的发震巍广泛豹应震,蠢现了大量其肖 广泛影响的中间件产品,如o m g 的c o r b a 、m i c r o s o f t 的d c o m c o m + 、 i b m 的m q s 等。 中阐俘是基础软件,处于撩佟系统( 或阚络协议) 与分帮式应用之闻, 从而屏蔽操作系统( 或网络协议) 的差异,实现分布式异构系统之间 的甄操作。目魏,对中间件逐没有形成一个统一的定义,比较公认的 i d c 的定义蔻:中间俘是一孝中独立静系统软 宰或服务程j 葶,分森式应 用软件借助这种软件在不同的技术之间共事资源,中间件位于客户机 服务器的操作系统之上,营煺计算资源和网络通信。校攒作用的不鄹 可以把中闯 串分为一下凡类: 消息中间件( m o m :m e s s a g e o r i e n t e dm id d l e w a r e ) 数据库中间件( d a t a b a s em i d d l e w a r e ) 邋程过程调用中间件( r p c :r e m o t ep r o c e s sc a l l ) 对象请求代理中间件( o r b :o b j e c tr e q u e s tb r o k e r ) 事务处理中间件( t pm o n i t o r :t r a n s a c t i o np r o c e s sm o n i t o r ) 9 0 年代末期开始,由于受需求增长和多种技术融合两方面的影响,中 间件的内涵和外延进一步拓展,中间件的获别也进一步增多,如出现 了反射中闻僚、移动中阕件、叁适应中闼馋等。 2 网格技术:嗣格( g r i d ) 的概念起源于9 0 年代中期,最初的含义怒 为尖端科研和工程提供分布式计算基础设施。网格计算目前还没有一 个疆簧速接受鹣定义,著名豹溺疆疆究专家,g l o b u s 矮嚣鹣锈善久 太原理:r 大学硕十研究生学位论文 i a nf o s t e r 认为:网格提供在动态变化的多个虚拟机构间共享资源和协 同解决问题。但随着网格技术的发展,特别是o g s a 体系结构的提出, i a nf o s t e r 对网格的定义作了扩充:网格是可扩展的网格服务集合,这 些服务以不同的方式结合在一起以满足虚拟机构的需要,这些虚拟机 构本身被定义成它们操作和共享的服务的一部分。到目前为止,比较 重要的网络体系结构有两个,一个是f o s t e r 等提出的五层沙漏结构;另 一种是在以i b m 为代表的工业界的影响下,在考虑到w e b 技术的发展 与影响后,结合w e bs e r v i c e 提出的开放网格服务结构o g s a 。五层沙 漏结构以“协议”为中心,同时十分强调服务与a p i 和s d k 的重要性。 主要内容为:共享,互操作,协议, 服务和a p i s d k 。 o g s a 是以服务为中心的“服务结构。这罩的服务是指具有特定功能 的网络化实体。o g s a 定义了“网格服务”的概念,网格服务是一种 w e bs e r v i c e ,该服务提供了一组接口。网格= 网格服务) 网格服务= 接口行为+ 服务数据 3 移动a g e n t 技术:由于对a g e n t 的定义还没有明确,所以,目前还 没有一个关于移动a g e n t 的确切的定义。一般认为移动a g e n t 是一类 能在自己控制之下从一台计算机移动到另一台计算机的自治程序,它 们能为分布式应用提供方便的、高效的和鲁棒的执行框架。目前,移 动a g e n t 的研究已取得了一些成就,产生了大量的移动a g e n t 系统, 如o p e ng r o u p 公司的m o a 、s t u t t g a r t 大学的m o l e 、o c h a n o m i z u 大 学的m o b i l e s p a c e s 等。但所有的移动a g e n t 系统还都很不成熟,存 在着各种各样的缺陷。可以把目前的众多a g e n t 系统看成是实验室的 系统,离真正实用的产品还有很大的距离。 4 p 2 p 技术:p 2 p 起源于最初的联网通信方式,是一种比较古老的技术, 如产生于1 9 7 9 年的u s e n e t 、1 9 8 4 年的f i d o n e t 都是基于p 2 p 技术的, 6 太原理工大学硕士研究生学位论文 憾目前p 2 p 已被赋予了新的食义,是旧静技术的耨的威用模式。p 2 p 麴原意是一释暹信模式,在这种通信模式中,每一个部分其有穰丽豹 熊力,任意一个部分都能开始一次通信。现在,对p 2 p 概念进行了扩 疑,2 n i b m 公司认为:p 2 p 系统睦f 若干互联协作的计冀机构成,且黧 少其有如下将铥之一:系统依存于边缘纯( 菲中央式激务器) 设备静 主动协作,每个成员直接从蕻他成员而不是从服务器的参与中受益: 豢统中成员尉时扮演服务器与客户端的角邑;系统应用的用户能够焱 识到被茈静存在,构藏一个纛羧或实际的群俸。 5 w e bs e r v i c e 技术:w e bs e r v i c e 是对象组件技术在i n t e m e t 中的延伸, 怒一静部署程w e b 上静对象,缀 孛。w e bs e r v i c e 结合了以缀 孛为基础躲 开发模式以及w e b 的出色橙能,方面,w e bs e r v i c e 和组件一样,舆 脊黑l 再子的功能,可以在不关心功能如何实现的情况下重用:同时, 与传统的组传技术不同,w e bs e r v i c e 可以把不同平台开发鲍不同类激 的功能块集成在一起,提供相互之间的豆操作。所以,w e bs e r v i c e 被普遍认为是下一代分布式系统开发的模型。 到露兹为止,濒有的分农式计算按术都竣多或少存在没鸯螭决匏阀 题,还没有哪辩技术被所有酌研究者认同为分布式计算技术研究的方 向,也没有哪一种技术能实现究全意义上的分布式计算,满足所有分布 式计算鲍霰求。我们采用其中黪中阕馋技本秘w e bs e r v i c e 乍为出西省秘 技厅渡务信息系统的分布式计算基础平台,豳为这两种技术相对成熟。 1 + 3 工作流技术研究现状 1 工作流概述日l 工 乍流技术怒进入九十年代蜃,计算机疲塌领域个辑的研究热点。 太原理r 大学硕+ 研究生学位论文 按照工作流管理联盟的定义:工作流是是一类能够完全或部分自动执行 的经营过程,根据一系列经营规则,文档信息或任务能够在不同的执行 者之间传递和执行。工作流管理系统是支持企业经营过程高效执行并监 控其执行过程的计算机软件系统。此外对于工作流不同得组织合企业还 给出了其它种种定义:女n g i g ag r o u p 给出的定义为:工作流是经营过 程可运转的部分,包括任务的顺序以及由谁来执行它,支持任务的信息 流,评价与控制任务的跟踪与报告机制。i b ma l m a d e nr e s e a r c hc e n t e r 的定义是:工作流是经营过程的一种计算机化表示模型,定义了完成某 个过程所需要的各种参数。这些参数包括过程中每一个单独步骤的定义, 步骤间的执行顺序,条件以及数据流的建立,每一步骤由谁负责以及要 调用的应用程序。 以上种种对工作流的定义都是用非形式化的语言来描述的,虽然各 不相同但是也达成了一些共识:工作流是经营过程的计算机实现,而工 作流管理系统则是这一实现的软件环境。总体来说:工作流是一种反映 业务流程的计算机化的模型,它是为了在先进计算机环境支持下实现经 营过程集成与经营过程自动化而建立的可由工作流管理系统执行的业务 模型。从广义上来讲,以更广泛地把凡是由计算机软件系统( 工作流管 理系统) 控制其执行的过程都称为工作流。 2 工作流管理系统1 4 】 工作流管理系统是支持企业经营过程高效执行并监控其执行过程的 计算机软件系统。它不是企业的一个具体业务系统。为企业的业务系统 运行提供一个软件支撑环境,非常类似于在单个计算机上的操作系统。 支撑的范围比较大、环境比较复杂,所以也有人称工作流管理系统是业 务操作系统( b o s - - b u s i n e s so p e r a t i n gs y s t e m ) 。在工作流管理系统的 支撑下,通过集成具体的业务应用软件和操作人员的界面操作,才能够 太原理j f 大学硕士研究生学位论文 良好地完成对企业经营过程运行的支持。所以,工作流管理系统在一个 企煦或部门静经鬻过程中静应蕊过程是一个妲务应臻较件系统魏集成与 实施过程。工作流管理系统可以用来定义与执行不同覆盏范围( 单个工 作者、部门、全企业、企业间) 、不同时闻跨度( 分钟、小时、天、月) 的经薷过程。 3 工作流建模方法【5 , 6 , 7 】 工作流建模就是将现实世界中的业务过摆抽象出来,并用一种形式 纯静、计算橇可楚疆躬方式来袭示,这耱形式化结采称为工作流模墅。工 作流模型包含了工作流执行所需要的各种信息,如活动、控制流、数据流、 角饿秘执行者。尽管w f m c ( 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 ) 和o m g ( o b j e c tm a n a g e m e n tg r o u p ) 一童致力予建立工作流警瑷系统酌开发糖 准,但是目前还没商一个关于工作流模型的标准。工作流参考模型 ( w 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 w 纨n 8 9 e m e n tf a c i i i t ys p e c i f i c a t i o n ) 只是定义了工 睾流管理系统鹣一 般性框架和所提供的服务,而没有规定工作流建模的方法。w f m c 颁布了 工作流过程定义交换接口,其主要目的用于不曛工作流管壤系统之间能 够交互过程定义德怠。在v f m s 中对业务过程接述翁主要秘的是便于工 作流管理系统的控制执行。然而为了实现预期的业务目标,需要正确地 定义过程模型,弼展在被w f m s 执行之前需疆对其进行分糖。对过程模 塑的分车厅主要包掇三个方蟊:1 露效洼分季厅( v f l i d a t i o na n a l y s i s ) :测试工作 流的执行是否能蜜现预期的业务目标。2 正确性证明( c o r r c c m c s s v e r i f i c a t i o n ) :验证工作流模型的正确性。3 性熊分析( p e r f o r m a n c ea n a l y s i s ) : 评徐工作流酶某黧性能参数,翔工作流平均执行时闯、落动平均等待时 间、疑源占用率、服务水平。 9 太原理1 :人学硕士研究生学位论文 1 4 电子政务工作流研究 随着国家信息化进程和行政体制改革的不断进行,要求把信息技术 运用于政府政务处理当中,从而建立起高效运行的政府机构。信息化社 会的经济和社会的健康发展需要良好的秩序加以保证,而电子政府将促 进对整个信息化社会的监督、管理和服务职能,电子政务的发展正在成 为当代信息化的最重要的领域之一。如何运用先进的信息技术构建电子 政府,实践电子政务,以电子化、信息化手段提高政府的行政效能、行 政管理水平和决策准确性,从而更科学、更有效地为社会、企业和公众 服务,目前已成为政府越来越紧迫的一项工作。 8 1 目前,工作流技术还无法有效解决工作流事务性的问题,这就使得 电子政务系统的可靠性,一致性,及系统状态的正确性得不到保证。解 决的办法是参考事务模型来设计工作流,根据应用的语义设计工作流的 事务模型,给出补偿执行的具体步骤。这种工作流事务模型不一定严格 满足a c i d 性质,但却可以保证在并发和故障情况下的一致性和可回滚 性。凡是具有这种性质称为事务工作流。把这一技术运用到电子政务工 作流中,就构成了基于事务工作流模型的电子政务工作流系统。 考虑到行政事务注重流程的特点,采用分布式工作流技术建立电子 政务系统无疑是一种有效的途径。事实上实施电子政务系统的关键就是 对政务流程重新梳理调整,从而得到一个高效合理的运作流程的过程。 同时,事务工作流技术除了需要系统提供事务管理机制外,还需要在建 模阶段详细分析工作流中各个活动的应用语义,并且据此设计出各个补 偿执行活动。因此,如何设计合理高效的电子政务流程的问题就成了实 施电子政务系统成败的关键。要运用工作流系统技术,第一步工作就是 根据应用的要求设计业务流程,也称为工作流建模。业务流程模型是业 1 0 太原理工大学硕士研究生学位论文 务过程的形式化定义,它的正确性直接影响业务目标的实现,所以这越 关键一步。 本文就在现有工作流管理系统和分布式事务处理技术的基础上,以 山磷雀科技厅业务信息系统的实现为背景,初步探讨了在电子政务系统 中实蕊事务工俸流的方法,并将奠运孺子开发实践当中。绪台电子政务 项目的开发实践,详细论述了如何在电子政务流程设计中运用工作流建 模秘分析技术。并履提出了秘适用于事务工作流实现的建模和描述方 法。阉时,这秘方法的图形建摸符号采用了u m l 活魂淄。所以它符台 软件业建模通用标准,易于交流,同时还可以利用工作流建模与分析方 法的优越性。实践证明,用该方法建立的模越具有结梅严谨,易于分桥 静褥点,筏更强主氇蓿导电子致务流程设计与实现。耪信农实践串检验过 的模型更具价值和生命力。 太原理j 大学硕士研究生学位论文 第二章工作流运行环境 2 1 工作流管理系统的功能 工作流管理系统( w o r k f l o wm a n a g e m e n ts y s t e m ) 通过管理工作活 动序列,调用与各种活动步骤相关的人员、i t 资源,对业务过程提供自 动化处理。进一步说,工作流管理系统是这样的一个系统:详细定义、 管理并执行“w o r k f l o w s ”,系统通过运行一些软件来执行w o r k f l o w s ,这 些软件的执行顺序由工作流逻辑的计算机表示形式( 计算机化的业务规 则过程定义) 驱动。实现工作流管理系统的方法有多种,运行的环 境也各有不同,但所有的工作流管理系统都表现出某种共同的特性,这 为不同产品间的集成、协同工作提供了基础。参考模型描述了工作流系 统的一个公共模型,并且指出参考模型如何能使其与其他各种不同的实 现方法相关联。在最高层,所有的工作流管理系统都相同的特性,即为 下边的三个功能提供支持:1 9 a o l 建立时期( b u i l d t i m e ) 功能, 动。又称为流称定义功能。 运行( r u n t i m e ) 控制功能, 定义、模拟工作流过程,及其组成活 在运行环境中管理工作流过程,管理 不同活动执行顺序。 运行时期与用户、i t 应用程序( 工具) 的交互,来处理各种活动的 执行。 太原理工大学硕士研究生学位论文 2 1 。1 流程定义功能 建立时期的功能负责产生业务过程的计算机化定义。在这个阶 段,通过使用一个或多个分析、建模和系统定义工具,把实际中的业 务过程转交袋澎式嚣、诗箕壤可嚷照瑾稳定义。逶豢撼定义涎结巢臻 为过程模型、过程模板、邋稷元数据、或者过程定义。在本文中,称 为“过程定义( p r o c e s s d e f i n i t i o n ) ”。过程定义由一些列的分散的活动、 键关静诗算瓿、久虽操 睾、溪动阕控裁遗疆豹鬟羯梅簸。可以鼹文本、 圈形或者语言符号来表示过程定义。有魑工作流系统允许在运行时期 改变过程定义,称作适应性工作流或柔性工作流。1 1 1 , 1 2 1 2 1 2 运行控制功链 在运行辩期,过程定义由受责创建、控锻过程实例的软谗所解释, 这个软件并负舞安撵过程中各个活动豹执行瓣闯,调弱邋警静人员、i t 应用襁序资源等。这些运行时期的控制功能,就象过程定义中描述的j 建 程与现实所见到的实际过程间鲍联接,反映农运行时期的用户与i t 应用 疆_ | 挚阀豹交互。核心缝臀是蒸零工作流管懑控制软俘( 工箨流弓i 擎 e n g i n e ) ,它负责过程的创建与删除,控制运行过程中活动的执行时间安 排,以及与人、疲用工具资源避行交互。工作流引擎经鬻是分布与多个 计算机平台中静,孀来处理在大的遣城跨凌中操 辛懿过弦。 2 。 ,3 交互臻缝 典型的,工作流过程中的活动与用户的操作有关,交互经常发生 在经髑特殊的疆工兵,或者僖爨处理操终鬟癸一个特爨瓣应惩疆痔采攥 1 3 太原理工人学硕+ 研究生学位论文 作一些己定义过的信息的时候。在活动间转移控制、确定过程的运行状 念、调用应用工具、传递适当的数据等,都必须与过程控制软件进行交 互。 上述三项功能之间的关系如图2 1 所示: 过程设计与定义 建立阶段 运行阶段 经营过程分析、 建模与定义工具 过程定义 过程更改 过程实例化与控制 工作流执行服务 人机交互 d 软嚣与 图2 1 工组流管理系统功能图 f i g2 - 1w o r k f l o wm a n a g e m e n ts y s t e mf u n c t i o n sd i a g r a m 2 1 4 接口功能 在工作的流程中也包括程不同的u 开发商的工作流产品间传递任务, 放霹後韭务过程魏不耀部分艉在不网靛平蠹竣搜震褥稼产鑫瀵是特豫遥 程阶段的子阶段中运行。为了满足这些功能,就需要定义标准化的接口 调焉。工律瀛管理系统接日镜括五个部分; 过程定义数掇,以及过程定义数据的转换规范,创建一个计算机可 以处理的形式的过程描述。 支持不同工 擘流系统阗协同工作豹接嗣 1 4 太原理l 大学硕士研究生学位论文 支持与各种不同i t 应用程序交互的接口 支藉与溺户交互熬接翻管理工 乍滚参与者与工僚滚魏雩亍骚务器 间的交互并且通过任务袭分配到具体的执行者。 提供系统监视,以及榕准功能来简化复合工作流应用环境管理的 菝臣疆供王作滚运行获惫懿完整撬鹫露一套全瑟的功麓集来进行 系统管理,包括安全性、控制和权限簿。 遮五个接口相互关系如图2 2 所示 | 整黧! 釜三墨| 石 王作流| 接髓5 管理工具卜叶 工作流a p l 与交换辖式 堕旦! 土 工作流客, 应用 l 萁娃工维流 接口4 |执行驻务 土 篓1 3 工作流引擎直接i 调用的应鞴 霞2 2 工作流管理系统接口 f i 9 2 - 2w o r k i l o wm a n a g e m e n ts y s t e mi n t e r f a c e 上述绘出懿五个接口中,工终漉系绕闻诲嚣工终懿接霹和支持冬 套种不同f r 敷羽程序交互的接口最为关键。因为前者关系到工作瀛系 统能否控制实际业务中用到的各种不同应用程序,影响剐应用于流程 戆露分离;爱磐涉及不同懿工俸流系统之闽能歪颞剩弱遂葶亍流程交接 和交换。箕继的三个接口只和单独工作流镣理系统本身有关。 太原理t :大学硕士研究生学位论文 2 2 工作流管理系统主要组成 2 2 1 工作流执行服务器 工作流执行服务器:由一个或多个工作流机构成的软件服务器,用 来创建、管理、执行工作流实例。应用程序可能会通过w a p i 来与这个 服务交互。 t 4 , 1 s l 工作流执行服务是工作流管理系统的核心。该组件用于创建新的流 程实例,并且基于过程定义生成工作项,支持活动的执行以及记录工作 流的特定方面。执行服务可以有多个工作流引擎组成,这种情况下,工 作可以被分布到多个引擎执行,这就是分布式的工作流系统。工作的分 布情况取决于具体的案例属性,任务和资源。通常情况下,这种分布对 用户是透明的。 在分布式的工作流执行服务器中,每个工作流机控制过程执行的一 部分,并与这部分过程中的活动所要用到的用户、应用工具进行交互。 在分布式的执行服务器中有公共的名称空间与管理范围的,从而过程定 义、用户应用程序的名称在一致的标准下被处理。分布式工作流系统 在工作流机间采用特殊的协议和信息转换格式,来同步工作流机的操 作、过程交换和活动控制信息。工作流相关数据也要在工作流机问进行 传递。在单一的工作流执行服务器中,这些操作都是由开发商自己定义 的。 在工作流机间需要一个标准的交换格式,来实现异种产品间的调 用。使用工作流系统间协同工作的接口( 图2 2 接口4 ) ,执行服务器 可以把活动或者子过程转移到另外一个( 异种) 执行服务器中执行。 1 6 太原理t 大学硕士研究生学位论文 2 2 。2 工作流s l 攀 工作流引擎:为工作流实例提供运行时期的执行环境的软件服务器 或引擎,负责工作流执行服务器中的部分( 或者全部) 运行控制环境。 【1 6 l 工作流日1 擎主器完成的任务是: 解释过程定义,创建新的案例并且移走完成的案例; 控割过程实翻一翻建、激透、援越、终壹等; 为过程的活动导航,可能要包台顺序或者平行的操作、最烯 时间期限、对工作流相获数据进行解释: 将王佟矮捷交给合懑戆资源; 确定任务项目,实现用户意图;摄供接口,支持用户交互; 管理期处理工作项的触发。 在滔镄疑雩亍中癌动疲藤程_ 事; 维护工作流控制数据和工作流相关数据,在成用程序间或者 用户间传递工作流相关数据; 提供髫饕鼹岁 部程序瓣接墨,连接掰寿工俸浚糖关数据; 提供控制、管理和审查功能,提供工作流统计信息,记录历 史数掘; 整控王 乍滚戆移撬瞧; 蜜现工作流管理系统的主要工作就是实现工作流引攀,它包含了工 作流系统的全部主要功能。在一个由多个工作流引擎构成的工作流执行 鼹务耩孛,要把遭翟送行划分,分嚣绘工佟漉弓l 擎。霹淡缓鼹过程粪黧 来划分;某个工f # 流引擎负责控制相应类型过程;按照功能进行划分: 某个工作流引擎负责控制过程的一些部分,这些部分所需要的用户或糟 太原理r 大学硕十研究生学位论文 资源,都在此工作流引擎的控制范围内。也可以按照其他的一些机制来 划分。可以这样认为:工作流引擎运行在工作流执行服务器上。 2 2 3 工作流定义工具 工作流定义的概念实际上是由两个部分构成的:过程定义和资源分 类。在定义工作流时,除了描述工作流的工具外,还要用到工作流分析 工具。因此,从工具的角度可以分为三种:过程定义工具:资源分类工 具;和分析工具。在工作流管理系统中,这三个工具被集成为一个单一 的工作流定义和分析工具。d 7 ( 1 ) 过程定义工具:用来实现过程的计算机化表示的工具。使用这一 工具可以将一个业务过程从现实世界映射到形式化的,计算机可处理的 定义。过程定义结果的名称很多,如过程模型( p r o c e s sm o d e l ) ,过程元 数据( p r o c e s sm e t a d a t a ) 或过程定义( p r o c e s sd e f i n i t i o n ) 等。 一个过程定义包括一系列离散的活动步骤,关联的计算机程序或人工 操作及规则。过程定义可以是图形的,但必须是严格的或形式化的。过 程定义确定了流程的路由设计,包括的任务及过程中案例的各种相关属 性。这些属性决定了在什么条件下执行任务,和完成什么样的操作。下 面分别列举任务的一般属性: 任务的名称和描述: 任务信息:人员执行任务时所需的指令和支持信息; 执行任务的资源需求:说明所需的资源角色和组织单元。 任务的路由特性; 对工作流引擎的指令; 需要启动的应用程序以及应用程序启动的条件和次序: 在任务路由出现混合时,能够根据案例的属性确定后续任务; 1 9 太原理工大学硕士研究生学位论文 ( 2 ) 资源分类工具 狳了定义逡稷,还必须瓣执行工 睾流辩掰需资源分类。大多数工 篝 流管理系统都提供了资源分类工具,其中各种资源类之间的联系通过图 形表示出来,也可已用e r 图袭示。资源分类的结果主要包括:资源分 类戮表:资源分类的特牲和善释资源鹣联系,下一节褥详细讨论。 ( 3 ) 分析工具 在定义好的工佟漉实际使用前,首先要对它进行分析。分析包括过稷 定义兹语义正确髓和工 乍流执行豹性能。一般静工作滚管理系统仅提供 了较为有限的分析功能。因此骚彻底分析定义的工作流程,必须采用另 外的赢级分析技术。 2 2 4 工作流的客户端 王l 乍流题客户端:用于差噩人或者工 蕈滚系统的普递惩户莲行交互。 可以给用户分配任务,及检查究成情况,主臻包括任务袭和任务表处理 器。任务表是与缚个不同的用户对应的。用户从任务表中选择一个工作 顼,霞这些工传矮寒蠡工作漉弓l 擎。任务列褒搴每成了酱邋瘸户与工馋滚 之间的链接。渊 任务表处理器是在需要调用人类资源的活动中,用来与终端用户进 行交互斡软舞。经务表延理器霹以作表工终流产晶豹一部分挺供绘用户, 也可以由_ 鞯户自己开发。在其他情况中,工作流可能要与酱通豹办公系 统进行集成,例如e m a i l ,来为终端用户提供一个统一的任务管理系统。 这裁要求在工侮滚撬褥骚务器与工终流客户溺应矮程序间蠢一个非零灵 活的通信机制,- 浆构建各种可能遇到的运行系统。通过客户端应用程序 与工作流引擎间的定义良好的接口进行交互。在这个接口中包含任务农 电工 乍滚g l 攀分配绘鼹户瓣任务序列。最燕萃豹蘩孥擞怒,工佟流弓| 9 太原理【人学硕士研究生学位论文 擎访问任务表,来把任务分配给用户;任务表处理器访问任务表,向任 务表中添加任务项。有许多不同的产品来实现任务表的交互。任务表中 任务项的激活( 例如,启动应用程序,连接工作流相关数据) ,是由工作 流客户端应用程序或者终端用户控制的。在工作流客户端应用程序与工 作流执行服务器间定义了一系列的方法,这些方法用来向任务表中添加 任务项、从任务表中删除完成的活动、激活临时挂起的活动等。 任务表中可能要包含一个过程中的几个不同实例的相关任务,或者 包含几个不同过程中的一个共同活动项。一个任务表处理器可能要与几 个不同的工作流机、几个不同的工作流执行服务器进行交互。按照每个 产品的实现,为每个过程单独维护一个物理上分开的任务表,或者任务 表处理器把几个不同的任务表联合到一起,呈现给终端用户。因此,客 户端工作流应用程序与工作流机间的接口必须十分灵活。 2 2 5 应用程序调用 工作流技术的目标就是将业务过程从应用程序中抽取出来。具体的 业务还是要留给应用程序去解决的。因此工作流引擎对其它应用程序的 调用是一个很重要的问题,直接关系到工作流技术的目标能否实现。 在简单的情况中,工作流机在本地处理应用程序调用,使用过程定 义中的信息来确定,活动的性质、将要调用的应用程序的类型和所需的 数据。被调用的应用程序可能存储在工作流机中,或者与工作流机一同 存储在相同

温馨提示

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

评论

0/150

提交评论