




已阅读5页,还剩86页未读, 继续免费阅读
(计算机软件与理论专业论文)基于j2ee的工作流管理系统的设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
四川大学硕士学位论文 y 6 547 44 基于j p e e 的工作流管理系统的设计与实现 计算机软件与理论专业 研究生文震指导教师洪玫 随着企业信息化建设逐步深入,在企业内部、企业之间以及行业之间建立 起越来越多的业务应用系统,如何充分利用企、j k 现有的i t 资源,整合企业中计 算机孤岛式的应用,向集成化、协作式的方向发展,降低企业管理成本,使资 源效益的最大化等正在逐渐成为企业关注的重要问题。而现有的大部分应用软 件无法适应企业管理千变万化的个性和持续变革的业务需求。因此,需要一些 专业的、面向业务过程管理的平台软件,即以工作流为核心的信息系统开发、 运行平台,企业或者二次开发商可在该平台的基础上,快速构建自己的信息系 统。 工作流管理联盟( w f m c ) 早在1 9 9 5 年就提出了工作流参考模型和一系列的 接口规范,在近几年的发展中,工作流的理论日趋成熟。随着面向对象技术和 分布式计算的发展,特别是j a v a 技术以及j 2 e e 框架的产生,为分布式的工作流 管理系统的实现提供了有效的途径。本文以工作流参考模型理论为基础,采用 j 2 e e 框架技术,设计和实现了一个通用的工作流管理系统,并在实际中得到应 用。 本文首先阐述了工作流管理系统的基本理论,包括工作流的概念,工作流 管理系统的工作原理和实现方法,工作流模型的建立等。其次论述t j 2 e e 框架 应用到工作流管理系统的技术优势,并详细论述t j 2 e e 框架中的e j 8 技术在工 作流管理系统中的应用。 本文给出了一个完整的工作流管理系统的具体实现方案,包括系统的体系 四川大学硕士学位论文 结构设计、各模块的功能设计、数据设计及界面设计等。对组织管理器、流程 设计器和工作流引擎进行了详细设计。参照w f m c 的工作流管理系统的参考模型 的五类接口,设计并实现工作流引擎提供的服务接口( 通过e j b 封装的远程接 口实现) ;完成工作流引擎涉及的数据表的设计,将流程、活动、迁移等的定 义表和实例表分开来,体现“一个定义,多个实例”的面向对象设计思想;设 计了工作流引擎内的事件处理机制,合理的设计“事件”及“动作”的映射数 据表,利用“事件中心”来处理事件产生后相应动作的触发:设计并实现流程 在工作流引擎中运行机制,包括流程实例的创建、激活、挂起、终止等,控制 活动实例间的转换等。 本文设计和实现的工作流管理系统具有便捷的可视化流程设计、广泛的接 入性、高可扩展性、高可维护性等特点和优势。当企业在信息化建设过程中出 现一个新的业务流程需要实施工作流技术的时候,只需要使用流程设计器就可 快速、便捷地进行流程设计,无需编写如何代码,只需将设计好的流程提交给 工作流引擎即可。系统一般用户客户端和管理客户端访问均使用浏览器方式, 操作简单易用。在运行过程中,使用管理客户端可以监控流程运行情况,便于 企业管理者更好地进行管理工作,能满足企业信息化建设过程中多种多样的需 求。 关键词:工作流工作流管理系统工作流参考模型工作流元模型模型语 义j 2 e ee j b r j v l i i i o p 四j i l 大学硕士学位论文 t h e d e s i g n a n d i m p l e m e n t a t i o n o fw o r k f l o w m a n a g e m e n ts y s t e m b a s e do nj 2 e e m a j o rc o m p u t e r s o f t w a r ea n d t h e o r y g r a d u a t ew e n z h e na d v i s o r h o n g m e i a se n t e r p r i s e si n f o r m a t i o nc o n s t r u c t i o nd e e p e n sp r o g r e s s i v e l y , e n t e r p r i s e s s e t u pm o r ea n dm o r eb u s i n e s sa p p l i c a t i o ns y s t e m si n s i d ea n do u t s i d e h o wt o i n t e g r a t ei tr e s o u r c e so nh a n di ne n t e r p r i s e m a k ee n t e r p r i s ec o m p u t e rd e v e l o p f r o ma p p l i c a t i o no f t h ed e t a c h e di s l a n dt y p et ot h ed k e c t i o n c o o p e r a t i n gc o l l e c t i v e l y , p r o d u c et h em a x i m i z a t i o no f t h er e s o u r c eb e n e f i t ,a n dr e d u c ee n t e r p r i s e sc o s t ,i s b e c o m i n gt h ei m p o r t a n tp r o b l e mt h a te n t e r p r i s e sp a yc l o s ea t t e n t i o nt og m d u a t l y e x i s t i n gm o s ta p p l i c a t i o n sa r eu n a b l et oa d a p tt om a n a g e m e n t st h ec h a n g e a b l e i n d i v i d u a lc h a r a c t e ra n dm e e tt h ed e m a n d so f t h el a s t i n gc h a n g e a sa c o n s e q u e n c e n e e ds o m es p e c i a l i z e dp l a t f o r ms o f t w a r ew h i c hf a c et h eb u s i n e s sp r o c e s s ,n a m e l y d e v e l o p m e n ta n do p e r a t i o np l a t f o r mw i t hw o r k f l o w a tt h ec o r e e n t e r p r i s e so rt h e d e v e l o p e rt w ot i m e s c a l ls t r u c t u r eo n e so w ni n f o r m a t i o ns y s t e mf a s to nt h eb a s i so f t h i sp l a t f o n n 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 ) b r o u g h t f o r w a r dw o r k f l o w r e f e r e n c em o d e li n19 9 5 i nt h ed e v e l o p m e n ti nr e c e n ty e a r s ,i th a sp e r f e c t e da s e r i e so fi n t e r f a c en o r m c o n s t a n t l y ,m a k et h ew o r k f l o wt h e o r yb e c o m i n gr i p e r t h e d e v e l o p m e n to fo b j e c t _ o r i e n t e d a n dd i s t r i b u t e d c o m p u t i n gt e c h n o l o g yr e c e n t l n e s p e c i a l l yj a v aa n d j 2 e e t e c h n o l o g y , o f f e r sap o s s i b i l i t yt of i n das o l u t i o nt ot h e s e p r o b l e m s t h i sp a p e rw i l lp r e s e n tt h ed e s i g na n di m p l e m e n t a t i o no fw o r k f l o w m a n a g e m e n ts y s t e mb ya d o p t i n gj 2 e et e c h n o l o g yb a s e do nw o r k f l o wr e f e r e n c e m o d e l ,a n dg e ta p p l i c a t i o ni nr e a l i t y 四川大学硕士学位论文 t h i s p a p e rf i r s t i n t r o d u c e st h eb a s i ct h e o r ya b o u tw o r k f l o wm a n a g e m e n t s y s t e m ,c o v e r i n gt h eb a s i cc o n c e p to fw o r k f l o w , t h eo p e r a t i o n a lp r i n c i p l ea n dt h e i m p l e m e n tm e t h o do f t h ew o r f l o wm a n a g e m e n ts y s t e m ,t h eb u i l d i n go fw o r k f l o w m o d e l ,e t c ,t h ep a p e rd i s c u s s e st h ea d v a n t a g eo ft h ea p p l i c a t i o no fj 2 e ei n w o r k f l o wm a n a g e m e n ts y s t e ma n da d d r e s s e st h et e c h n o l o g yo fe j bi nj 2 e ei n d e t a i l f i n a l l y , b a s e d o nj 2 e e ,w ep r o v i d et h et o t a ld e s i g no fw o r k f l o w m a n a g e m e n t s y s t e m ,i n t r o d u c e t h e d e s i g n i d e aa n df u n c t i o nr e a l i z e do ft h e o r g a n i z a t i o n m a n a g e m e n ta n d t h ep r o c e s sd e s i g n e ra n da d d r e s st h ed e s i g na n d i m p l e m e n to f t h e w o r k f l o we n g i n e r e f e rt of i v ei n t e r f a c e so fw f m cw o r k f l o wm a n a g e m e n t s y s t e m r e f e r e n c em o d e l ,d e s i g na n dr e a l i z et h es e r v i c ei n t e r f a c e so ft h ew o r k f l o w e n g i n e ( r e a l i z et h r o u g ht h er e m o t e i n t e r f a c eo fe j b ) ;c o m p l e t et h e d e s i g n o f w o r k f l o we n g i n ed a t a b a s et a b l e s ,s e p a r a t et h ed e f i n i t i o nt a b l ef r o mt h ei n s t a n c e t a b l eo ft h ep r o c e s s ,a c t i v i t y , t r a n s i t i o n ,e t c ,r e a l i z et h ed i s t r i b u t e dd e s i g ni d e ao f “a d e f i n i t i o n ,al o to fi n s t a n c e s ;d e s i g nt h em e c h a n i s mo ft h ee v e n th a n d l i n g ,r a t i o n a l d e s i g n “e v e n t a n d a c t i o n d a t a b a s et a b l e sa n dm a p w e l lt h e me a c ho t h e r , m a k e u s eo f “e v e n tc e n t e r t od e a lw i t l lt h ea c t i o n st r i g g e ra f t e rt h ee v e n tc o m e sa b o u t ; d e s i g na n dr e a l i z et h eo p e r m i o nm e c h a n i s mo ft h ep r o c e s si nw o r k f l o we n g i n e , i n c l u d i n ge s t a b l i s h m e n t ,a c t i v a t e ,h a n gu p ,s t o po f t h ep r o c e s si n s t a n c e ,c o n v e r s i o n a m o n g t h ea c t i v i t yi n s t a n c e ,e t c 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 e d e s i g n a n d i m p l e m e n t h a st h e c o n v e n i e n tv i s u a l p r o c e s sd e s i g n i n g ,e x t e n s i v ea c c e s s ,h i 【g he x p a n s i b i l i t y , h i g h m a i n t a i n a b i l i t y , e t c w h e nan e wb u s i n e s sp r o c e s sn e e d su s ew o r k f l o wt e c h n o l o g y i ne n t e r p r i s e si n f o r m a t i o nc o n s t m c t i o nc o u r s e t h et h i n gt h a to n l yn e e dt od oi s d e s i g nt h ep r o c e s sc o n v e n i e n t l yw i t hp r o c e s sd e s i g n e r , d o s en o tn e e dt ow r i t ea l i n e o f c o d e s ,t h e nc o m m i tt h ed e s i g n e dp r o c e s st ow o r k f l o we n g i n e g e n e r a lc u s t o m e r c l i e n ta n dm a n a g e m e n tc l i e n ta c c e s sw i t hb r o w s e r , i ti ss i m p l ea n d e a s yt oo p e r a t e w h e nt h ep r o c e s si si nt h ec o u r s eo f r u n n i n g ,w ec a nm o n i t o rt h es i t u a t i o no f t h e n m n i n gp r o c e s s w i t ht h e m a n a g e m e n tc l i e n t ,i t i sc o n v e n i e n tf o r e n t e r p r i s e s 四川大学硕士学位论文 a d m i n i s t r a t o rt oc a r r yo nt h em a n a g e m e n tb e t t e r t h er e s u l ts h o w si tc a r lm e e tt h e v a r i e dd e m a n d si ne n t e r p r i s e si n f o r m a t i o nc o n s t r u c t i o nc o u r s e k e yw o r d s : r e f e r e n c em o d e l r m i 1 1 0 p w o r k f l o ww o r k f l o wm a n a g e m e n ts y s t e mw o r k f l o w m e t a - m o d e lm o d es e m a n t i cj 2 e ee j b 四j i l 太学硕十学位论文 1 引言 1 1 背景介绍 1 1 1 项目背景 随着计算机技术的飞速发展和计算机网络的大面积普及,企业信息化建设 逐步深入,企业内部以及企业内部与外部建立起越来越多的业务应用系统,如 何整合企业的现有i t 资源,使企业中计算机孤岛式的应用向集体协作的方向 发展,发挥资源效益的最大化,降低企业成本,正在逐渐成为企业关注的重要 问题。 对企业管理最了解、最能正确决定企业管理模式的,应该是企业经营者, 而非软件公司,这是最基本的商业运作规律。现有的大部分应用软件无法适应 管理千变万化的个性和持续变革的需求。 因此,需要一些专业的面向业务过程管理的平台软件,即以工作流为核心 的开发、运行平台。企业或者二次开发商可在该平台的基础上,快速构建自己 的信息系统。用这种方式开发系统不但方便快速,并且该系统将具有非常好的 灵活性和扩展性。另外,系统也能够稳定运行,从而大大缩短开发周期,降低 开发难度,节约开发费用,降低系统的维护费用。使用这种方式已经是构建企 业业务信息系统的首选。 针对上述问题,本文作者与他人合作,自主开发了一个支持企业自动化管 理的软件平台,用户可以通过使用该软件实现业务流程的自定义,形成适应企 业业务需求的管理信息系统。该软件的成功实施,降低了企业实施信息化建设 的成本,大大加快了信息化建设的速度,具有重大的现实和经济意义。 1 1 2 技术背景 工作流管理联盟( 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 ) 早在 1 9 9 5 年就提出了工作流参考模型,在近几年的发展中,又不断完善了一系列的 四j i l 大学碗士学位论文 接口规范,使得工作流的理论日趋成熟。 由于工作流管理系统自身的特点,需要分布式平台的支持,而近年来j 2 e e 技术的快速发展正是符合这一要求。j 2 e e 是一种利用j a v a2 平台来简化诸多 与多缴企业解决方案的开发、部署和管理相关的复杂问题的体系结构。除了巩 固j a v a2 标准版中的许多优点,例如“编写一次、到处运行”的特性,方便 存取数据库的j d b ca p i ,c o r b a 技术,以及能够在i n t e r n e t 应用中保护数据 的安全模式等等,同时还提供了对e j b ( e n t e r p r i s ej a v a b e a n s ) 、j a v a s e r v l e t sa p i 、j s p ( j a v as e r v e rp a g e s ) 以及x m l 技术的全面支持。 1 2 本人所做的工作 本人在整个工作流管理系统中主要负责体系结构设计与工作流引擎的设 计等工作。 分析和研究w f m c 提出的工作流参考模型,剖析j 2 e e 框架技术,提 出工作流管理系统的实现方案。 按照j 2 e e 构架的思想,参照w f m c 的工作流管理系统的参考模型, 完成了整个工作流管理系统体系结构的设计。 协助完成流程设计器和组织管理器的设计和实现,主要包括功能描述 和数据设计。 独立完成工作流弓l 擎的设计与实现。包括: ( 1 ) 参照w f m c 的工作流管理系统的参考模型的五类接口,通过e j b 封装的远程接口,设计并实现了工作流引擎需提供的服务接口。 ( 2 ) 工作流引擎涉及的数据表的设计,将流程、活动、迁移等的定义 表和实例表分开来,实现“一个定义,多个实例”的设计思想。 ( 3 ) 工作流引擎事件处理机制,合理地设计“事件”及“动作”的数 据表,并将二者很好的映射起来,利用“事件中心”来处理事件产生 后相应动作的触发。 ( 4 ) 实现了流程在工作流引擎中的运行机制,包括流程实例的创建、 激活、挂起、终止,以及控制活动实例间的转换等。 四川大学硕士学位论文 1 3 论文结构 本论文分为五章,主要内容如下: 第一章:引言。简述了工作流管理系统在企业信息化建设日益增强的背景 下的重要性。说明了本人对该课题所进行的理论研究和所作的实 际工作,并列出了论文的内容结构。 第二章:工作流管理系统综述。介绍了工作流的基本概念、工作流管理系 统和工作流模型。 第三章:j 2 e e 分布式构架。讨论了j 2 e e 框架应用到分布式工作流管理系 统的优势,并重点对j 2 e e 框架中的e j b 技术作了介绍。 第四章:工作流管理系统的设计与实现。首先给出了系统的体系结构设计, 然后介绍了组织管理器和流程设计器的设计思想、实现的功能及 数据设计,并重点对工作流弓l 擎的设计与实现进行详细阐述。 第五章:结束语。对基于j 2 e e 的工作流管理系统的特性作了总结,提出 了改进方案。 四川i 大学硕十学位论文 2 工作流管理系统综述 2 1 工作流的基本概念 工作流是一类能够完全或者部分自动执行的经营过程,它根据一系列过 程规则、文档信息或任务,能够在不同的执行者之间传递与执行。它也是一种 反映业务流程的计算机化的模型,是为实现经营过程集成与经营过程自动化而 建立的、可由工作流管理系统执行的业务模型。其特征为: 工作流是面向业务过程的技术,这与传统的面向功能的管理技术不同。 工作流反映了业务过程的自动化,描述的是可由计算机系统支持运行的 业务过程。 工作流根据业务规则将系统中的各种资源相互关联,并协调完成整个业 务过程。 2 2 工作流管理系统 工作流管理系统是一个软件系统,完成工作流的定义和管理,并按照在计 算机中预先定义好的工作流逻辑推进工作流实例的执行。它指运行在一个或多 个工作流引擎的软件上,用于定义、实现和管理工作流运行的一套软件,它采 用人机交互界面,推进工作流实例的执行,并监控其工作状态,工作流管理系 统可称为企业的业务操作系统。 工作流管理系统的功能包括: 一、建立阶段定义功能 主要是工作流过程和相关活动的定义和建模。 二、运行阶段的控制功能 在一定运行环境下,执行工作流过程,并完成每个过程中活动的排序 和调度。 三、运行时的人机交互功能 4 四川i 大学硕士学位论文 执行过程中,用户和应用工具之间的交互。 2 2 1 过程定义 图2 1 工作流管理系统的特征 主要解决:根据目标和系统约束条件,将系统中的活动组织为适当的经营 过程的问题 作用: 一、描述企业的经营过程,供流程分析和优化使用。 二、在不同组织和信息系统间共享信息,实现一个共同的标准和企业动态 联盟。 三、用于企业c i m s 实旌,使系统能够按照过程横向集成,而不是按照部门 四川大学硕士学位论文 结构纵向集成。 四、研究开发新的经营过程,满足不同需求和结构演化。 2 2 2 工作流运行控制 在完成了过程模型的定义后,所生成的工作流模型将由工作流执行服务软 件进行实例创建并控制其执行过程。工作流执行服务对使用工作流模型描述的 过程进行初始化、调度和监控过程中每个活动的执行,在需要人工介入的场合 完成计算机应用软件与操作人员的交互。这样,工作流执行服务实现了在模型 中定义的经营过程与现实世界中实际过程之间的连接。这个连接通过工作流执 行服务与应用软件、操作人员的交互来完成。实现这个连接的核心功能是工作 流管理软件,也称为工作流引擎、工作流机。 工作流机除了完成过程的创建、删除、活动的执行和控制外,它的另外一 个重要的功能是完成与应用软件及操作人员的交互。这是因为在实际企业应用 中,应用软件和操作人员是完成经营业务工作的主体,而工作流机通过过程定 义和活动之间顺序控制实现这些独立的功能实体间的集成,从而是整个企业经 营活动成为一个协调运行的整体。 企业经营过程的执行通常需要若干个应用软件和若干人员的参与才能完 成,但是任何一个企业的实际应用都是在具有分布性和异构性的计算机网络环 境中运行。分布性是指应用软件运行在不同地点的不同计算机系统上,异构性 是指应用软件运行在不同计算机硬件环境、操作系统、数据库管理系统上。 工作流管理系统的分布性可以分为分布式的工作流用户与应用接口、分布 式工作流机和分布式工作流模型三种主要的分布方式。分布式的工作流用户与 应用接口通常是工作流管理系统必须提供的分布处理功能,因为企业的应用软 件和用户本身是分布在不同的计算机环境和不同的工作地点。 下图给出了一种分布式工作流执行服务情况: 6 四川i 大学硕士学位论文 集中式模型 图22 分布式工作流机与应用结构 分稚式模型 其中左面表示的是集中式的工作流机模型,右面是分布式工作流机模型, 整个系统是一个由异构分布工作流机构成的工作流执行服务环境。对于工作流 模型和工作流机集中,而工作流接口分布的工作流管理系统的结构,所有计算 机上的活动执行由一个工作流机来控制。而对于有多个工作流机协作执行一个 过程实例这种情况,被控制的过程实例的控制数据必须是这些不同的工作流机 都可以访问的。控制数据可以集中存放在一个主机上作为一个共享资源使用, 也可以将它分布到不同的工作流机环境中。在将控制数据分布到不同环境中 时,必须定义一套机制来保证这些控制数据之间的一致性。 四j i l 大学硕士学位论文 2 2 3 工作流管理中的人机交互 在工作流管理系统的运作过程中,人和应用是完成整个业务过程的主体。 工作流定义工具、工作流执行服务和任务表管理器都是为完成业务过程和支持 人员工作提供的运行环境和工具。具体说来,在整个工作流执行中,不同的操 作人员需要完成的工作大约可分为以下几种: 一、模型定义: 创建、修改、发布业务过程模型,这一般由企业管理人员按照企业业 务流程完成。 二、人机交互: 按照工作流任务管理器提供的任务,完成具体的业务处理( 如填写表 格、启动一个应用来计算生产计划、查询库存情况等) ,这个工作由企业各 个业务部门的人员完成。 三、系统运行状态监控: 检查、监视系统的运行状况,对意外情况进行紧急处理,如终止、恢 复某个过程实例的运行,改变某个活动的状态,以使系统继续正常运行。 这个工作由具有较高职务的系统管理人员完成。 四川i 大学硕士学位论文 2 2 4 工作流管理系统体系结构 在建立工作流的相关规范和标准方面,国际上成立了一个称为“工作流管 理联盟”( 简称w f m c ) 的国际组织,它提出了如下的工作流参考模型的体系 机构图: 是 图23 工作流管理系统的体系结构图 从上图可以看出,工作流管理系统主要由三类构件组成,这三类构件分别 一、软件构件:完成工作流管理系统不同组成部分功能的实现。 二、系统控制数据:工作流管理系统中的一个或多个软件构件使用的数 9 旧川i 大学硕士学位论文 据。 三、应用与应用数据:对于工作流管理系统来说,它们不是工作流管理系 统的组成部分,而是属于外部系统和数据,它们被工作流系统调用来 完成整个和部分工作流管理的功能。 工作流参考模型中涉及到的几种数据: 一、工作流控制数据( w o r k f l o wc o n t r o ld a t a ) :工作流执行服务,工作流机 通过内部的工作流控制数据来辨别每个过程或活动实例的状态。这些 数据由工作流执行服务i 作流机进行控制。用户、应用程序或其它 的工作流机工作流执行服务不能对其直接进行读写操作,它们可以 通过向工作流执行服务工作流机发消息请求来获得工作流控制数据 的内容。 二、工作流相关数据( 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 ) :这种数据指那些由应 用程序操作的数据。它们是针对应用程序的,是企业完成具体的业务 功能所需要的数据,如产品结构数据、订单数据、生产作业计划数据 等。工作流管理系统无法也不需要对它们进行访问。 1 0 ! 燮兰堡圭堂竺丝苎 2 2 5 工作流参考模型 w f m c 提出了如下的工作流参考模型: 瞄吲 接口i+ 士俸瀛a h 与受接格式 i 接h 4 譬 接口5 _ | | ;r其它工作旋 誊嚣 执行黻务 同卜i 蒺l l l ; ;誊 爨。一一s 睡i 罐i i 工作鹾概l ;3 l一 p鞭j 鞲;一 委 j 、j 壤“1 拦i 。 黝嚣 接口: : 瞵口3 魁凰 图2 4 工作流参考模型 该模型提供了五类工作流应用编程接口( w a p i ) : 接口l :工作流服务和工作流建模工具间接口,包括工作流模型的读写 和解释操作。 接口2 :工作流服务和客户应用之间的接口,约定所有客户方应用与工 作流服务之间的功能操作方式。 接口3 :工作流机和直接调用的应用程序之间的直接接口。 接口4 :工作流管理系统之间的相互操作接口。 接口5 :工作流服务和工作流管理工具之间接口。 叫j i i 大学硕士学位论文 2 3 工作流模型 工作流模型是业务流程在计算机内的计算模型,是业务流程自动化的起 点,包括元模型定义和模型语义x m l 描述。 2 3 1 工作流元模型 工作流元模型描述了过程定义所需要的上层实体,并且为过程定义划分成 相应的过程模型、在不同的过程定义与模型中交叉使用公共定义数据提供了多 方面的协定。 上层实体由下图所示: 图2 5 工作流元模型 四川大学硕士学位论文 工作流元模型用于描述模型各个组成元素及其各个组成元素间的关系,它 对过程定义交换( e x c h a n g eo fp r o c e s sd e f i n i t i o n s ) 标识了整套基本的 实体和属性。按照w f m c 的定义,元模型流程包括以下七类实体: 1 工作流过程( w o r k f l o wp r o c e s s ) 。通常简称为“流程”。 2 工作流过程活动( w o r k f l o wp r o c e s sa c t i v i t y ) 。通常简称为“活动”。 3 迁移信息( t r a n s i t i o ni n f o r m a t i o n ) 。通常简称为“迁移”。 4 工作流活动参与者( w o r k f l o wa c t i v i t yp a r t i e i p a n t ) 。 5 资源库。 6 工作流应用程序声明。 7 工作流相关数据( w o r k f l o wr e l e v a n td a t a ) 。 各类实体问的关系如图2 5 所示。 流程: 流程实体提供流程中其他实体将使用到的相关信息。它提供与流程管理相 关的信息( 如创建日期、作者等) ,以及流程执行时使用的信息( 初始参数) 。 流程实例在工作流机的控制下,具有如下的状态转换: 四川i 大学硕士学位论文 图26 过程实例状态转换图 几种状态: 1 、初始化:过程实例被创建,包括与过程状态相关的日期、工作流相关 数据,但是过程还没有满足条件,不能执行。 2 、运行:过程实例已经执行,过程中的活动如果条件满足就可以执行。 3 、激活:一个或多个活动已经被执行。 4 、挂起:过程实例被静止,并且过程中的活动不能执行,直到过程返回 到运行状态。 5 、结束:过程实例已经完成,并满足结束该过程实例的条件,系统将执 行结束后操作,并删除该过程实例 6 、终止:过程实例正常结束前被迫停止( 错误或异常) ,系统将执行补 救并删除该过程实例 - 活动: 流程实体是由一个或多个活动组成,每个活动是流程在逻辑上自包含的工 作单元。一个活动代表一个需要由一些相关资源处理,或者由计算机应用程序 处理的任务。有些信息是与活动相关的,例如:活动是否自动由工作流管理系 统开始或者结束的信息、当发生资源抢夺时活动的优先权是否高与其他活动的 信息。活动使用过程定义相关数据也许需要详细说明。一个活动的范围局限于 详细的过程定义。 工作流活动的实现方式总共有三种,分别是普通活动,子流程和循环。 普通活动是一种不存在嵌套和循环的工作流活动,活动的信息包括开始和 结束方式、当系统服务出现或其他活动参与资源竞争时活动所表现的优先权、 活动使用的具体的工作流相关数据项等。 一个活动也可以是一个子流程,在这种情况下,活动是一个流程定义的执 行容器,它可以在工作流服务中本地执行或者远程执行( 使用流程互操作接 口) 。子流程标识的流程定义包含它自己的活动定义、内部迁移、资源、应用 程序程序分配( 即使这些是从父流程中继承而来) 。使用输入输出参数可以 实现必要的工作流相关数据在调用与被调用过程间进行交换( 在需要返回参数 1 4 四i i 大学硕士学位论文 的时候,返回) 。 一个活动也可以被指定为一个循环,它作为一个控制活动,控制同一流程 定义的一组活动的重复执行。 最后需要指出的是,为了支持复杂的活动间的组合关系,提出了一种特殊 的活动,虚活动( 哑活动) 。它是一个虚拟活动,它不执行任何具体的工作( 没 有相关的资源或应用程序) ,但它可以简单地用来支持流入或流出迁移的路由 判断,用于定义流程组成活动间的复杂组合关系。 活动实例在工作流机的控制下,具有如下的状态转换: 图27 活动实例状态转换图 几种状态: l 、未开始:活动实例已经生成但没有激活。 2 、运行中:活动实例已被激活,并运行中。 3 、挂起:出现异常或错误,活动实例被暂时挂起,活动处于静止状态。 4 、结束:活动实例已经执行完毕,系统执行活动结束后的导航工作,激 活下一个符合启动条件的活动实例。 迁移: 活动之间的相互关联是通过迁移实现的,每个单独的迁移都是由源活动、 目的活动和迁移执行的条件三个属性构成。 迁移可能产生一个连续的活动序列,也可能产生一系列活动的并行执行。 一个转移离开一个活动的相关信息( 离开动作) 以及这个转移进入另个活动 的条件( 进入动作) ,都在相应的活动中进行定义。离开动作是当一个活动要 四川大学硕士学位论文 结束、转移要发生时在迁移的源活动中被处理,进入动作是当一个迁移要结束、 目标活动要开始时在迁移的目标活动中被处理。通过“离开动作”与“进入动 作”,可以把与单线程或同步执行的过程实例的工作流控制,作为相关活动的 一部分进行管理,而且还能够保留迁移的简单路由分配功能。一个迁移的范围 局限于包含这个转移及其相关活动的过程定义。 从一个活动到另一个活动的迁移可以是有条件的或无条件的。由于一个活 动可能是多个迁移的源活动也可能是多个迁移的目的活动,而多个迁移并不完 全执行,因而为了调度的要求,允许活动指定活动所对应的所有迁移( 分合并 迁移和分裂迁移两类) 的组合方式,包括两类与( a n d ) 关系或异或( x o r ) 关系, 对于合并,前者表示只有当所有以该活动为目的活动的迁移的源活动都执行完 时该活动才可激活,而后者表示当所有以该活动为目的活动的迁移的源活动中 任意一个都执行完时该活动就可激活;对于分裂,前者表示以该活动为源活动 的所有迁移的目的活动都可执行,而后者表示以该活动为源活动的所有迁移的 目的活动之一才可执行。 两种合并和分裂方式虽然简单,但复杂的转移,是不能通过上边提到的三 个基本属性以及离开、进入动作表示清楚。复杂的转移需要虚活动来构造,虚 活动作为一些活动的中间步骤,而且可以把一些离开动作和进入动作联系在一 起。使用附加虚活动的基本转移实体,可以实现任意复杂的路由结构。 工作流参与者: 参与者提供了资源的描述,它可以作为流程定义中的各项活动的执行者, 分配参与者将把活动联系到一组资源( 包含在参与者的声明中) 。参与者声明 不必指向单个人,而有可能指向有着合适技能( 角色) 或责任的一组人( 组织 单元) 或机器自动控制的资源。 资源库: 资源库中的记录可以是人员、程序或者机器等。在较多情况下,参与者声 明就是指资源库。在参与者是人的情况下,资源库也许就是一个组织结构图。 工作流应用程序声明: 工作流应用程序声明描述了工作流服务需要调用的i t 应用程序或者接口。 工作流服务调用这些应用程序和或者接口来支持或者完全自动的对相关活动 1 6 四i l 大学硕士学位论文 进行处理,这些应用程序以及接v i 在活动的应用程序属性中定义。被调用的应 用程序可以是工业工具软件、特殊部门( 企业) 服务、或者在工作流管理系统 中实现 的本地过程( 方法) 。工作流外部应用程序声明反映了工作流机与外部应用程 序之间的接口,包括任何传递参数。 工作流相关数据: 工作流相关数据是指那些在过程运行期间,每个过程实例都需要用到或者 创建的数据。活动或者过程在执行时必须得到这些数据,这些数据也可以用来 在活动间传递持久信息或者中间结果。在条件表达式中也可能需要这些数据, 例如,在转移和参与者分配中。工作流相关数据是一种特殊的数据类型。x p d l 中定义一些基本的和负责的数据类型( 例如,d a t e ,s t r i n g 等) 。活动、被调 用的程序以及转移条件都可能涉及到工作流相关数据。 包和流程仓库: 流程定义中包含了各种实体,有些实体的作用范围将超出单个流程定义, 如参与者、应用程序和工作流相关数据,它们将被其他大量的流程定义所访问。 为了提高定义的效率,元模型引入了一个与工作流管理系统相关的公共流程定 义仓库来存放组成流程定义的各种实体类型,这一仓库我们称为包。包是组织 大量不同的流程定义中的公共数据实体的容器,它可避免每个流程定义中的重 定义。 2 3 2 工作流模型语义描述 为了使工作流系统成为统一的工业标准,利于工作流元模型在计算机内有 合理的表述,也利于不同厂商的产品相互融合,m f m c 提供了一套x m l 过程 定义语言( x p d l ) ,即x m l 的s c h e m a 。不同的工作流建模工具生成的模型( 使 用x m l 文件表述) 都应当符合该s c h e m a 。而不同厂商的工作流机( 即工作流 引擎) 都应当能够解释执行该工作流模型。 例如: 工作流过程定义 详细说明了构成工作流的元素。包含活动、转移、应用程序和过程帽关数 四川大学硕 学位论文 据实体的定义或者声明。属性可以作为管理相关数据来被说明,例如作者、版 本:也可能作为运行时数据来说明,例如优先级;也可作为b p r 或者工作流 过程模拟相关数据来说明。一个工作流过程可以作为一个典型子流的实现来运 行。在这种情况下,参数可能会定义为过程的属性。如果1 :作流过程定义中包 含输入参数,并且参数不是通过子流程调用方法来初始化的,那么这样的工作 流定义是本地化的。在这样的环境中,与过程定义实例有关的、在参数表中的 所有工作流相关数据都要被初始化成默认值。如果工作流相关数据不作为输入 参数来传递或者不被初始化成默认值,那么结果是不确定的。同样,当一个子 流程非法终止,没有返回任何参数值给调用过程,结果也是不能确定的。通常, 实体的标识符和名称在其所在的实体范围内有效。标识符在其有效范围内必须 是唯一一的。对过程的标识符、名称来说其范围是其所在的包。 x s d :e l e m e n tr e 卢“x p d l :p r o c e s s h e a d e r ”卢 x s d :e l e m e n tr e 仁“x p d l :r e d e f i n a b l e h e a d e r ”m i n o e c u r s = ”0 ”胁 x s d :e l e m e n tr e f = “x p d l :d a t a f i e l d s m i n o c c u r s = 0 b x
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年中国温变加荧光防伪技术行业投资前景及策略咨询研究报告
- 2025年中国吸入式格栅灯行业投资前景及策略咨询研究报告
- 教育法律法规的国际化视野与挑战
- 企业园区智慧安防系统的发展与创新
- 情感分析在远程教育中的应用研究
- 多媒体教学技术在教学改革中的应用研究
- 基于人本理念的教育政策与实践探索
- 教育心理学与医疗领域患者心理支持与辅导
- 2024年河北外国语学院附属中学教师招聘笔试真题
- 2023年度浙江财经大学东方学院单招《物理》题库完整版附答案详解
- 《操作风险管理》课件
- 儿童乐园安全管理制度
- 【医学课件】外科营养支持
- 燕秀工具箱模具设计快捷键一览表
- 物业承接查验标准及表格
- 灯箱广告投标方案(完整技术标)
- dzl213型锅炉低硫烟煤烟气袋式除尘湿式脱硫系统设计
- SOP标准作业指导书excel模板
- 《公路桥涵养护规范》(5120-2021)【可编辑】
- 新人教版一年级数学下册期末考试卷(附答案)
- 人教版三年级语文上册期末试卷及答案【完整】
评论
0/150
提交评论