




已阅读5页,还剩63页未读, 继续免费阅读
(计算机应用技术专业论文)基于jvm的工作流管理开发平台研究与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
中山大学硕士论文 基于j 的工作流管理开发平台研究和实现 论文题目:基于j w 的工作流管理开发平台研究和实现 专业:计算机应用 硕士生:林荣辉 指导教师:常会友 摘要 计算机支持的协同工作( c s c w ,c o m p u t e rs u p p o r tc o o p e r a t i v ew o r k ) 技 术的出现和发展,从根本上改变了人们工作和交流方式,而作为支持协同工作的 重要技术,工作流技术越来越受到了业界的关注与研究,发展迅速,基于工作流 的协同管理被认为是下一个信息化管理模式“1 。 但是目前的工作流产品几乎都是基于一些大公司的技术和标准,所提供接口 的可扩展性非常有限,不能很好地满足企业在处理复杂多变情况时的扩展需要, 而产品开放的程度更是难以满足进一步研究的需要;特别是在我国,信息化技术 水平相对落后,大量存在的中小企业或者单位,很难承受起商业软件的巨大费用, 因此提供低成本、高灵活性的工作流管理平台具有重大的现实和理论意义。 本文通过对工作流技术进行了较为广泛的研究,设计了一个比较通用的工作 流管理开发平台,为有效地实施工作流管理提供了参考的解决方案。在研究过程 中,本文利用j ( j a v a 虚拟机) 成功实现了一个初具规模的核心系统,实际的 使用表明,该系统具有很高的灵活性,既可以支持工作流管理应用系统的快速开 发,也具有提供以嵌入方式支持应用集成的功能;而且系统接口完全开放、可扩 展性强,为进一步的工作流技术研究提供了便利的试验平台。本文还对工作流中 的一些高级特性,例如事务、时间和消息通信等做了比较深入的研究和分析,并 且给出了较为具体的解决方案,作为论文的后续研究方向。 关键字:工作流:工作流模型:工作流管理系统;j a v a 虚拟机;p m d l 中山大学硕士论文 基于刑的工作流管理开发平台研究和实现 t i t l e ;t h er e s e a r c ha n dr e a l i z a t i o no fj v 肛b a s e dp l a t f o r mf o rw o r k f l o w m a n a g e m e n td e v e l o p m e n t m a j o r :c o m p u t e ra p p l i c a t i o n n a m e :l i nr o n g - h u i s u p e r v i s o r :c h a n gh u i y o u c s c wt e c h n o l o g i e sh a v eg r e a t l yc h a n g e dt h ew a yo fp e o p l e sw o r k i n ga n d c o m m u n i c a t i n g , a st h e h o tp o j mt e c h n o l o g yf o rc s c w , w o r k f l o wt e c h n o l o g ya t t r a c t s m o r ea n dm o r ea t t e n t i o nf r o mb o t hi n d u s t r ya n dr e s e a r c hc o m m u n i t i e s i t ss a i dt h a t w o r k f l o w - b a s e dc o o p e r a t i o nm a n a g e m e n tw i l lb et h en e x ti n f o r m a t i o nm a n a g e m e n t p a t t e r n 1 1 b u ta tp r e s e n t m o s to fw o r k f l o wp r o d u c t sa t eb a s e do nt h es t a n d a r d sa n d t e c h n o l o g i e so fs o m eb i gc o m p a n i e sa n dh a v el i m i t e de x p a n s i b i l i t i e s , s ot h e yc a n n o t w e l ls a t i s f yt h en e e df o rd c a 虹gw i t hc o m p l i c a t e ds i t u a t i o n si np r a c t i ,w h a t si i l o l c , i ti sh a r d e rf o rt h e s ep r o d u c t st os a t i s f i e dd e e p e rr e s e a r c h i no u rc o u n t r y , i n f o r m a t i o n l e v e li sr e l a t i v el o w , a n dt h e r ea r em a n ym i d d l e - o rs m a l l - s c a l ee n t e r p r i s e s , a n di ti s h a r df o rt h e s ee n t e q ) r i s e st oa f f o r dt h eb u s i n e s sw o r k n o wp r o d u c t s , s oi ti si m p o r tt o g i v eaw o r k t l o wd e v e l o p m e n tp l a t f o r mt h a ti sl o wc o s ta n df u u yo p e n i nt h i sp a p e r , w eg i v ea ni d e at h a ti st ob u i l dag e n e r i cp l a t f o r mf o rw o r k f i o w m a n a g e m e n td e v e l o p m e n t d u r i n gh 墨e a i c hp e r i o d , w eh a v eb u i l taj v m b a s e dc o r e p l a t f o r mt h a tc a ns u p p o r tt od e v e l o pw o r k f l o wm a n a g e m e n ta p p f i c a t i o nr a p i d l ya n d a l s ot ob ee m b e d d e di n t oa p p l i c a t i o n st os u p p o r tp r o c e s s e sm a n a g e m e n t ,s u c ha sb r p o rp r o c e s sr e f o r m e d w h a t sm o r e qt h ep l a t f o r mi sf u l l yo p e na n di tg i v e saf r e e p l a t f o r mf o rd e e p e rr e s e a r c ho nw o r k f l o wt e c h n o l o g y a n di nt h i sp a p e r , w eh a v ea l s o d i s c u s s e ds o m ea d v a n c e da t t r i b u t e so fw o r k f l o ws u c ha sw o r k f l o wt r a n s a c t i o n s , w o r k f l o wt i m i n ga n dm e s s a g ec o m m u n i c a t i o ni nw o r k f l o ws y s t e m , a n dw eh a v e g i v e nt h ed e s i g nf o rt h en e x tr e s e a r c hd 打e c t i o n k e y w o r d s :w o r k f l o w ;w o r k f l o wm o d e l ;w o r k f l o wm a n a g e m e n ts y s t e m ;j v m ;p m d l 中山大学磺士论文 基于j w 的工作流管理开发平台研究和实现 1 1 研究背景 第1 章引言 实践表明,利用工作流技术对经营过程进行管理,可以极大地提高工作效 率,工作流技术成为了当前研究的热点。但是在我国国内,总体水平相对落后, 而大量存在的中小型企业迫切需要利用先进的信息技术提高企业竞争力,而目 前的工作流产品几乎都是基于一些大公司的标准和技术,扩展性非常有限,而 且实施成本高,企业难于承受;一些开源的项目本身规范化水平有限,不适合 对工作流技术做进一步研究。本文的研究就是这种背景下,以低成本、高灵活 性为原则,提出了搭建工作流管理开发平台的思想,从而为实施工作流管理提 出一个参考的解决方案,具有现实的重要意义。 本文的研究基于两个项目:“深圳市工商局公平交易执法系统”和“基于 工作流的企业信息化集成平台”,其中前者是在l o t u sd o m i n o 上开发的以工作 流为特征的o a 平台,提供了包括流程自定义、应用文书自定义等高级策略,该 系统由于在电子政务信息化中的突出仓q 新,获得了“填补了国内相关领域空白 和具有国内领先水平”的评价,并且已获2 0 0 3 年深圳市科技进步2 等奖和广东 省科技进步3 等奖;而“基于工作流的制造业信息化集成平台”课题是致力于 研究适合中国制造业使用的企业业务平台,采用工作流技术为核心技术。平台 本身提供制造业企业业务过程的管理功能,同时也是一个开放的平台,它能集 成企业现有的业务系统如企业供应链、c 跚、e r p 系统等,将其整合成完整的企 业业务操作平台。 工作流技术虽然出现得比较早,特别是近几年也是得到了很大的发展,但 是,实践同时也是证明,工作流技术并不是很成熟“1 ,本文的另一个意义就是 为工作流的研究做一份努力,共同推进其发展进程。 1 2 研究内容 本文主要的研究内容是工作流管理技术,通过对其理论和应用领域的比较 广泛和深入的研究分析,搭建工作流管理层次上的流程控制核心和定义标准接 中山大学硕士论文基于j v m 的工作流管理开发平台研究和实现 口,该平台的主要目的提供工作流引擎的支持,同时定义了一系列的标准接口, 使得可以方便进行工作流管理系统的开发,而且通过标准的接口提供以嵌入的 方式支持应用集成功能,实现b p r 或者是其它一些业务过程重组的需求,从而 最大化地保护对原来系统的投资,降低引入先进信息化技术的成本。同时本系 统完全开放,为进一步研究工作流技术提供了便利的试验平台。 另外,本文对工作流技术中的一些高级特性,例如事务特性、时间特性以 及消息通信等做了探讨,并给出了在系统核心平台上实现的比较具体的方案, 作为下一步深入研究的方向。 1 3 本文组织 全文共分为7 章: 第l 章是引言,对本文的研究背景、内容和意义做了阐述; 第2 章是工作流技术综述,对工作流技术发展历史、研究状况和研究趋势 等作了阐述: 文章的第3 、4 、5 章,是本文研究的重点。 第3 章主要是从理论上详细分析了工作流的系统模型;并就本文的一些术 语和模型定义规则做了说明: 第4 章详提出本文重点研究的搭建工作流管理开发平台的思想;并细阐述 了开发平台的具体设计思想和设计细节: 第5 章主要对工作流中的一些高级特性做了比较深入的研究,并且给出了 在本文平台上实现的相应设计方案; 第6 章是以个例子开发作为本文系统的实用性说明; 第7 章是论文和研究生阶段的学习总结,并阐明了进一步的工作研究方向。 2 中山大学硕士论文 基于j 、,l i 的工作流管理开发平台研究和实现 第2 章工作流技术研究 2 1 工作流技术概况 工作流技术是用于对流程进行自动管理的计算机技术,近年来引起了越来 越多学者的关注和研究兴趣,成为了当前研究和应用的一个热点“1 。在本章, 我们将从定义、发展历史和研究趋势等方面对工作流技术概况做阐述。 2 1 1 工作流的有关定义 虽然比较早期就出现了工作流的概念,而关于工作流定义,至今仍未有一 个统一的标准,其中1 9 9 3 年成立的工作流管理联盟( 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 ,w f m c ) 嘲颇具代表性:工作流是一类能够完全或者部分由计算机自 动执行的经营过程,它根据一系歹0 过程规则使得文档、信息或任务能够在不同 的执行者之间进行传递和执行伽。下面还有一些比较典型的定义“: 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 认为工作流就是工作流程的计算机模型, 即将工作流程中的工作如何前后组织在一起的逻辑和规则在计算机中 以恰当的模型进行表示并对其实旌计算它定义了完成整个过程所需用 到的各种参数。这些参数包括对过程中每一个单独步骤的定义,步骤的 执行顺序和条件,包括步骤问的数据流以及每个活动所使用的应用程 序: a m i ts h e t h 指出工作流是涉及到多任务协调执行的活动,这些任务分 别由不同的处理实体来完成。一项任务定义了需要做的某些工作,它可 用各种形式来进行定义,包括在文件或电子邮件中的文本描述、一张表 格、一条消息以及一个计算机程序。用来执行任务的处理实体可以是人, 也可以是计算机系统( 比如一个应用程序、一个数据库管理系统) ; w m p v a nd e ra a l s t 则认为工作流是一系列工作的偏序集: 3 中山大学硕士论文 基于j w 的工作流管理开发平台研究和实现 在国内,范玉顺等人给出了如下定义:工作流是通过计算机软件进行定 义、执行并监控的经营过程。 以上的定义分别从不同的角度对工作流概念进行了描述,但是简单地说, 工作流就是一系列相互衔接、自动进行的业务活动或任务,鉴于w f m c 影响的不 断扩展和深入,本文遵循w f m c 的一些术语和基本定义。 2 1 2 工作流的发展历史 纵观工作流技术的发展历史,是同信息技术的发展紧密相连在一起的“, 八十年代初期,计算机还没有大范围地普及,纸张是企业里各种文档地主要载 体,但这种古老的载体在文档的处理、存储和查询方面都是非常低效率的,因 此一些企业开始建立自己的表单处理应用处理系统,自动实现表单传递、处理 等功能,这个可视作是工作流管理系统的一个雏形。 到了八十年代中期,一些有远见的i t 公司如f i l e n e t 和v i e w s t a r 率先开 拓了工作流产品市场,成为第一批的工作流产品供应商,他们的产品已经能进 行一些简单的功能集成,如图像扫描、关键字索引及光盘存储等,这就是早期 工作流管理系统,这种程序化软件系统已经成为企业简化和进行业务流程重组 提供了一种解决方案,尽管这种方案并不是很成熟。 到了九十年代,计算机的普及和网络技术发展的速度惊人,现代企业的信 息资源数量也是以几何级速度增长,并显现出异构、分布、松散耦合的特点, 企业的决策对日常业务活动详尽信息的要求以及c s 结构、分布是处理技术 ( c o r b a 、r m i 、w e bs e r v i c e ) 的日益成熟,使得实现异构分布式执行环境的、 业务流程高度自动执行的工作流管理系统成为不可抗拒的趋势。 信息技术发展到今天,业务流程问题成为目前信息系统开发中的突出问题, 要求信息系统包含工作流管理系统以支持各种业务逻辑流程: 管理科学在新时期的发展,激发了组织机构对业务流程的兴趣,出现了 新的经营理念,例如业务过程重组b p r 和持续过程改进c p i : 当今的组织机构内部,无论是单位还是企业,其可以比以前提供更多的 产品和服务, 从而业务过程的数量也急剧增加而且业务过程也变得更 加复杂。因此业务过程的有效管理变得非常重要; 4 中山大学硕士论文 基于j 憎的工作流管理开发平台研究和实现 需要实现动态流程重组,为了适应激烈的竞争,组织机构需要经常改变 业务流程。 因此,我们从工作流的发展历史可以看出,下一代信息技术的必然是以工 作流技术进行业务过程管理与优化为特征的模式。这里引用d e l p h ig r o u p 的创 始人和主席t h o m a sk o u l o p o u l o s 在文献 5 的预言:工作流系统将最终成为覆 盖各类台式机与网络操作系统之上的业务操作系统b o s ( b u s i n e s so p e r a t i o n s y s t e m ) ,将带来操作系统、信息管理软件的一次革命,乃至在将来从企业应用 步入家庭应用,成为新时代的家庭信息平台f i p ( f a m i l yi n f o r m a t i o n p l a t f o r m ) 。 2 2 工作流技术研究现状与趋势 2 2 1 工作流技术的研究现状 工作流技术作为一种新生的企业信息化技术正日益受到人们的关注,对其进 行的研究和应用也在飞速增长1 9 9 3 年工作流技术的标准化组织,工作流管理联 盟w t m c 的成立,更标志着工作流技术在计算机应用领域之中被明确地划分出自 己的一席之地,相应的概念与术语得到了人们的认可,把工作流的技术研究以及 相关的产品开发带入了一个崭新的阶段。 由于工作流技术是一种从实际的商业活动和企业生产过程中发展而来的技 术,和其他理论技术不同的是商业应用对于工作流技术的发展起了很大的推动作 用,因此这里我们将从工作流产晶现状和工作流技术研究现状两个方面进行分析 工作流技术的发展状况。 工作流产品现状 工作流技术目前在国内外存在巨大的市场潜力,各大公司也纷纷推出自身 的支持工作流技术的产品,而且企业的应用效果也较为成功,从而很大程度上促 进了工作流技术的研究和企业实施。在国内工作流技术也引起许多企业和科研机 构的极大兴趣,工作流产品的市场正在以每年两位数字的速度增长嘞。 目前在国际市场上的大多数工作流产品都是以w f i l c 给出的工作流管理系 统( w o r k f l o wm a n a g e m e n ts y s t e m , w f 瑚l s ) 模型为系统的参考模型,在其基础上 5 中山大学硬士论文 基于j v m 的工作流管理开发平台研究和实现 实现工作流产品”3 。在国内市场,随着工作流技术的迅速发展,工作流产品这 两年在国内得到了长足的发展,随着国内电子政务和办公自动化( o a ,o f f i c e a u t o m a t i o n ) 市场的成熟,工作流技术在国内的应用已经全面铺开,其中比较 有代表性的如西安协同软件、神州数码、中唐,有生博大,东方易维等。 另外一个方面,随着j a v a 技术的普及,开源项目也不断涌现,以o b e 、j a w e 、 s h a r k 、o f b i z 为代表的开源工作流产品。由于产品采用开源的方式,邀请众多 工作流高手参加,在互联网上进行公开讨论,使得这些产品发展迅速,并且具 有很高的技术含量。 综观工作流产品的发展和现状,工作流技术的正处于高速发展期。在国内 最为直接的刺激和市场,是电子政务和办公自动化的迅速铺开。其实,在早期 也有过很多国内公司尝试将工作流技术应用于商业化,但绝大多以失败告终; 存活下来的,很多也因为适应电子政务的应用,而转移方向。随着国际市场和 国内市场的进一步成熟,我们可以看到工作流技术将会在以下三个方面得到迅 速的发展: 政府或企业的办公自动化; 基于流程整合的应用,例如实现b r p 或者是业务流程重组: 为企业应用提供工作流引擎支持; 工作流技术研究现状 工作流技术方丽的理论研究是起始于工作流产品的开发工作中。软件开发 人员在处理早期系统中的文档管理和人员协作时,发现应该有一种专门的技术来 处理企业的日常运作流程就像数据库应用中的d b m s 一样,让他们能专心于解决企 业核心业务,于是工作流技术作为计算机支持的协同工作( c s c w ) ”1 研究领域的 一个方向被提出。随着计算机技术的发展和企业对信息化需求的提高,在上世纪 末九十年代工作流技术的理论研究开始得到了众多高等院校和研究结构的重视。 相对于工作流产品市场的繁荣,工作流的相关理论性研究显得有些滞后。在过去 很长的一段时间内,工作流技术的研究工作都是由产品的开发厂商所主导,因此 导致工作流技术的研究很大程度上受市场所导向。 工作流技术的理论研究目前主要有以下几个方面的研究“: 工作流模型和工作流定义语言的研究; 6 中山大学硕士论文 基于刑的工作流管理开发平台研究和实现 工作流技术实现和应用的研究; 工作流集成技术的研究; 工作流事务研究。 但是目前工作流系统还缺少非常系统的、形式化的理论基础,研究重点主 要集中在工作流的体系结构、过程模型、系统互连等方面。同其它标准一样, w f m c 参考模型给出的只是工作流管理系统( w f s s ) 的各个功能部分,而没有给 出任何实现的细节。实际构造一个1 i | f 惦时有许多具体的技术细节需要仔细加以 考虑,以便满足w f m s 向大规模工作流管理方向发展所需的高度的灵活性、可用 性、可伸缩性、可靠性以及互操作性等方丽的要求”1 。 2 2 2 工作流技术的研究趋势 工作流管理作为一个新兴的研究领域,自然还存在着诸多问题有待于进一 步研究解决,目前的工作流产品还存在以下一些不足之处m ”嘲: 不同工作流产品间缺乏互操作性:由于工作流的定义不明确以及缺乏统 一的概念模型,生产出来的产品相互不兼容,无法进行互操作;虽然 w f m c 在工作流概念和接口标准化方面做了很多的努力,情况有所改善, 但是目前仍然比较混乱; 目前的工作流产品不适用于企业级别的工作流管理:目前的商品化工作 流系统起源于办公自动化系统,因此工作流系统开始只是作为一个协同 工具为小群体而设计的,要解决的主要问题是关于共享和协作,本身存 在着一些单诸如数据库、通信支持的不足、不支持异构和分布式的环境 等不足,至于可测量性、可靠性等高级功能,基本上未作考虑。因此, 目前的工作流产品很难应用于企业级的工作流管理; 目前的工作流系统缺乏健壮性,对并发访问和出现错误时缺乏正确和可 靠的支持:一个大型的企业级工作流应用可能包括几千个甚至是几十万 个用户的同时运用,在广大的分布式环境中运行,这种特性非常关键; 大多数工作流产品的可视化建模缺乏严格的形式化语义,而且缺乏对工 作流进行分析、仿真和纠错的工具。 经过对工作流技术的研究,在文献 i o 中提出工作流技术的主要研究方向 7 中山大学硕士论文 基于y c m 的工作流管理开发平台研究和实现 有两个:一是为工作流技术的发展解决理论上存在的问题,探讨工作流模型和 语义的形式化表示方法等;二是从工作流技术实现的角度探讨利用先进的技术 提高工作流系统平台的性能和可靠性。因此,工作流技术研究的理论课题为 9 : 过程建模理论与建模方法:主要研究如何清晰、准确地表示实际应用中 的过程,特别是研究如何用形式化的方法表示过程模型; 模型验证和模型仿真方法:研究从理论上如何验证所建立的过程模型不 存在死锁问题,研究如何评价所建立的模型的性能和优化模型的方法; 过程模型和其他模型的集成方法:研究企业的过程模型如何和功能模型、 信息模型、资源模型、组织模型,甚至经济模型和决策模型等的配合。 在工作流技术的具体实现方面也有以下课题: 异常处理和错误恢复问题:对于处理企业业务这样复杂的应用系统,出 现异常情况和错误是非常正常的问题,这就需要我们的平台能够灵活的 处理各种异常情况,保证系统的不间断无错运行: 事务处理的概念:在过程模型和过程执行中加入事务管理的概念,使得 平台具有事务的特性,提高系统处理大规模业务应用的能力; 应用集成问题:工作流本身只是一个完成企业过程建模和过程管理的技 术,为了在企业的实际业务中得到有效使用,他必须和企业现有的系统 实现系统间的集成,通过集成来提高整个企业的应用水平和应用效率。 本文的研究主要目的是搭建比较通用支持工作流管理应用系统的开发平 台,借助该平台,应用开发耆可以将主要的精力放在具体的应用逻辑中,而不 用拘泥于工作流层面上的流程逻辑,同时该平台为企业中实施工作流管理和应 用集成提供核心支持平台。工作流管理系统是工作流技术的支撑软件平台,随 着工作流技术的发展,工作流管理系统的功能也在不断强大,在本文的第3 章, 将在理论上对工作流管理系统进行比较详细的分析。 8 中山大学硕士论文基于j w 的工作流管理开发平台研究和实现 第3 章工作流管理系统模型研究 3 1 工作流管理系统模型 工作流管理系统是基于模型的架构,而工作流模型是工作流技术研究的基 础,工作流技术的发展很大程度上取决于工作流模型研究的进展。简单地说, 工作流模型是将现实中的经营过程进行抽象,最终表示成可以为计算机所处理 的文字、图像或者是符号。3 。 工作流技术的发展在前期一直由软件提供商所主导,由于没有工作流技术的 标准,因此各个软件提供商生产出来的工作流软件只能实现自身产品的工作自动 化,而无法与其他系统进行有效的过程集成,严重阻碍了工作流技术的发展。因 此,w f m c 发布了工作流管理系统参考模( w o r k f l o wr e f e r e n c em o d e l ) n 1 3 。它详 细描述了工作流管理系统的有关概念,并在此基础上给出了w f 赆的各主要组成部 分、各部分的功能及相互之间的接口: 图2 - 2 工作流参考模型 在图2 2 中所示的参考模型中给出了工作流管理系统的几个主要组成部分, 这里对几个接口做简单说明,至于工作流执行服务,它是工作流管理体系的核 心,将在本文3 3 节进行阐述。 接口1 过程定义接口“2 1 9 中山大学硕士论文 基于刑的工作流管理开发平台研究和实现 该接口提供了工作流定义信息的交换格式和标准a p i 调用。工作流管理系 统需要提供过程定义工具,它是主要提供用户对业务过程进行描述定义、建模 分析的一种工具。用户使用此工具进行直观方便的业务建模,以描述企业的具 体业务过程,并最终把这种业务描述转换成可被工作流引擎所处理的形式化描 述。 接口2 工作流客户应用程序“ 客户应用程序作用是给用户提供一种手段,以处理过程实例运行过程中需 要与外部应用和人工协同完成的任务。每一个这样的任务就被称作是一个工作 项,它包括处理上的一些要求( 如处理时间的限制) 及待处理的数据对象等。w f m s 将为每一个用户维护一个工作项列表,它表示当前需要该用户处理的所有任务。 接口3 工作流引擎直接调用的应用程序“3 工作流引擎在运行时,过程实例为执行某项( 些) 任务需要调用应用程序 来完成某项具体的任务,在这里是提供某项( 些) 服务的应用程序的调用和接 口模块。接口三的目标就是提供一些标准的服务供应用代理使用。 接口4 互操作接口“” 工作流机之间的互操作接口是工作流技术的高级应用,目前的一些新技术, 例如w e b 服务技术,这种互操作变得越来越简单,改变了传统的单工作流执行 服务模式,使得的新代工作流管理系统在性能和功能上也变得越来越强大, 可以处理更多,强度更大的任务集合。 接口5 工作流管理工具“” 工作流管理工具主要是对工作流执行服务的运行进行管理和监控,用户可 以通过接口五( 管理及监控接口) 管理和监控工作流弓 擎中运行的过程实例和当 前的状态。该接口规范详细描述了需要从过程执行过程所发生的各种事件上捕 获和记录的各种信息,如流程实例信息、节点实例信息、任务信息及远程操作 信息等。 虽然参考模型给出了工作流管理系统的参考模型和一些接口描述,但是如 果从整体上进行理解还是比较复杂,因此,目前的许多产品或者是研究都是在 功能上将整个工作流模型分成三个部分,分别是过程模型、信息模型和组织模 型“,本文也是采用这种方式,下面的几个小节中,将做比较详细的阐述。 1 0 中山大学硕士论文 基于删的工作流管理开发平台研究和实现 3 1 1 过程模型 过程模型是工作流模型的整体框架,它包含了工作流所要完成任务的描述, 以及定义了所有任务之间的关系。这种联系,它既指任务逻辑关系,也指任务 之间相互的制约以及协作关系。理想的工作流过程模型应该能够清楚地描述任 意业务情况下的工作流,适应用户在建模和分析过程中所提出的各种要求“1 。 本文中的过程模型仅仅指的是描述业务过程的框架,因此使用了如下的一些基 本元素对过程模型进行描述: 流程 对实际业务过程进行抽象得到的过程模型,往往被划分为一些逻辑上相对 独立和完整的流程。一般来说,在一个过程模型中仅有一个标识业务过程运行 和总控制的主流程,它是挨个业务的一个总体过程,是业务执行的入口和出口; 其余的流程称为子流程。在模型中,主流程调用子流程,同时子流程之间也是 支持嵌套调用。流程的划分增强了模型的表达能力,使模型具有层次化特征, 同时支持自顶向下的建模过程。 节点 流程是由一定数量的步骤单位构成,流程的这些组成单位称为活动节点。 因此,流程是节点是按照一定的逻辑关系组织起来构成的序列,节点中包含的 实际的操作被称为任务,本文采用节点的定义服从下图所示的结构: 国 j 入口 出口 i lx o r绑定x o r r 囊毫 或 n d i 基本信息 l n d , i i 图3 - 1 节点架构 图3 - 1 中所示的节点主要分成为两大部分:任务和路由逻辑。每个任务是 流程内一个独立的逻辑工作单元,一个任务表示由一个资源组合处理的操作( 由 参与的任务指定) 与或计算机应用( 由参与的应用指定) 咖;而节点的另一个郝 分就是控制路由,分成入口和出口部分,包含的信息除了记录了入口或者是出 i i 中山大学硕士论文 基于j 的工作流管理开发平台研究和实现 口相关联转移数目,还记录了这些转移之间的逻辑关系,比如是a n d 或者x o r 关系。 转移 流程中连接节点的部分称为转移。除了说明了活动节点之间的关联,转移 中包含活动节点要转到下一个节点所必须满足的条件,其中条件大部分时候由 下一个小节提到的信息模型中定义的相关数据来控制。 1 1 ,。1 。1 川j k 、v l ,j 图3 2 转移及其条件 由流程、节点、转移及其转移之间的逻辑关系构成了丰富的过程模式“”。 过程模型在抽象上描述业务过程,代表了业务过程执行的顺序和框架,在实际 运行过程当中需要结合数据信息和执行者信息,这些分另i j 是由信息模型和组织 模型来定义。将在下面的小节中阐述。 3 1 2 信息模型 正如上小节所述,过程模型是业务过程的抽象,代表了业务中活动的执行 框架和执行规则,而信息模型则定义了在工作流系统中涉及到的数据,管理着 所有对数据执行的操作,同时也控制着数据的表现方式。一般来说,信息模型 描述了工作流管理系统中存在的三种类型的数据“”: 工作流控制数据( w o r k f l o wc o n t r o ld a t a ) 这类数据是由工作流管理系统或工作流机管理的内部数据,用以确定过程 实例或活动实例的状态,并支持其他内部状态信息。其中一个最大的作用就是 记录工作流执行过程中的状态信息,使工作流引擎可以控制着整个流程的有效 执行。下图是工作流程实例的状态转换图“,它描述了一个流程模版被实例化 之后,可能所处的状态: 中山大学硕士论文 基于j v m 的工作流管理开发平台研究和实现 图3 - 3 工作流程实例的状态转换图 图3 3 中所示的这些实例的状态,建模时候是无法预知的;工作流程本身 作为一个流程模版,也是无法控制到的。只有在工作流实例运行过程中,状态 以控制数据的形式被引擎访问,并且引擎通过调度控制实例的执行,间接地改 变控制数据的值。值得注意的是,流程实例有流程级别的控制数据,单个活动 节点有着节点的工作控制数据,如下图所示“: 旁 r s u s p c n 。w n s t a n 一兰游一 ( i r e sw o r ki t e m ) 图3 - 4 活动实例的状态转换图 因此,控制数据并不是关于业务流程的数据,它是关于引擎的数据,通过 这些数据来控制调度业务流程实例的执行。 工作流相关数据( w o r k f l o wr e l e v a n td a t a ) 这种数据存在于在运行的流程内部,参与流程的执行过程,例如可以用来 判断过程中状态转移是否可以执行,也可以用于在流程活动之间或者流程之间 传递信息。相关数据具有持久性,而且它们能被工作流具体应用程序访问,是 工作流管理同具体应用通信的途径。相关数据是工作流管理系统的一个特征数 据,对相关数据的定义是信息建模的关键。 工作流应用数据( w o r k f l o wa p p l i c a t i o nd a t a ) 这类数据是同工作流执行具体应用相关的应用程序数据,并且不能被工作 中山大学硕士论文 基于j v m 的工作流管理开发平台研究和实现 流管理系统访问。工作流应用程序数据只与应用程序或者用户任务的执行相关 并可以被w f m s 通过应用程序代理间接调用。通过应用程序调用,w f m s 部分或完 全自动地完成一个活动,或者对业务参与者的工作提供支持。与工作流控制数 据和相关数据不同,应用数据对应用程序来讲是局部数据,对w f m s 的其他部件 来说是不可见的。应用数据的定义具有很大的随意性,一般来讲是支持用户的 自定义,需要保证的是对应用程序的正确性和一致性。 对工作流模型中的三大数据进行区分和界定,使得设计和研究工作流系统 更加规范化,当前的绝大多数研究都遵从这种模式。 3 1 3 组织模型 组织模型来自与管理学相关的企业管理的概念,是利用抽象的模型或者元素 构造出的一系列关系,用于表达企业组织机构的中的实体间的层次和隶属“”。一 些学者对组织模型的建模方法的进行了研究,提出了一些建设性的构建方法,其 中在文献脚3 中提到的面向工作流的组织模型元模型颇具代表性,图3 5 显示了这 个元模型的基本架构。从元模型的图中我们可以看到,组织模型内部存在着复杂 的关联,要真正建立起确切反映企业内部的组织结构模型并且转化为计算机所能 理解和表示的抽象模型是一个复杂的过程,需要充分结合管理学和计算机逻辑中 的领域知识。元模型考虑的是比较通用的情况,具有一般代表性,而在使用的时 候,是需要根据实际对元模型进行提炼和扩展。 在实际应用过程中,往往都会借助角色理论来加强组织模型的表达能力和系 统的灵活性。角色理论认为。“,角色是某一类对象结构、性质、行为、职能等方 面所共有的特征集合,它具有目标、能力、责任( o b l i g a t i o n ) 、许可、约束和协 议等对象多方面本质特征的综合反映。角色理论在抽象层次上面给出了逻辑模 型,在群体合作的环境下,c s c w 的目的就是支持角色之间的协同管理,进而实现 对组织资源的合理配置和使用,达到协同工作的目的。在后续的章节中,我们 将看到组织模型在本文系统中的使用规则。 1 4 中山大学硕士论文 基于刑的工作流管理开发平台研究和实现 图3 5 组织模型建模元模型 3 2 工作流模型定义语言 3 2 1 工作流模型定义语言概述 从w f 的参考模型“o 我们可以看出,工作流管理系统由面向用户的业务建 模层和工作流执行层组成,是符合模型驱动的体系架构。正如在3 1 小节中对工 作流参考模型接口的解释中,用户所面对的是一个图形化界面,所建立起业务流 程模型和信息模型必须转化为工作流执行服务机所能解释执行的形式化描述,这 种形式化语言一般被称为工作流模型定义语言。 随着工作流技术的发展,也出现了丰富的工作定义语言:例如早期由m i t 提出的p i f ( 1 :q o c e s si n t e r c h a n g e df r a m e w o r k ) o ”,美国国家标准技术学会 中山大学硕士论文 基于j v m 的工作流管理开发平台研究和实现 ( n i s t ) 的过程规范语言( p s l ) 1 以及前期w f m c 提出的w p d l ( 工作流过程定义语 言) ;一些产品中使用的定义语言,例如i 跏m qs e r i a l s 产品中使用的工作 流定义语言都是颇具影响力;后来随着技术的发展,一些知名大公司联手推出 了许多规范,例如w s f l ( w e bs e r v i c ef l o wl a n g u a g e ) 、x l a n g ( x m l b a s e d l a n g u a g e ) 、b p m l 4 w s 等;特别是近几年,工作流技术的发展更是迅猛,在一些 开源项目中也使用了不同的定义语言规范,例如,j p b m 中使用的j p d l 。 种类繁多的工作流定义语言的出现一方面丰富了用户的选择的范围,繁荣 了对工作流技术领域的研究;但是另外方面,工作流技术研究领域缺乏统一 的规范,造成最终系统产品的不兼容,从而导致了大量信息孤岛出现,资源的 浪费。 f m c 长期以来在规范化方面做出了大量的努力和工作,状况正在逐步改 善。 3 2 2 工作流过程模型定义语言p m d l 随着w f m c 提出的工作流参考模型日趋完善,得到了业界和研究机构的认可, w f m c 针对工作流建模语言也提出了相应的x m l 过程定义语言规范( x p d l 规范) “1 ,目的是为了便于不同架构的工作流技术的相互协作,如图3 - 6 显示。 圉图 i m p o i i t t x l o i t t i a y e r f m i q t t ,e x p o r t l a y g l m 赫赢“j“j x l ,d l , - 卜m u l a t i o ne 鸭;ml h e c u t i o ne n g i m im 一“撕n g h z t ”l 图3 - 6 基于x p d l 的模型定义交互 中山大学硕士论文 基于j v m 的工作流管理开发平台研究和实现 x p d l 提出的目的就是为不同的工作流形式提供一个公共的语义形式化描 述,即只要遵循x p d l 规范进行开发引擎就可以执行任何用x p d l 描述的工作流 模型;而且,不同形式的工作流模型只需要转化成为x p d l 描述,就可以在符合 x p d l 规格的引擎中执行。 x p d l 作为一种标准的过程定义语言,优势在于具有强大的模型描述能力和 完备的理论基础,但是同时带来的是语言元素关系庞大复杂,引擎难以实现, 实用性难于保证;而且在具体的实施应用的过程中,有许多企业的行业背景信 息是需要被考虑的,所以,一种更实际的做法是,在参考x p d l 的强大逻辑上进 行适当的改造,甚至需要对某些结构进行重构提炼出符合实际需求的元素和关 系逻辑。 本文中使用的工作流定义语言p m d l 的构建实际上是以x p d l 作为基础,它总 体的组织、结构以及接口都参考了x p d l 规范。为了使新工作流过程定义语言更 简洁,同时便于对引擎的研究工作,对原有的规范进行了部分的简化同时保留 其中的核心规范,使得p m d l 具有核心的流程定义功能,结构清晰,便于扩展。 新元素的提出,一方面是来自对新技术的分析后引入的,另一方面是因为根据 企业现有的行业背景需求而添加的,目的都是增强描述模型的能力。图3 - 7 显示 了p m d l 的整体架构思想。 图3 7p m d l 构造原理 1 7 中山大学硕士论文 基于刑的工作流管理开发平台研究和实现 从图中的所示可以看出,p m d l ;是基于x p d l 和x m ls c h e m a 规范的形式化 语义描述,同时是结合了,例如p e t r in e t 、工作流模式理论的考虑因素,对某 些元素进行了再封装甚至是再定义,原则是实用和易用的同时保留完整性约束, 例如,p m d l 中的活动节点的定义是和x p d l 最大的不同,此实体将路由和实际 活动进行了分离,请参看图3 1 中的描述。 由于p m d l 是以x p d l 为基础,所以大多数的语法规则是沿用了x p d l 的定 义,这样既保持了一致性,又方便利用x m l 技术进行转化;而且采用x p d l 为 中介规范同其它工作流定义语言进行交互。图3 8 显示了p m d l 基本元素及其之 间的逻辑关系,图中的实线表示的是元素定义的层次关系,而虚线表示的则是 元素之间的关联关系。 图3 - 8p m d l 主体系架构 工作流定义语言的引入,扩展了工作流系统的结构合理性和可扩展性,使 得模型可以被不同的工作流执行服务机执行。工作流定义语言是一个不断发展 的技术,本文的p m d l 规范的提出是作者参与研究小组的工作成果之一,目的也 是为了促进工作流技术的研究进程,在本文的附录部分,列举出了p 如l 的主要 元素定义,供相关研究人员参考。 中山大学硕士论文 基于j v m 的工作流管理开发平台研究和实现 3 3 工作流执行服务 在3 i 小节中,我们已就工作流参考模型中的其它接口进行了大概的论述, 对工作流执行服务是参考模型的核心部分,也是本文研究和实现的重点,下面 我们将对工作流执行服务进行分析。 工作流执行服务一般由一个或多个工作流引擎组成,工作流引擎将提供了 过程实例执行的运行环境和运行控制。同时提供对应用系统有决定作用的根据 角色、分工和条件的不同决定信息传递路由、内容等级等核心解决方案。例如 开发一个系统关键的部分不是系统的界面,也不是和数据库之间的信息交换, 而是如何根据业务逻辑开发出符合实际需要的程序逻辑并确保其稳定性、易维 护性( 模块化和结构化) 和弹性( 容易根据实际业务逻辑的变化做出程
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中型饭店准备工作计划
- 江苏省扬州市宝应县2025-2026学年高三上学期期初检测物理试题(无答案)
- 学习项目一+中国音乐万花筒课件+-2025-2026学年人教版(2024)初中音乐七年级上册
- 巡视巡察意识形态课件
- 巡察工作手册课件
- 岩土爆破课件教学
- 尤西林美学原理课件
- 输液室护士培训课件
- 智能制造原材料采购保密及智能制造协议
- 智能家居企业融资合同法律风险分析及风险控制协议
- 中建营盘山隧道2号斜井泄水专项施工方案
- 纺织品印花质量检测
- 《直播电商》课程标准
- 机房动力环境监控系统调试自检报告
- (完整版)水利部考试历年真题-水利基础知识试题集
- 装卸工安全培训
- 医院客服主管年终总结
- 软件系统集成方案
- 联通技能竞赛考试题及答案(5G核心网知识部分)
- 恶性贫血的动物模型构建和研究
- “余香萦绕”-2024年中考语文作文押题分析+学生习作+素材积累+金句积累
评论
0/150
提交评论