(计算机应用技术专业论文)基于spring框架实现面向中小企业的工作流引擎.pdf_第1页
(计算机应用技术专业论文)基于spring框架实现面向中小企业的工作流引擎.pdf_第2页
(计算机应用技术专业论文)基于spring框架实现面向中小企业的工作流引擎.pdf_第3页
(计算机应用技术专业论文)基于spring框架实现面向中小企业的工作流引擎.pdf_第4页
(计算机应用技术专业论文)基于spring框架实现面向中小企业的工作流引擎.pdf_第5页
已阅读5页,还剩70页未读 继续免费阅读

(计算机应用技术专业论文)基于spring框架实现面向中小企业的工作流引擎.pdf.pdf 免费下载

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

文档简介

江苏大学硕士学位论文 摘要 在现代社会中,工作流管理技术作为一种先进的计算机应用技 术,已经成为中小型企业实施管理经营和战略变化的重要手段之一。 而工作流引擎是工作流管理技术的核心。当前,工作流引擎在中小 企业业务流程中的广泛应用已经为企业带来了前所未有的效益。然 而,传统工作流引擎的设计从提供功能齐全的工作流服务角度出发, 不可避免地导致了系统架构庞大,系统过于复杂;同时传统的工作 流引擎是以集成的方式实现,从数据存储到运行环境往往都有自己 的一整套独特的体系结构,因而想分离出某个功能,会非常困难。 由此看来,传统的工作流引擎无法快速地根据中小企业具体需求定 制,灵活地集成到应用系统。 本文针对上述问题,在镇江中小企业信息系统e i s 产业化项目 中,使用当前快速发展的s p r i n g 框架,提出基于s p r i n g 框架开发满 足中小企业需要的工作流引擎。它具有应用程序高内聚,低耦合, 高弹性的优点。加快了系统的开发过程,增强了系统的可维护性和 可扩展性,可以灵活的设计业务流程。 本文首先介绍了工作流技术的研究现状及其相关技术,概述了 工作流引擎的功能,在结合中小企业对工作流引擎的特殊需求的基 础上,通过比较现在流行的三种开源的工作流引擎的优劣和研究 s p r i n g 框架的关键技术和组成模块,指出s p r i n g 框架的i o c 、a o p 和 动态语言集成技术正是解决传统工作流引擎存在的系统复杂、定制 困难的缺陷的理想方案。 本文从中小企业一般业务需求入手,抽象出工作流对象,分析 江苏大学硕士学位论文 之间的逻辑关系,提出了开发基于s p r i n g 框架面向中小企业的工作 流引擎,从而进行系统架构、模块划分、数据库和类的设计,最后 编写了代码实现。针对标准的流程定义语言( 如x p d l ) 很难适应复 杂的实际业务流程,尤其是状态转换条件的判断不够灵活的缺陷,提 出应用s p r i n g 框架的动态语言集成技术,嵌入b e a n s h e l l 作为转换条 件表达式的解释器,使用动态语言编写业务逻辑模块。还针对工作 流引擎和已有的人力资源管理系统集成中发生冲突的问题,通过采 用s p r i n g 框架的a o p 技术,对权限管理和其它模块进行分离,解决了 冲突。 在分析了e i s 系统中的典型的公文流转流程的业务需求后,我们 进行了相关的实现,作为对基于s p r i n g 框架的工作流引擎的应用测 试。系统的良好的操作性、可扩展性、灵活性以及可插入性满足了 中小企业的需要,达到了预期目标。 关键词:工作流引擎,工作流模型,s p r i n g ,a o p ,i o c ,j a v ae e , 动态语言 江苏大学硕士学位论文 a b s t r a c t i nm o d 锄s o c i e t ya sal ( i n do fa d v a n c e dc o m p u t e ra p p l i c a t i o n s t e c h n o l o g y , t h ew o r k n o wm a n a g e m e n ts y s t e mh a sb e e no n eo f i m p o r t a n tw a yt oi m p l e m e n tb u s i n e s sm a n a g e m e n ta n ds t r a t e g y a d j u s t m e n ti nm e d i u ma n ds m a ue n t e 印r i s e s a n dw o r k n o we n g i n ei s t h ek e yt e c l l i l o l o g yo fw o r k n o wm a n a g e m e n ts y s t e m n o w a d a y s ,t h e a b r o a d 印p l i c a t i o n so fw o r k n o we n g i n eh a v eb r o u g h tm u c hb e n e f i tt 0 m e d i u ma n ds m a n e n t e 叩r i s e sd u i i i n g t h e i rb u s i n e s s p r o c e d u r e s h o w e v e r i no r d e rt os u p p l yg e n e r a l 如n c t i o n so fw o r k n o ws e i c e s ,t h e t r a d i t i o n a ld e s i g no fw o r k f l o we n g i n ei n e v i t a b l er e s u l t e di nt h a tt h ed a t a s t m c m r ew a st o oh u g ea n dt h es y s t e mw a st o oc o m p l e xt oh a n d l e ; m e a n w h i l e ,t r a d i t i o n a lw o r k n o we n g i n ew a si n t e g r a t e d ,w h i c ht h ed a t a m e m o 巧a n do p e m t i o nc o n d i t i o no w n e dt h e i ru n i q u es y s t e ms t t l l c t u r e , s ot h a ti tw a sv e wd i 币c u l tt os 印a r a t eo n e 如n c t i o nf 而mt h ew h o l e b y t h i st o k e n ,t r a d i t i o n a lw o r k n o we n g i n ec o u l dn o tr a p i d l yc u s t o m i z e d b a s eo ne n t e 甲r i s e sd e t a i l e dr e q u i r e m e n t sa n dn e x i b l ei n t e g r a t e di n a p p l i c a t i o ns y s t e m t o w a r dt h ea b o v e m e n t i o n e dq u e s t i o n s ,o nt h ep r o j e c to fe i s i n d u s t r i a l i z a t i o no f z h e n ji a n g m e d i u ma 1 1 ds m a h e n t e 印r i s e s i n f o n n a t i o n s y s t e m , t h i sa r t i c l e a d o p t s泖i d l yd e v e l o p e ds p r i n g 舶m e w o r ka n dp u t sf o r w a r dt oe x p l o i t s p r i n gf h m e w o r kt o m e e t m e d i u ma n ds m a l l e n t e 印r i s e s w o r k n o we n g i n e t h i sk i n do f 舶m e w o r kh a sq u i c k e n e ds y s t e md e v e l o p m e n ta n ds t r e n 萨h e n e ds y s t e m m a i n t e n a n c ea n de x p a n s i b 订i t y ;i ta l s oc a nn e x i b l ed e s i g nt h eb u s i n e s s p r o c e d u r e s f i r s t l y ,t h ea n i c l ei n t r o d u c e st h es t l j d ya c t u a l i t yo fw o r k n o wa n d i t sc o n c e m e dt e c h n o l o g ms u m m a r i z e st h e 如n c t i o n so fw o r k n o w e n g i n e b a s e do nm es p e c i a lr e q u i r e m e n t so fw o r k f l o we n g i n et o w a r dm e d i u m i 江苎查兰塑主兰堡笙墨 一一 - - _ _ - l _ _ _ 一 a n ds m a l le n t e 印r i s e s ,t h ea n i c l ec o m p a r e sw i t ht h em 舒t sa n dd e f e c t s o fc u 九- e n tp o p u l a rt h r e l el ( i n d so fw o r k f l o we n g i n ea n ds t u d i e ss p r i n g 行a m e w o r k ,sk e yt e c h n o l o g ya n db u i l d u pn l o d u l e ,p o i n t so u tt h ei o c , a o pa j l dd y l l a m i cl a n g u a g ei n t e g r a t i o no fs 皿n g 仃a m e w o r k t ob et h e i d e a lw a yo fs o l v i n gt h es y s t e mc o m p l e x i t ya i l dc u s t o m i z e dd i 币c u l t i e s o ft r a d i t i o n a lw o r k f l o we n g i n e s e c o n d l y t h ea r t i c l ep u t sf o r w a r dt od e v e l o pm e d i u ma n ds m a n e n t e r p r i s e s ,w o r k f l o we n g i n eb a s e do ns p r i n g 行a m e w o r k p r o c e e d w i t h c o m m o nb u s i n e s so fm e d i u ma n ds m a l le n t e r p r i s e s ,a b s t r a 戍1 n g t h e w o r k f l o wt a 玛e t ,a n a l y z i n gm e i rl o g i cr e l a t i o n s ,p o i n t l n go u ts y s t e m s t m c t u r e ,p a r t i t i o n i n gs y s t e mn l o d u l e sa n df i n a l l yc o m p i l i n gc o m p u t e r d a t a s i n c et h es t a n d a r dp r o c e d u r ed e f i n el a n g u a g e ( x p d l ) i sv e r y d i 伍c u l tt os u i tc o m p l e xb u s i n e s sp r o c e d u r e ,e s p e c i a l l yt h ed e f to f n o t n e x i b l ee s t i m a t e dt r a n s i t i o nc o n d i t i o n s ,t h ea r t i c l ep o i n t so u tt oa p p l y s 埘n g 纳m e w o r k sd y n a m i c1 a n g u a g ei n t e g r a t l o nt e c h i l o l o 鼢 t o e x p l o i tb e a n s h e ua sat 啪s f o 咖t e me x p r e s s i o na n dt o u s ed y n a m i c l a n g u a g et oc o m p i l eb u s i n e s s1 0 9 i cm o d u l e s f u r t h e m o r e ,r e g a r d m g t h e c o n f l i c t so fw o r k n o we n g i n ea 1 1 de x i s t i n gp e r s o n n e lr e s o u r c e ss y s t e m i n t e g r a t i o n ,b ym e a n s o fa d o p t i n ga o pt e c h n o l o g yo fs p r i n gf r a m e w o r k t os e p a r a t ep u r v i e wm a n a g e m e n ta n do t h e rm o d u l e st o s o l v et h l s c o n n i c t a r e ra n a l y z i n gt h et y p i c a lb u s i n e s sr e q u i r e m e n t so fe i ss y s t e m , w ec a r 眄t h r o u g hc o n c e m e d 印p l i c a t i o nt e s tf o rw o r k n o we n g i n eb a s e d o ns p r i n g1 f i a m e w o r k b ym e a n so f i t sg o o dw o r l ( a b i l i 吼e x p a n s i b i l i 咄 a n dn e x i b i l i t y t h es y s t e mm e e t st h er e q u i r e m e n t so f m e d i u ma n ds m a l l e n t e r p r i s e s ,r e a c h e st h ee x p e c t e dt a 唱e t k e y w o r d s :w o r k f l o we n g i n e ,w o r k n o w m o d e l ,s p r i n 吕a o p ,i o c ,j a v a e e ,d y n a m i c1 a n g u a g e 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定, 同意学校保留并向国家有关部门或机构送交论文的复印件和电子版, 允许论文被查阅和借阅。本人授权江苏大学可以将本学位论文的全部 内容或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫 描等复制手段保存和汇编本学位论文。 保密口,在年解密后适用本授权书。 本学位论文属于 不保密町。 学位论文作者签名: 孑笺1 1 9 签字同期:2 一富年占月,口日 翩签力以砍 , 签字r 期:沪9 扩年6 月【or 独创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独立进 行研究工作所取得的成果。除文中已经注明引用的内容以外,本论文 不包含任何其他个人或集体己经发表或撰写过的作品成果。对本文的 研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人 完全意识到本声明的法律结果由本人承担。 学位论文作者签名: 日期:跏a 年z 月 ,口 日 江苏大学硕士学位论文 1 1 课题背景 第一章绪论 在我国经济构成中,中小型企业占有十分重要的地位。目前,全国工商注 册中小型企业数占全部注册企业数的9 9 ,中小型企业工业总产值和实现利税 分别占全国的6 0 和4 0 左右。同时制造业是国民经济和社会发展的物质基础, 是一个国家综合国力的重要体现。中小型制造企业大多已经有了稳定的产品、 项目,进入成长期后,原有的管理模式将不再适应企业内外环境的变化,企业 迫切需要借助信息化手段在企业内部形成决策规范、执行与监督制衡的治理结 构,有效地推动企业快速、高效发展。正是在这样的背景下,我们进行了“镇 江市中小企业信息系统e i s 产业化”开发项目。 中小企业从创业到业务发展稳定,逐渐形成自身的业务管理流程。业务管 理流程是指在组织内部“流转 的一系列相关的活动,它不仅仅限于一个单一 的功能或者单一的部门,而且贯穿始终的反映企业经营情况。这就是我们通常 所说的工作流。应用工作流管理技术,可以为成长型中小企业的经营管理提供 以下许多支持: 1 提供方便灵活的流程定义工具; 2 按照既定的业务规则管理和监督业务的运行; 3 及时发现业务瓶颈,并进行有效疏导或改善业务流程; 4 提高工作效率,有效缩短业务处理周期; 5 避免传统处理方式中的随意性造成业务流程混乱; 6 减少或避免人为因素造成的原则性错误及由此带来的损失; 7 增强业务各环节的协作能力,使业务运做更加顺畅; 8 有利于业务的评估和业绩考核; 9 新员工可以迅速适应本职工作; l o 高效率的业务处理有助于提高客户服务水平和企业竞争能力。 1 2 研究现状 工作流的概念起源于生产组织和办公自动化领域。它是针对同常工作中具 有固定程序的活动提出的一个概念。目的是按照一定的规则和过程来执行这些 江苏大学硕士学位论文 任务并对它们进行监控来提高办事效率、降低生产成本、提高企业生产经营管 理水平和企业竞争力【。在计算机网络技术和分布式数据库技术迅速发展,多 机协同工作技术同臻成熟的基础上,于2 0 世纪8 0 年代中期发展起来的工作流 技术为企业更好地实现这些经营目标提供了先进的手段。进入2 0 世纪9 0 年代, 随着计算机与网络技术的迅速发展,特别是在i n t e r n e t 应用同益普及的情况 下,现代企业信息系统的分布性、异构性和自治性的特征越来越显著,集中式 信息处理的时代即将成为过去,取而代之的将是大规模的异构分布式信息处理 与应用执行环境。在这种大规模的分布式环境下高速运转相互关联的任务,并 且对执行的任务进行密切监控已成为一种发展趋势。 在国外,工作流技术发展相对较早,因此也比较成熟,目前提供工作流管 理软件的供应商有几百家之巨。除了专门的工作流管理系统,大多数e r p 系统, 比如s a p 都把工作流引擎引入到自己的系统中:而操作系统供应商m i c r o s o f t , 则是把工作流技术集成到了自己的操作系统和丌发工具中。 1 9 9 3 年,w f m c ( 国际工作流管理联盟) 的成立标志了工作流技术进入了相对 成熟的发展阶段。该联盟是一个非赢利性组织,由国际知名的公司、研究机构、 高等院校等约3 0 0 多家成员构成。该组织为了解决不同工作流产品之问的互操 作性,在工作流管理系统的相关术语、体系结构、接口等方面制定了一系列的 标准,并且在1 9 9 4 年发布了工作流管理系统参考模型【2 】。 除了w f m c 标准组织外,关注工作流技术的主要标准组织还有:o m g ( 对象管 理组织) ,o m g 联合w f m c 的规范,定义了工作流技术向c o r b a 技术转换的标准 规范:b p m i ( 商业过程管理计划) ,它推出了b p m l ( 商业过程建模语言) ,旨在为 跨防火墙内外的异构系统建立商业过程模型提供一个标准途径,并为表达由事 务处理、数据管理、并行操作、异常处理和操作语义等一系列企业活动组成的 业务过程定义形式模型p j 。 由于工作流技术是一个相对前沿技术,因而关于它的标准还在制定之中, 就目前已有的标准而言,可以分成两大类:其一,基于纯) ( m l 技术;其二,基 于w e b 服务技术j 。 对于第一种技术,主要的分支有三个:一、w f m c 提出的x p d l ( x m lp r o c e s s d e f i n i t i o nl a n g u a g e ) 以及工作流管理系统的参考模型:二、b p m i ( b u s i n e s s p r o c e s sm a n a g e m e n ti n i t i a t i v e ) 提出的b p m l ( b u s i n e s sp r o c e s sm o d e l l a n g u a g e ) ,它和w f m c 联合制定业务流程和工作流管理系统标准,即采用b p m l 描述工作流管理系统过程,同时采用x p d l 所定义的工作流管理系统模型:三、 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 wm a n a g e m e n tf a c i li t y ,它联合了 w f m c 的规范,定义了将工作流管理系统向c o r 队的转化。 2 江苏大学硕士学位论文 对于第二种技术,主要分支也有三个:一、b e a 、i n t a l i o 、s a p 、s u n 四家 公司联合提出的基于) ( m l 的w s c i 规范,推动w e b 服务进入了一个全新的阶段。 这个规范主要描述了一个参与和其它服务进行协作交互的w e b 服务所交换的消 息流。二、联合国( u n c e f a c t ,贸易促进和电子商务中心) 和o a s i s ( 结构化信 息标准发展组织) 共同倡导、全球参与开发和使用的规范e b ) ( m l 。e b x m l 是一组 支持模块化电子商务框架的规范。e b ) ( m l 支持一个全球化的电子市场,它使得 任意规模的企业通过交换基于) ( m l 的信息,不受地域限制地接洽和处理生意。 三、m i c r o s o f t 、b e a 、i b m 和s a p s i e b e l 联合提交发布的b p e l 规范。此规范 描述如何处理输入的消息,简单的说,可以将它看作是x m l 形式的编程语言, 提供将w s d ls e r v i c e s 组合成控制流的能力【6 j 。 工作流管理系统的核心是工作流引擎,它为工作流管理系统在定义时提供 支持,并在运行时提供解释和执行服务的一组数据模型和软件。一目前,在工作 流引擎的实际应用中开源产品占据了重要地位,如o p e n s y m p h o n y 组织开发的 o s w o r k f l o w 、e n h y d r a 组织开发的s h a r k 和j b o s s 项目中的j b p m ( j a v ab u s i n e s s p r o c e s sm a n a g e r ,j a v a 业务流程管理) 掣引。本文比较了这三种工作流引擎的 优劣,并结合中小企业的需求提出了采用s p r i n g 框架实现一种面向接口设计、 充分集成动态语言、全面采用a o p 技术的嵌入式工作流引擎【1 7 1 。 s p r i n g 是为了简化j a v ae e 开发而诞生的轻量级j a v ae e 开发框架,它是 实现控制反转( i o c :i n v e r s i o no fc o n t r 0 1 ) 容器、非侵入性的框架,并提 供面向方面编程( a o p :a s p e c t o r i e n t e dp r o g r a 舢i n g ) 概念的实现方式,提供 对持久层、事务的支持,提供m v cw e b 框架的实现,并对一些常用的企业服务 a p i 提供一致的模型封装,是一个全方位的应用程序框架。除此之外,对于现存 的各种框架( 如s t r u t s 、j s f 、h i b e r n a t e 等) ,s p r i n g 也提供了与他们相整合 的方案。最近s p r i n g 又加强了对动态语言如b e a n s h e l l 、j r u b y 、g r o o v e 的集 成。s p r i n g 框架已经逐渐成为实现工作流引擎的一种理想技术【7 1 。 1 3 论文研究内容 本文的目标是设计和实现一个适合于中小企业的工作流引擎,该引擎作为 镇江中小企业信息系统e i s 产业化开发项目的一部分,为整个应用系统提供工 作流执行服务。 本文的思路是首先对工作流技术标准化组织提出的标准与规范进行研究, 分析中小企业e i s 项目需求,在此基础上给出一个工作流引擎的设计方案并进 行实现,最后针对e i s 系统中典型的公文流转流程进行应用测试和结果分析。 3 江苏大学硕士学位论文 工作内容概括如下: ( 1 ) 研究w f m c 组织提出的工作流参考模型,包括体系结构、过程建模理 论、工作流执行服务、客户端应用和管理监控工具等模块。探讨工作流引擎的 关键技术,重点是过程建模和流程推进机制。 ( 2 ) 分析中小企业e i s 项目的功能需求,针对项目对流程控制的灵活需要, 以及低成本和后续升级的要求,提出以s p 血g 框架实现一个面向接口设计、充 分集成动态语言、全面采用a o p 技术的嵌入式工作流引擎。 ( 3 ) 给出工作流引擎的实现,分别从流程实例化、流程实例管理、流程导 航和维护相关数据等模块详细描述实现方案。 ( 4 ) 将该工作流引擎整合到中小企业e i s 项目中并进行运行测试,结果充 分表明本文设计实现方案的有效性:即该工作流引擎不仅支持灵活的流程定 制,而且配置简便、可扩展性强,达到设计目标。 1 4 论文组织结构 论文共分五章,主要内容概要如下: 第一章绪论:介绍工作流技术的研究背景和国内外的研究现状,说明本 文的研究内容和论文的组织结构。 第二章相关理论和技术基础:先介绍工作流技术起源、发展和工作流管 理系统参考模型,然后介绍s p r i n g 框架的特点和组成模块,介绍流行的三种工 作流引擎。 第三章一种基于s p r i n g 框架面向中小企业的工作流引擎:比较现在流行 的三种工作流引擎的优劣,结合中小企业的特点提出利用s p r i n g 框架实现一种 面向接口设计、充分集成动态语言、全面采用a o p 技术的工作流引擎。 第四章基于s p r i n g 框架的面向中小企业的工作流引擎的设计:深入分析 工作流引擎的设计需求,提出系统的整体架构,讨论工作流的建模技术。 第五章工作流引擎的实现:基于s p r i n g 框架对提出的工作流引擎设计方 案进行了实现。 第六章工作流引擎在公文流转系统中的应用:在中小企业e i s 项目的经典 应用一公文流转中应用工作流引擎,验证本文所实现的基于s p r i n g 框架的工作 流引擎的实用性。 第七章总结与展望:对本文的研究工作进行归纳和总结,探讨进一步的 研究方向。 4 江苏大学硕士学位论文 第二章相关理论和技术基础 2 1 工作流模型 w f m c 的成立促进了工作流技术的标准化,它提出的一系列标准规范了工作 流技术的应用。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 f m s ) 的功能框架和和交互接口,使应用程序和工作流管理系统之间 以及不同的工作流管理系统之白j 都可以通过规范的接口进行数据交换,也使得 工作流管理系统能快速地集成到企业应用系统中【l j 。 工作流的目的是将工作分解,按照一定的规则和过程来自动执行并进行监 控,工作流的研究促成了并行工程和敏捷制造的提出。工作流管理联盟给出的 工作流定义是,工作流是一类能够完全或者部分自动执行的经营过程,它根据 一系列过程规则,使文档、信息或任务能够在不同的执行者之问传递与执行。 也可以定义为,工作流是一种反映业务流程的计算机化的模型,为实现经营过 程集成与经营过程自动化而建立的可由工作流管理系统执行的业务模型,其基 本元素是任务和任务之i 、日j 的关系博j 。 与传统的面向功能的管理技术不同,工作流技术描述了可由计算机系统支 持运行的业务过程,反映了业务过程的自动化,根据业务规则将系统中的各种 资源相互关联,协调完成整个业务过程。 2 1 1 工作流参考模型 w f m c 组织于1 9 9 5 年提出了工作流模型的设计标准,在其官方文档中详细介 绍了工作流管理系统的功能模块以及各个模块之间的接口。 工作流管理系统由流程建模工具、工作流执行服务、应用程序接口、客户 端应用程序、被调用的应用程序以及工作流管理工具等几大组件构成。工作流 执行服务通过工作流应用编程接口( w o r k f l o wa p p l i c a t i o np r o g r 锄i n g i n t e r f a c e ) 访问工作流管理系统的服务,还可以与其他系统组件进行交互 工作流参考模型组件和接口关系如图2 1 所示。从图中可以看出,工作流 管理统共包含了五类接口闭: ( 1 ) 接口1 :过程定义输入输出接口,这是工作流服务与工作流建模之白j 的 接口,该接口提供的功能包括通信建立、工作流模型操作和工作流模型对象操 作。 5 江苏大学硕士学位论文 图2 1 :i :作流参考模璎 ( 2 ) 接口2 :客户端函数接口,这是工作流服务与客户应用之间的接口,这 是最主要的接口规范,它约定所有客户方应用与工作流服务之间的功能操作方 式。包括通信建立,工作流定义操作( 对过程模型定义操作) ,过程实例管理 功能,过程状态管理功能,任务项列表任务项处理功能,数据处理过程,过 程监控功能,其它的管理功能,应用程序激活。 ( 3 ) 接口3 :激活应用程序接口,这是工作流引擎和直接调用的应用程序之 间的接口,包括通信建立,活动管理功能,数据处理功能。 ( 4 ) 接口4 :工作流执行服务之间的互操作接口,这是工作流管理系统之间 的互操作接口,包括连接的建立,对工作流模型和其中对象的操作,对过程实 例的控制和状态描述,对活动的管理,对资料进行处理。 ( 5 ) 接口5 :系统管理与监控接口,这是工作流服务和工作流管理工具之间 的接口,包括资源控制,角色管理,用户管理,过程实例的管理,状态管理, 审核管理。 五个接口以及对应的a p i 函数囊括了工作流管理系统的全部功能。一个完 整的工作流管理系统就是以工作流引擎为中心,向外部部件( 应用程序或其它 工作流引擎) 提供这五个接口,并提供其实现的所有功能。 6 江苏大学硕士学位论文 2 1 2 工作流管理系统 工作流管理系统的主要目标是通过合理地调用和分配有关的信息及人力 资源来协调业务过程中的各个活动,以促使业务目标的高效实现。 2 1 2 1 体系结构 w f m c 组织给出的工作流管理系统的定义是:工作流管理系统是一个软件系 统,它完成工作流的定义和管理并按照在计算机中预先定义好的工作流逻辑推 进流程实例的执行。 w f m c 还提出了工作流管理系统的功能组成部件和接口的参考定义,依据该 参考定义实现的工作流管理系统能够实现不同工作流产品之间的互操作性。 :i : 行 图2 2w f m s 结构i 笙i 7 i :作流应 川新据麾 江苏大学硕士学位论文 从图2 2 中可以看出,它主要由三部分组成【卅: ( 1 ) 软件构件:完成工作流管理系统不同组成部分功能的实现。 ( 2 ) 系统控制数据:工作流管理系统中的一个或多个软件构件使用的数 据。 ( 3 ) 应用与应用数据:对于工作流管理系统来说,它们不是系统的组成部 分,而是属于外部系统和数据,工作流管理系统维护和调用这些应用和数据来 实现工作流管理。 2 1 2 2 功能模块 结合上一小节给出的工作流参考模型的标准,可以看出工作流管理系统应 该具备的基本功能模块包括i l 叫: 1 过程定义工具 过程定义工具以计算机能处理的方式进行流程建模,建立的模型包含了工 作流引擎执行过程中需要的所有信息。如流程的丌始和完成条件、构成流程的 活动、活动间导航规则、用户需要完成的任务、应用的调用、活动的执行者和 所有工作流相关数据的定义。 2 工作流引擎 工作流引擎是流程定义的解释器,它是工作流执行服务的核心。 3 工作流执行服务 由一个或多个工作流引擎组成,提供过程实例的运行环境,是工作流管理 系统的核心。工作流执行服务要根据流程执行需要的初始条件和执行参数生成 流程实例,运行流程实例并管理其运行过程。在流程实例的执行过程中,工作 流执行服务根据流程定义和工作流相关数据,为流程实例的运行进行导航,如 根据活动之间的关联和执行条件,决定并行或串行执行后续行为等。 工作流执行服务通过提供客户应用接口和直接调用应用程序接口两种方 式来完成与外部应用程序和用户的交互。对于客户应用方式,工作流引擎通过 任务项列表管理器对应用的执行进行管理,任务项列表管理器提供任务项列表 供用户直接选择执行相应的任务,并对处理进行记录。对于直接由工作流引擎 启动的行为,工作流引擎通过应用程序接口直接调用相应的应用程序来完成。 此外,工作流执行服务还要维护执行过程中不同流程和行为实例的内部状态信 息,以及用于协调和恢复的各种检查数据和恢复重启信息,并在应用或用户 问传递必要的数据。 4 任务列表 8 江苏大学硕士学位论文 任务列表是提供给用户的相关的一系列工作项,每个工作项的内容包括任 务的开始结束时间、所属流程信息等。 5 系统管理和监控工具 对工作流在整个系统内的流动状况进行监控,并提供一系列管理功能,实 现安全性、过程控制、访问授权等操作。 6 工作流数据 工作流数据包括工作流相关数据、工作流控制数据和工作流应用数据。 ( 1 ) 工作流相关数据 w 删c 中工作流相关数据的定义是:它是工作流管理系统在进行工作流实例 的状态转换时所需要访问的数据,这些数据可以被工作流机、工作流参与人员 和应用程序访问和修改。 标准化的流程定义语言涵盖了基础类型数据和复杂类型数据,活动、应用 程序、t r a n s i t i o n ( 迁移,指从一个活动到后续活动的跳转) 中的条件会引用这 些数据。工作流模型定义了一组数据类型,比如字符型、整型、浮点型、同期 型等,这些类型将会用于定义关联数据、环境数据以及参与者数据。 ( 2 ) 工作流控制数据 工作流控制数据是由工作流执行服务管理的用来标识每个流程或行为实 例状态的内部数据,如工作流实例的状态信息、每个行为的状态信息等。这些 数据由工作流执行服务进行控制,用户和应用程序可以通过工作流引擎间接修 改这些数据。 ( 3 ) 工作流应用数据 工作流应用数据是指由应用程序操作而不能被工作流管理系统访问的数 据。与工作流相关数据和工作流控制数据不同,它是针对应用程序的,是企业 完成具体业务功能所需要的数据,这些数据对于工作流引擎是透明的。如公文 流转过程中的文件附件、业务审批标准等数据j 。 应用程序可以直接被工作流引擎调用或通过应用程序代理被问接调用。通 过应用程序调用,工作流管理系统部分或完全自动地完成一个行为,或对业务 参与者的工作提供支持。 2 1 3 工作流建模 工作流模型包含了描述一个工作流执行过程需要的所有信息。从工作流管 理系统体系结构图中可以看出,过程定义可能引用组织角色模型中关于组织 结构和角色安排的数据,这样在流程导航过程中,不仅可以设置某个特定的用 9 江苏大学硕士学位论文 户作为活动的参与者,而且可以将活动与某个角色进行关联。过程定义模型包 含了工作流引擎执行过程中需要的所有信息,如流程的丌始和完成条件、构成 流程的行为、行为问导航规则、用户需要完成的任务、应用的调用、活动的执 行者和所有工作流相关数据的定义。流程模型以流程的定义文件的形式保存 【1 2 l o 2 1 - 3 1 工作流元模型 元模型一般是指描述模型的模型,w f m c 定义了一个工作流元模型,它是用 来描述工作流模型内各元素之间联系的模型,包括工作流模型内部包含的各个 对象、对象之间的关系及对象的属性,这有利于在多个工作流产品之间进行信 息交换。 w f m c 给出了工作流元模型的参考定义嘲: 与b 是多对多关摹 匹卜q 卫 与8 是一对多关系 图2 3 过程定义元模喇 从图2 3 中可以看出,一个工作流定义由若干个活动和相关数据组成,这 些数据可能由不同的活动或者活动之间的转换条件使用,也可能由执行活动的 应用程序使用。而一个活动既可以由相应的角色来执行,也可以直接由应用程 1 0 江苏大学硕士学位论文 序执行,一个活动在执行完成以后根据设置的转移条件来执行后续活动。 工作流定义与活动、工作流相关数据之问是一对多的关系,即一个工作流 定义由多个活动与多个工作流相关数据组成:活动、角色、工作流相关数据、 需要激活的应用程序、转换条件之间都是多对多的对应关系,如一个活动可以 引用多个角色、使用多个工作流相关数据,同样地,一个角色可以被多个活动 引用,一个工作流相关数据也可以被多个活动使用【l 引。 2 1 3 2 】【p d l 建模语言 x p d l ( ) ( m lp r o c e s sd e f i n i t i o nl a n g u a g e ) 是由w f m c 组织制订的x m l 形式的 流程定义语法格式,依照w f m c 工作流参考模型标准实现的工作流引擎可以实现 数据共享。x p d l 定义中的基本元素包括【悼b 1 : 1 工作流定义:工作流定义为工作流中其他实体提供了上下文描述,包含 自身信息、流程制订者的信息、流程运行时需要的数据( 如流程初始化参数、 流程时f b j 限制、检查点、需要通知的人等) 。 2 活动:流程中的每一个原子步骤称为活动,在有向图中用一个节点表 示。每个活动对应一项业务处理,这个工作可能是由工作人员完成,也可能由 系统自动完成。后者是指为活动绑定一段程序代码,当活动被激活时,相应的 程序代码就开始执行。还可以指定某项活动由系统自动开始或者结束。 每个业务过程由若干个活动组成,不同的活动通过其活动i d 来唯一标识, 一个活动的主要元素包括开始和结束条件、状念、绑定的程序以及参数的设置。 同一个活动在工作流运行时可能具有多个实例,通常将活动的实例称为任务, 将属于同一业务过程的任务称为属于同一批次的任务。需要注意的是有的业务 活动只具有逻辑意义,并不针对具体的业务环节。 3 转换( t r a n s i t i o n ) :活动与活动之间是通过t r a n s i t i o n 连接的。一个 t r a n s i t j o n 由三部分组成,起始活动、终止活动以及转换条件( c o n d i t j o n ) , t r a n s i t i o n 能连接串行的或者并行的活动。其中并行活动的类型有s p l i t 和 j o i n 两种,s p i l t 是指由一个活动分流出去的类型,j o i n 是汇聚到某个活动的 类型。 在有向图中用节点问的连接弧表示两个活动定义之间的连接顺序,当连接 弧的起始点执行完毕,工作流引擎根据流程定义进行导航,使连接弧的终点所 对应的活动开始执行。 4 工作流参与者:工作流参与者定义了流程的各个环节的执行者,可以预 先定义为特定的用户,需要注意的是参与者可能不止一个人,当然也可能是应 江苏大学硕士学位论文 用程序。 5 资源库:资源库使得参与者可以是工作人员、设备或者是应用程序,组 织模型是典型的资源库。 6 工作流应用程序定义:指连接工作流引擎的应用程序或者接口,其中包 含了要传递的数据信息。 7 工作流关联数据:流程执行过程中流程实例产生或者用到的数据,包括 用于运行过程中的活动的数据、用于显示的数据、用于决定活动与活动之间迁 移条件中的数据和用户获取活动参与者的数据等。 8 数据类型和表达式:工作流模型定义了一组数据类型,这些类型可以用 于定义关联数据、环境数据以及参与者数据。 9 系统与环境数据:通过工作流管理系统维护,它们可以被活动访问,也 可以用于活动之间迁移的条件表达式的计算。 1 0 流程与包:流程由各种各样的实体组成,通常情况下,参与者和工作 流关联数据经常会被多个流程用到。包是一个容器,它包含了一些必需的公共 属性,如创建者、版本号和状态等,包中的每个流程定义都可以继承这些公共 属性【i o 】。 2 2 工作流引擎 2 2 1 工作流引擎相关概念 工作流引擎是工作流管理系统的核心。实际上它是企业经营过程的任务调 度器,在某种程度上还是企业资源分配器。在采用工作流管理系统支持经营过 程运行的企业中,工作流引擎可以看成是企业的业务操作系统。企业业务过程 在它的管理、监控和调度下运行,因此,工作流引擎的性能和可靠性就决定了 企业经营过程的运行效率和安全性。工作流引擎主要完成以下功能【1 6 j : 1 实例化及执行过程模型:解释企业经营过程的过程定义,根据过程执 行需要的初始条件和执行参数生成过程实例,运行过程实例并管理其运行过 程。这里要指出的是,一个过程模型实际上是企业经营过程的一个模板,它可 以被执行多次,也可以有多个有关这个过程模型的实例在同时运行。 2 为过程和活动的执行导航:根据过程定义和工作流相关数据,为过程 实例的运行进行导航,如根据过程的进入和退出条件启动和终止一个过程实 例;根据活动之间的关联和活动的执行条件,决定并行或串行执行后续活动; 给用户提供需要操作的工作流任务项信息;或者根据所需激活的应用程序信息 1 2 江苏大学硕士学位论文 启动相应的应用程序等等。 3 。与外部资源交互完成各项活动:工作流引擎通过两种途径完成与外部 资源和用户的交互客户应用接口

温馨提示

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

评论

0/150

提交评论