(计算机应用技术专业论文)工作流管理系统及其在j2ee下的应用与实现.pdf_第1页
(计算机应用技术专业论文)工作流管理系统及其在j2ee下的应用与实现.pdf_第2页
(计算机应用技术专业论文)工作流管理系统及其在j2ee下的应用与实现.pdf_第3页
(计算机应用技术专业论文)工作流管理系统及其在j2ee下的应用与实现.pdf_第4页
(计算机应用技术专业论文)工作流管理系统及其在j2ee下的应用与实现.pdf_第5页
已阅读5页,还剩78页未读 继续免费阅读

(计算机应用技术专业论文)工作流管理系统及其在j2ee下的应用与实现.pdf.pdf 免费下载

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

文档简介

西南交通大学硕士研究生学位论文第1 页 摘要 8 0 年代中期,工作流( w o r k f l o w ) 概念被提出。9 0 年代,随着计算机 的普及,网络的延伸,工作流管理系统也由最初的创建无纸办公环境转而 成为同化企业复杂信息环境、实现业务流程自动执行的必要工具。工作流 技术的标准化组织工作流管理联盟( w f m c ,w o r k f l o wm a n a g e m e n t c o a l i t i o n ) 于1 9 9 3 年成立。在全球范围内,对工作流技术、工作流管理 系统的研究以及相关的产品开发在近年来受到很大关注。 论文以成都市自来水公司工作流管理系统项目为背景,介绍并总结了 工作流技术的研究现状、工作流技术基础,还分析了w f m c 定义的工作流 管理系统的体系结构及其参考模型。 论文首先提出一种基于活动网络图的简单活动网络图流程建模方法。 然后,对成都市自来水公司工作流管理系统项目进行了系统需求分析。 论文中,设计了一个基于一j 2 e e 架构的多层应用程序开发框架,并结 合该项目的实际情况,设计并实现了工作流资源管理器和工作流过程定义 工具,同时采用本文所提出的工作流流程建模方法和本论文设计的过程定 义工具,实现了自来水公司的业务流程建模。 接着,论文结合该项目的实际情况,利用e j b ( e n t e r p r i s ej a v ab e a n ) 设计、实现了核心业务流程工作流引擎模块。利用j a v a b e a n ,j s p 、 j a v a s c r i p t 、h t m l 等在论文所设计的开发框架下,开发了该项目中的客 户端应用模块。 论文的最后,给出了本论文所实现的芏作流管理系统的实际运行情 况,给出了性能测试情况,并做了相关分析。 实践证明,论文中提出的工作流流程建模方法、系统设计和开发方法 是有效的,取得了良好的实际应用效果。 关键词:工作流;工作流管理系统;工作流引擎;活动网络图;j 2 e e : e j b ;u m l 西南交通大学硕士研究生学位论文 第j | 页 a b s t r a c t n e c o n c e p t o fw o r k f l o ww a s p r o p o s e d i nm i d d l eo f1 9 8 0 s 。i n1 9 9 0 s , w i t ht h ep o p u l a r i z a t i o no fp ca n dt h ee x t e n s i o no fi n t e r a c t ,t h ew o r k f l o w m a n a g e m e n ts y s t e m ( w f m s ) h a d b e c o m ei n t oa l l i m p e r a t i v e t o o lt o a s s i m i l a t ec o r p o r a t i o n l sc o m p l i c a t e di n f o r m a t i o ns y s t e m sa n dt or e a l i z et h e a u t o m a t i o no fc o r p a r a t i o n sb u s i n e s sp r o c e s s ,w h i l ei n i t i 封l yi t sm a i nf u n c t i o n w a st oc r e a t ean o n p a p e ro f f i c ee n v i r o n m e n t w f m c ( w o r k f l o wm a n a g e m e n t c o a l i t i o n :t h es t a n d a r do r g a n i z a t i o no fw o r k f l o wt e c h n o l o g y ) w a sf o u n d e d i n 1 9 9 3 i nr e c e n ty e a r s ,t h er e s e a r c ho fw o r k f l o wt e c h n o l o g y , w f m sa n di t s p r o d u c t s h a dd r a w nm o r ea n dm o r ea t t e n t i o na l lo v e rt h ew o r l d b a s e do nt h ep r o j e c to ft h ew o r k f l o ws y s t e mo fc h e n g d uw a t e r , t h i s t h e s i si n d r o d u c e sa n ds u m m a r i z e s t o d a y s r e s e a r c hs t a t u sa n dt h eb a s i c k n o w l e d g eo fw o r k f l o wt e c h n o l o g y , a l s o ,a n a l i z e st h ew f m s s s t r u c t u r ea n d i t sr e f e r e n c em o d e li s s u e db yw f m c f i r s t l y , t h et h e s i sp r o p o s e saw o r k f l o wm o d e l i n gm e t h o d o l o g y n a m e da s s i m p ea c t i v i t yn e t w o r kd i a g r a m b a s e do na c t i v i t yn e t w o r k t h e n ,i tg i v e s t h es y s t e ms p e c i f i c a t i o na n a l y s i so ft h ep r o j e c to f 强ew o r k f l o ws y s t e mo f c h e n g d u w a t e r t h et h e s i sd e s i g n sa m u t i d a y e rp r o g r a m m i n g f r a m e w o r kb a s e do nj 2 e e u n d e rt h i sf r a m e w o r k ,i t d e s i g n s a n dr e a l i z e st h ew o r k f l o wr e s o u r c e s m a n a g e m e n t m o d u l ea n dt h ew o r k f l o w p r 0 6 e s s d e f i n i t i o nt o o lo fn e w o r k f l o ws y s t e mo fc h e n g d uw a t e r m e a n w h i l e ,i tg i v e st h ew o r k f l o w m o d e l i n go ft h ew o r k f l o ws y s t e mo fc h e n g d uw a t e rw i t hs i m p ea c t i v i t y n e t w o r k d i a g r a mm o d e l i n gm e t h o d o l o g y , t h e n ,t h et h e s i si m p l e m e n t st h ec o r eb u s i n e s sw o r k f l o we n g i n em o d u l e w i 血e j b ;( e n t e r p r i s ej a v ab e a n ) a n dt h ec l i e n tm o d u l e sw i t hj a v a b e a n j s p , j a v a s c r i p t ,h t m l o f t h ew o r k f l o w s y s t e m o fc h e n g d uw a t e r a tt h ee n d , t h et h e s i s 垂v e st h e o p e r a t i n gs i t u a t i o n o ft h ew o r k f l o w s y s t e mo fc h e n g d uw a t e r , t h et e s tr e s u l to f i t sp e r f o r m a n c e ,a n dt h ea n a l y s i s o ft h et e s tr e s u l t t h ep r a c t i c eh a sp r o v e dt h a tt h e m o d e l i n gm e t h o d ,s y s t e md e s i g na n d 西南交通大学硕士研究生学位论文第| | i 页 d e v e l o p i n gw a yp r o p o s e di n t h i s t h e s i sa r ee f f e c t i v ea n da l s oa v a i l a b l et o a c h i e v ea g o o da p p l i c a t i o nr e s u l t k e y w o r d s :w o r k f l o w ;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 we n g i n e ; a c t i v i t yn e t w o r kd i a g r a m ;j 2 e e ;e j b :u m l 西南交通大学硕士研究生学位论文 第1 页 1 1 引言 第1 章绪论 工作流( w o r k f l o w ) 技术是实现企业业务流程再造( 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 ) ,实现办公网络化、自动化的核心技术,工作 流管理系统( 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 ) 是基于工作流技术构建 的软件系统。它起源于2 0 世纪8 0 年代,那时,一些早期的市场开拓者, 如f i l e n e t 和v i e w s t a r 等,率先推出了些功能相对简单的工作流管理 系统产品,这种早期的工作流管理系统被认为是现代工作流管理系统的雏 形【1 。随着计算机技术、网络技术的发展,工作流管理系统也由最初的仓口 建无纸办公环境,转而成为同化企业复杂信息环境、实现业务流程自动执 行的必要工具。 近年来,+ 髓羞下一代信息系统即“协同信息系统”概念的提出,人们 越来越多地认识到,工作流管理技术作为一种过程建模和过程管理的核心 技术,必将在“协同信息系统”中扮演着重要的角色,工作流技术的研究 应用日益受到学术界和企业界的重视,许多大学和研究机构也致力于工作 流技术的进一步发展,开展了一系列研究项目,取得了显著成果【1 3 】。 i 2 工作流技术的研究现状 近年来,工作流技术已成为计算机应用领域的一个新的研究熟点,人 们进行了大量的研究和开发工作。 1 2 1 国外研究现状 工作流技术标准化组织工作流管理联盟于1 9 9 3 年成立,它的成立 标志着工作流技术在计算机应用研究领域之中被明确地划分出了自己的 一席之地,相应的概念与术语也得到了人们的承认。在全球范围内,对工 作流的技术研究以及相关的产品开发进入了更为繁荣的阶段。 目前国外关于工作流技术的研究情况,主要集中在以下几个方面。 西南交通大学硕士研究生学位论文 第2 页 i 、工作流的有关定义 一卜几年来,不同的研究人员,对工作流分别提出不同的定义,到目前 为止,仍没有一个完全统一的定义,最为典型的有工作流管理联盟( w f m c ) 的定义、g i g ag r o u p 的定义、i b m a l m a d e nr e s e a r c hc e n t e r 的定义、a mi t s h e t h 的定义、w m p v a nd e ra a l s t 的定义等1 1 , 4 】。 2 、工作流建模方法 工作流管理系统在建立阶段要完成企业业务流程的计算机定义,即: 将现实世界中实际的业务流程通过一个或多个建模方法转化为计算机可 处理的形式化的描述。这种建模方法是工作流技术研究的重点,一个好的 工作流建模方法可以清晰、准确、易于用户理解地描述业务流程,同时提 供强大的流程分析、仿真与优化的接口。 目前研究较热门的工作流建模方法有1 9 6 2 年c a p e t r i 提出的基于 语言行为理论的p e t r i 网,包括后来的颜色扩展的p e t r i 网、时间扩展的 p e t r i 网、层次扩展的p e t r i 网等1 3 】;以及基于过程的活动网络图、基于事 件驱动的过程链模型( e p c ,e v e n t d r i v e np r o c e s sc h a i n ) ,动态工作流 流程建模方法等【i ,4 , 针对工作流的建模方法的研究,主要是钊对工作流模型的研究,同时 会涉及到工作流事务模型的研究。 3 、工作流分析与仿真技术 工作流分析技术是近几年来刚刚兴起的工作流研究领域,它的研究主 要是采用基于p e t r i 网描述的业务流程。目前主要研究的领域有分析工作 流技术,如:工作流的可达性分析、结构分析、性能分析和基于排队沦的 能力规划方法等,具体请参见文献 3 ,5 ,6 ,7 。 工作流仿真技术是针对已有的工作流模型进行模拟分析技术,如 d e l o i t t e & t o u c h e b a k k e n i s t 公司开发的e x s p e c t 3 】是一个完善的基于 p e t r i 网的工作流仿真工具,利用它可以模拟生产过程、业务流程、网络 传输、软件缀件和嵌入式系统等,并为实际开发工作流管理系统提供具有 价值的参考。 4 、工作流管理系统的实现方案 工作流实现方案方面的研究主要是确定工作流管理系统的具体实现 西南交通大学硕士研究生学位论文第3 页 技术,它主要有两个方面的内容【4 】:选择系统采用的底层通信机制; 确定系统各组成部分之间协作的实现机制,如:传统的基于l o m s d o m i n o n o t e s 、基于c s f a i e n 邪e n r e r ) 结构的工作流管理系统的实现;近年来提出 的分布式的工作流实现方案及基于b s ( b r o w s e r s e r v e r ) 耋;层应用的工作流 实现方案,以及基于代t 里( a g e n t ) 和多代理( m u l t i a g e n t ) 的工作流系统实现 方案的研究。最近,又提出基于w c b 服务( w e bs e r v i o c l 的工作流系统的实 现方案等。 工作流系统实现方案的研究会涉及到实现系统所采用的技术,如基于 c o r b a 、基于j 2 e e 、永久消息、w e bs e r v i c e 等,同时实现方案的研究也 会和其它系统结合起来,如工作流在e r p ( e n t e r p r i s er e s o u r c ep l a n n i n g ) 系统中的应用等。 5 、开源工作流框架的研究 近年来,随着开源技术的繁荣,国外许多软件开发组织开发了许多开 源工作流框架,它们的开发和实现大大促进了工作流技术从理论向工业产 品应用的转化,为工作流产品的发展做出了巨大贡献。比较优秀的开源工 作流框架有:0 b e ( o p e nb u s i n e s se n g i n e ) 、s h a r k 等【8 | 。开源工作流产品 代码的研究,对开发我们自己的工作流产品具有很大的促进作用。 6 、工作流技术与网格计算技术的结合 网格计算技术是“下一项重要的技术”【5 1 】。把工作流管理技术应用到 网格计算中去而提出的g r i d f l o w 是近两年来国外分布式计算和工作流领 域内研究的热点,如网格计算的工作流管理 9 1 ,基于动态建模和调度的网 格工作流【1 0 】等等 1 1 , 1 2 1 。 1 2 2 国内研究现状 国内关于工作流技术的研究起步较晚,近年来,随着国家 8 6 3 c i m s ( c o m p u t e ri n t e g r a t e dm a n u f a c t u r i n gs y s t e m ) 主题技术的研究,工 作流技术在我国的研究受到越来越多的人的关注。我国当前关于工作流技 术研究领域主要涉及以下几个方面: 1 、工作流模型及其相关理论的研究 西南交通大学硕士研究生学位论文第4 页 由于国内研究起步较晚,目前基于此方面的理论研究主要在以下几个 方面进行:对工作流管理联盟( w f m c ) 的参考标准进行研究;对工作流 元模型相关的理论进行研究;对工作流技术中的事务模型、时间约束等 从理论上进行的研究等等。 2 、工作流管理技术在先进制造战略与信息化中的应用研究 工作流管理系统在先进制造战略中应用目前主要是结合我国制造业 信息化的发展,以工作流技术实现先进制造技术,实现“现代集成制造系 统”,这方面处于领先的有:清华大学的“国家c i m s 工程技术研究中心” 等。 工作流管理技术在信息化中的应用,主要以我国企业信息化、电子政 务、电子商务等信息化工作为契机进行工作流产品相关的研究开发工作。 如自2 0 0 2 年以来,国内出现了许多开发工作流产晶的企业开发了大量的工 作流产品。 1 3 本论文所做工作及意义 本文依托作者参与主要研发的成都市自来水公司工作流管理系统的 设计、开发为研究背景,在w f m c 工作流理论基础之上,基于国际工作流 联盟( w f m c ) 所推荐的工作流管理系统参考模型,通过比较分析已有工作 流模型建模方法,提出一种基于活动网络图的简单活动网络图流程建模方 法;在工作流管理系统实现技术上,给出一个完搀的基于j 2 e e 架构的、 基于w e b 的工作流管理系统产品的实现。 “ 本论文的研究开发时间为2 0 0 4 年2 月至2 0 0 4 年9 月底,论文的整理 总结时间为2 0 0 4 年1 0 月至2 0 0 5 年3 月。以下是本论文所做的工作及意 义。 第一、分析、总结了w f m c 工作流联盟所提出的工作流管理系统的体 系结构和参考模型的基础知识。 第二、基于论文开发系统的实际情况,比较分析了已有常用的工作流 流程建模方法,提出了一种基于活动网络图的简单活动网络图流程建模方 法。实践证明,所提出的简单活动网络图流程建模方法清晰、易用,对描 述流程不是十分复杂的工作流应用具有十分明显的优势,具有很好的参考 利用价值。 西南交通大学硕士研究生学位论文 第5 页 第三、基于o b ed e s i g n e r 框架实现了一个简易的工作流过程定义工 具,为进一步利用此工具进行业务流程建模提供了基础,它是基于w e b 方 式实现,区别于以往多数单机版的流程定义工具,具有很好的借鉴价值。 第四、利用所提出的流程建模方法和所实现的过程定义工具,有效地 对成都市自来水公司业务流程进行了建模分析,并利用s e s s i o n b e a n 设 计、实现了业务流程工作流引擎的核心e j b 。 第五、基于项目开发的实际需要,设计了一套基于j 2 e e 架构的多层 应用程序开发框架,实践证明,此开发框架可重用性高,在此框架基础上 能有效、快速地开发出类似的基于j 2 f f e 多层应用的产品。 第六、设计并实现了自来水公司工作流管理系统的资源管理器和客户 端应用等模块。 最后、测试并分析了该系统实际运行时的性能情况。 1 4 论文布局 本论文共分六章。 第一章,介绍并总结了工作流技术的研究现状,。总结了本论文所做的 = :作及意义。 第二章,总结性介绍了w f m c 工作流联盟的工作流技术基础、工作流 管理系统的体系结构及参考模型,并简单介绍了开发本文系统所采用的 7 2 e e 技术,以及本文系统所采用的u m 【,建模技术。 第三章,给出流程建模的概念,总结了常见的流程建模方法,介绍了 本论文所提出的基于活动网络图的简单活动网络图流程建模方法。 第四章,首先介绍了成都市自来水公司工作流管理系统项目背景,然 后基于开发项目的实际情况,详细地对成都市自来水公司工作流管理系统 做了系统需求分析,给出了各个模块的系统需求分析的描述。 第五章,给出了自来水公司工作流管理系统各个模块的详细设计与实 现过程。 第六章,对本文所开发的系统的实际运行情况进行了说明,同时给出 性能上测试的情况,并进行了分析。 最后,是全文的总结,并对今后进一步的工作做了展望。 西南交通大学硕士研究生学位论文第6 页 第2 章相关知识基础 2 1 工作流基本概念 工作流是英文中w o r k f l o w - - 词翻译而来,w f m c 给出的工作流定义是: w o r k f l o w :t h ec o m p u t e r i z e df a d l i t m i o no ra u t o m a t i o no ab u s i n e s s p r o c e s s ,i nw h o l e o r p a r t 2 1 即:工作流是利用计算机全部或部分地简化或自动执行业务过程【4 】口 然而,不同的研究者和工作流产品供应商从不同的角度给出了工作流 的不同定义,如:i b ma l m a d e nr e s e a r c hc e n t e r 的定义是:工作流是经 营过程的一种计算机化的表示模型,定义了完成整个过程所需的各种参 数,这些参数包括对过程中每个单独步骤的定义、步骤问的执行顺序、 条件以及数据流的建立、每一步骤由谁负责以及每个活动所需要的应用程 序【4 1 。还有其它的定义等等。 虽然这些对工作流的定义各不相同,但基本上都表明了工作流是利用 计算机系统( 包括网络和数据库等) 实现业务流程的计算机自动或半自动 化执行。 根据以上的定义和本文作者对工作流技术的理解,在此,给出如下的 工作流定义: 工作流是利用计算机和网络构建企业业务流程模型,然后在网络环境 下通过人的参与,实现业务流程的自动运转。 本论文所实现的系统即是基于上述工作流定义。 为了更好地理解工作流,这里给出工作流技术中几个常用概念的解 释。 1 、工作流案例 工作流系统的基本目的是处理案例,如:保险索赔、项目开发等均是 案例,原则上,这些案例以相同的方式处理【3 】口通俗地说,一个工作流案 例也即是一个工作流流程项目,通常,每个案例有一个惟一的标识。 2 、工作流任务 西南交通大学硕士研究生学位论文第7 页 任务是一个工作的逻辑单元,它不可分割且必须完整执行1 3 j 。在客户 看来,任务是原子的,它是工作流项目按工作流方式执行过程中产生的必 须处理的事情,它通常由一个人或一个角色执行并完成。在本文中,一个 任务对应于一个工作流任务点 参见第3 章 ,在此任务点所代表的人员 中,均可以执行该工作流任务。如项目开发中,编写系统详细设计文档是 一个任务,该任务可以由系统设计小组这个任务点内的所有人员执行。一 系列的任务即构成了工作流过程。 3 、工作流过程 某种案例的执行方式由相关的工作流过程来描述f 3 】。工作流过程指出 了工作流案例中的哪些任务需要被执行,以什么次序执行。我们也可以把 工作流过程看作是某种案例类型的程序【”。一个过程可以用来处理多个不 同的案例。本质上,过程由任务和条件构成,条件用来限定任务的执行次 序。 4 、工作流路由 过程决定了案例的生命周期,我们称之为案例的“路由”。沿着特定 分支的路由决定哪些任务需要被执行,和以何种次序执行。在路由案例时, 通常有顺序、并行、选择、循环四种路由结构吼对一个案例的完整路由 结束,所执行的任务即构成了一个工作流过程。 5 、工作流启动 当案例的状态允许时,一个任务才能被执行。但是,实际执行一个工 作流任务,通常还需要其它的前提。如:需要人为触发或需要其它的条件 ( 如对应的工作流项目的应用数据是否齐全等) ,才能开始执行。当工作 流案例实例化时,我们就说工作流开始启动;在工作流案例的第一个任务 开始执行时,我们称之为流程启动了。 6 、工作流资源 在业务过程里,工作流的建模和执行离不开资源。什么是资源呢? 比 如行政办公环境中的文职人员是资源,医生、门卫也是资源。资源最根本 的特征是:它能够执行特定的任务。它有两种划分方法,基于职能特征划 分的资源类称为角色( r o l e ) ,如管理人员是一个角色;基于组织特征划分 西南交通大学硕士研究生学位论文第8 页 的资源类称为组织单元,如项目申报组是一个组织单元【3 】。 2 2 工作流管理系统 2 2 1 基本概念 工作流管理系统是w o r k f l o wm a n a g e m e n ts y s t e m ,w f m c 给出的定义 是: a s y s t e mt h a tc o m p l e t e l yd e f i n e s ,m a n a g e sa n de x e c u t e s w o r k f l o w s t h r o u 曲t h ee x e c u t i o no fs o f t w a r ew h o s eo r d e ro fe x e c u t i o ni sd r i v e nb ya c o m p u t e rr e p r e s e n t a t i o no f t h ew o r k f i o w l o g i c 2 1 译成中文即:工作流管理系统是一个软件系统,它完成工作流的定义 和管理,并按照在计算机中预先定义好的工作流逻辑推进工作流实例的执 行1 4 1 。 通常,工作流管理系统指运行在一个或多个称为工作流引擎的软件上 的用于定义、实现和管理工作流运行的一套软件系统,它和工作流执行者 ( 通常指参与人) 交互,推进工作流实例的执行,并监控工作流执行的状 态。 在工作流管理系统的支撑下,通过集成具体的业务流程和操作人员的 应用界面,能够良好地完成对企业经营过程运行的支持,一个完整的工作 流管理系统通常都提供以下三方面的功能【2 , 4 , 1 r , 1 8 : 1 ) 建立流程模型功能:主要提供一个工作流过程定义工具,并考虑 业务过程定义所需的工作流资源的管理和过程的可视化建模功 能。 2 ) 运行阶段的控制功能:实现与业务过程关联的工作流引擎,工作 流引擎执行预定义好的工作流程,并完成每个执行阶段中任务的 调度、运行状态监控等功能。 3 ) 运行阶段的人机交互功能:提供业务人员参与执行工作流任务的 工具和界面,通常表现为任务表应用模块。 因此,从软件系统的实现角度来看,可以认为工作流管理系统提供以 下功能模块: 1 ) 7 - 作流过程定义模块,实现一个过程定义工具,以实现建立流程 西南交通大学硕士研究生学位论文第9 页 模型功能。 2 ) 资源管理模块,它提供对工作流过程建模所需要的资源如应用组 织、工作流角色、应用组织人员等进行管理和配置的功能。 3 ) 工作流引擎模块,这是一个执行、调度、监控业务流程的组核 心a p l 实现,它运用定义好的工作流程定义,实现一组a p i 完成运 行阶段的控制功能。 4 ) 客户端应用模块,它根据特定的业务流程,提供一组与用户交互 的界面( 如查看、输入、选择流程任务等操作界面) ,实现运行阶 段的人机交互,以方便业务流程参与人员查看、控制工作流的任 务的执行。 2 2 2 分类 依据不同的分类标准,工作流管理系统可分为不同的类别。 1 按所实现的业务过程分 根据工作流管理系统所实现的业务过程,工作流管理系统可分为管理 型工作流、设定型工作流、协作型工作流及生产型工作流。 2 按底层实现技术分 根据底层实现技术,工作流产品可分为以通信为中心、以文档为中心 和以过程为中心几类1 1 4 1 。 3 按任务传递机制分 根据不同工作流系统所采用的任务传递机制的不同,市场上的工作流 产品可划分为四类【1 , 3 , 4 , 8 , 1 3 , 2 0 】: 1 ) 基于文件的工作流系统:以共享文件的方式来完成任务项传递, 这种类型的工作流产品开发得最早,发展最成熟,产品较多,如 i b m 的f l o w m a r k ,i n c o n c e r t 的i n c o n c e r t 等。 2 ) 基于消息的工作流系统:通过产品的电子邮件系统来传递文档信 息,这种类型的产品一般都提供与一种或多种电子邮件系统的集 成接口。如j e t f o r m 公司的i n t e m p o 即是这种类型的产品。 3 ) 基于w e b 的工作流系统:通过w 脚来实现任务的协作。这一类产 西南交通大学硕士研究生学位论文第10 页 品起步在1 9 9 5 年之后,但发展迅速,其市场前景十分看好,近年 来,我国工作流产品市场上大部分产品均是此类工作流系统。本 文所实现的系统也属于此类产品。 4 ) 群件与套件系统:这一类产品这里单独划分是因为这一类产品都 需要依赖自己系统的应用基础结构,它们本身就是一个完整的应 用开发环境。如:i b ml o t u sn a e 魄、n o v e l 吨 司的g r o u p w i s e 等。 2 2 3 实现技术 工作流管理系统的实现技术主要从底层支持技术、如何提高可靠性、 柔性和分布性及系统开发实现技术几个方面进行考虑和分类。 i 、底层通信技术 i ) 基于群件与套件系统实现技术:如许多工作流产品采用i b m 的 l o t u sn o t e s 作为其底层支持系统f 4 l 。 2 ) 基于c o r b a :许多工作流管理系统采用c o r b a 做为底层支持技术, 以实现分布式系统需求m 3 】。 3 ) 基于w e b :基于w e b 技术实现工作流管理系统具有非常明显的优 势。它具有良好的灵活性、用户界面良好、并且可实现分布式系 统。 4 ) 基于消息队列和t pm o n i t o r :消息队列和t pm o n i t o r 都为上层 应用系统提供了可靠的消息通信和维护机制,如i b m 的 e x o t i c a f m q m 等【4 1 。 5 ) 基于主动数据库技术:如w i d e 3 1 。 6 ) 基于e c a ( e v e n t c o n d i t i o n a c t i v i t y :事件一条件一活动) 规则:它 以事件驱动工作流实例的方式推进运行,如e v e t 4 。 7 ) 基于可移动代理( a g e n t ) :如d a r t f l o w 3 】。 8 ) 基于e j b 技术:这类工作流产品在近年来随着j 2 e e 架构的愈发成 熟,越来越多的工作流管理系统采用e j b 实现,它具有分布式、 基于w e b 等特征,同时可以很灵活地转换为基于消息队列的底层 实现技术等。 2 、开发实现技术 西南交通大学硕士研究生学位论文第1 1 页 1 ) 基于c s 结构或单机模式:这类系统主要以c c 十+ 、p a s c a l 、s o l 等实现。早期的工作流产品大部分都是采用这种技术实现。 2 ) 基于j 2 e e 架构模式:这类产品主要以j a v a 作为开发语言,采用 j s p 、e j b 、s e r v l e t s 、a p p l e t s 、x m l 、j n d i 、d h t m l 、s q l 等实现。 近年来,越来越多的基于w e b 的工作流管理系统采用这种开发技 术,它开发周期短、实现灵活,具有跨平台性。本文所实现的系 统即是基于j 2 e e 架构开发实现的。 3 ) 基于n e t 架构模式:这类产品主要以c # 作为开发语言,采用 a s p a s p n e t 、7 3 v l l 、s o l 等技术实现。它开发的产品主要应用在 w i n d o w s 平台之上i z 。 2 2 4 体系结构 工作流管理技术是正在迅速发展的技术,在不同的行业已得到了应 用,为了促进不同工作流产品之间的互操作,便于和其它应用系统的集成。 国际工作流管理联盟( w f m c ) 提出了有关工作流管理系统的一些规范,定义 了工作流管理系统的体系结构。图2 - 1 为w f m c 提出的工作流参考模型的 体系结构图。这个参考模型的体系结构给出了抽象的工作流管理系统的功 能组成部件和接口,它能够满足工作流管理系统和产品应该具有的主要功 能。从图2 一l 可以看出,工作流管理系统主要由三类构件组成,4 ,8 】: 1 ) 软件构件:完成工作流管理系统各组成部分功能的实现; 2 ) 系统控制数据:工作流管理系统中的一个或多个软件构件使用的 数据; 3 ) 应用与应用数据:它们被工作流系统调用来完成整个和部分工作 流管理的功能。 西南交通大学硕士研究生学位论文第12 页 一 盖巍 图2 - 1w f m c 提出的工作流管理系统的体系结构图b 4 】 2 2 5 工作流参考模型 图2 2 给出了w f m c 提出的工作流参考模型,从图中可以看出,参考 模型定义了5 类接口来连接过程定义工具、工作流管理工具、工作流客户 应用、工作流引擎和其它工作流执行服务,其中工作流引擎是核心模块。 这五个接口【2 , 4 , 1 7 , 1 8 分别是: 西南交通大学硕士研究生学位论文 第13 页 盛i 驾 。苎塞耋墨墨。一i 。靠4 “。一 苎呈盟 堡旦盐 工作流客 户应用 圭堡里! 工作流引擎直接 调用的应用 图2 - 2w f m cj :作流参考模型“1 1 ) 接口l :过程定义输入输出接口,它为在不同物理或电子介质之 间传递过程定义的信息提供了交互的形式和a p i 调用函数。 2 ) 接口2 :客户端应用程序调用接口,它主要提供客户端应用程序 和工作流引擎交互的接口及其形式。 3 ) 接口3 :激活应用程序接口,它主要定义了工作流引擎直接调用 其它应用的接口格式。 4 ) 接口4 :工作流执行服务之间的互操作接口,它主要提供w a p i 来 实现工作流引擎之间的互操作。 5 ) 接口5 :系统管理与监控接口,它主要为了实现对工作流的管理 和监视。 2 2 6 系统组成模块 由上述内容,我们可以总结出,工作流管理系统主要由以下四个主要 的模块组成,下面是这四个模块的具体组成及作用分析。 i 、工作流过程定义工具模块 过程定义工具模块对应于w f m c 工作流管理系统体系结构及参考模型 的过程建模定义工具。过程定义工具以计算机能够处理的形式进行过程 的定义,它可以基于形式化的过程定义语言、对象一关系模型,如p e t r i 网等,来进行过程模型定义,也可以采用一组可视化的命令选择工具,以 西南交通大学硕士研究生学位论文第14 页 方便和易于理解的图形方式,如活动网络图等,对业务流程进行建模,它 可以作为一个单独的产品独立开发,也可以作为企业经营过程分析系统的 一部分提供给客户。 本论文所开发的工作流管理系统的工作流过程定义工具,即是采用一 组可视化的命令选择工具、以图形化的方式来对业务流程建模,并且是作 为企业经营过程分析系统的一部分提供给客户的。 2 、工作流资源管理器 工作流资源管理器对工作流管理系统中的组织单元和工作流角色进 行管理,它负责管理工作流管理系统中所涉及到所有的应用组织、应用组 织中的用户及工作流角色,是工作流系统管理工具的一部分。 本论文所开发的工作流资源管理器即是一个负责工作流应用组织和 工作流角色管理的模块。 3 、工作流引擎 工作流引攀是工作流智理系统的核心,它实际上是企业经营过程的任 务调度强,宕根据工作流过程定义工具描述的企业业务流程,来实例化工 作流程并负责执行工作流,负责为工作流任务的执行进行导航并处理调 度。因此,工作流引擎可以看作是企业的业务操作系统。 本论文所开发的工作流引擎是一组e j b 组成的a p i 调用,它负责整个 工作流管理系统中工作流任务的执行和逻辑调度。 4 、客户端应用 客户应用通常在工作流管理系统中是必不可少的,它与特定的业务流 程相关,通常包括工作流任务表、任务执行器等。客户端应用负责对工作 流任务进行列表、执行、状态查看等功能,是用户和工作流管理系统的接 口。 本论文开发的工作流管理系统客户端应用由登录模块、流程任务表、 任务执行器、任务状态和流程定义查看、建立流程项目并肩动工作流程等 几个子模块组成。 西南交通大学硕士研究生学位论文 第15 页 2 3j 2 e e 概述 2 3 1j 2 e e 框架 j 2 e e ( j a v a2e n t e r p r i s ee d i t i o n ) 是分布式多层应用开发与部署平 台,它直接面向企业级应用。j 2 e e 是在j 2 s e ( j a v a2s t a n d a r de d i t i o n ) 基础之上增加了大量的企业级特性而形成的。如图2 3 是j 2 e e 架构组成 架构框图【1 4 l 。 哆哼i 匕两葡荔瓣j i i 蕊二 j 4 ,s 椭n z a 1 r r - :输入输出c o r b a i d l 一 网路数据露x m l其它等 臣录由手间 安全,数学 j 2 s e 运行时虚拟机 夕 蛊l 譬l i ij 2 e e 平台 芦 l 刮 譬l 、 位于j 2 e e 之 f 的传统平台 圈2 3j 2 e e 架构组成框图【1 4 】 如图2 3 所示,j 2 e e 支持j s p 、s e r v l e t s 、a p p l e t 等技术,可方便 快捷地构建客户端应用;它支持s e s s i o nb e a n 、e n t i t yb e a n 等,可快速 地实现业务逻辑;它通过j d b c ( j a v ad a t a b a s ec o n n e c t i o n ) 技术可方便 地和后台数据库系统进行交互,具备了开发企业级应用系统的所有技术。 多层结构是j 2 e e 的核心,在多层结构中,组成应用程序的各种组件 在逻辑上是分离的或者是分布式的,它跨越网络环境的各层,也被称为n 层结构。多层应用在逻辑上对应用组件进行分组,分组的依据是这些组件 在整个应用结构中执行的功能。如图2 4 所示为一个常见的在逻辑上分为 西南交通大学硕士研究生学位论文第16 页 四层的应用示例【1 4 】: j 2 e e 应用1j 2 e e 应用2 i。a。1。p。p。l。i。c。a。t。i。o。n i 呈! i :2 :j 屈裔、 lb e 泌j $ 矿 id y n a m i ci c l i e n t 暇熙划层 j s p 菩 r页面、 “” l , 8 业? _ 酽 “ j 客户机 j 2 e e 服务器 回国答 鬻囊 图2 - 4 一种常见的j 2 e e 四层逻辑划分【1 4 i 它的通信机制【1 5 l 如下图2 - 5 所示: 业务逻辑层e i s 层 w e b 浏览器 w e b 页面 a p p l e t s 和 一些可用 j a v a b e a a $ 应用程序客户 端和可选用的 j a v a b e 8 d _ s 吲淼攀 鬻 i 二i j 2 e e 服务器 图2 - 5 四层逻辑划分通信机制图【坫l 采用j 2 e e 技术开发工作流管理系统具有以下优势: 1 ) 采用跨平台的j a v a 作为开发语言,可方便地将开发出来的系统发 布到不同的操作系统平台之上。 2 ) 采用j 2 e e 技术简单和统一的基于组件的分层结构可以提高开发 效率,因为j 2 e e 架构天生基于m v c ( m o d e l - v i e w - c o n t r 0 1 ) 模式【5 2 】, 可以明确的划分逻辑层次,提高代码的重用性。 3 ) 可以充分利用j 2 e e 的e j b 开发技术,快速高效地实现系统所需要 的业务逻辑。j 2 e e 架构支持三种e j b 技术:实体b e a n ,s e s s i o n b e a n 和消息驱动b e a n 。 4 ) 利用j 2 e e 技术进行开发,可以充分地利用已有j 2 e e 技术的稳定 性和j 2 e e 非常成熟的企业应用经验,减小开发的风险。这是任何 厂i i l l l 西南交通大学硕士研究生学位论文第17 页 其它技术无可比拟的优势。 5 ) 可以充分利用j 2 e e 内建的对w e b 服务的支持的特性,如:j a v a 2 内建支持x m l 技术和正则表达式处理等技术,x m l 技术可以很好 地支持m v c 各层之间数据对象的传递,大大地简化开发过程【5 2 州。 2 3 2e j b 简介 j 2 e e l 4 体系在e j b 2 0 规范中引入了三种e j b ,它们是s e s s i o n b e a n 、 e n t i t yb e a n 和m e s s a g ed r i v e nb e a n 。其中e n t i t yb e a n 表示持久性业 务数据,m e s s a g ed r i v e nb e a n 执行业务功能,将响应发送到j a v am e s s a g e s e r v in e ( j m s ) 主题或者队列的异步消息。据说s e s s i o nb e a n 在目前实际 项目

温馨提示

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

评论

0/150

提交评论