(信号与信息处理专业论文)基于net的动态工作流技术的研究与实现.pdf_第1页
(信号与信息处理专业论文)基于net的动态工作流技术的研究与实现.pdf_第2页
(信号与信息处理专业论文)基于net的动态工作流技术的研究与实现.pdf_第3页
全文预览已结束

下载本文档

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

文档简介

摘要 工作流技术是指由计算机支持或自动处理的全部或者部分业务过程的技 术。计算机技术的发展和进步,直接推动了工作流技术的不断发展。人们通过 采用工作流技术来组织业务流程,处理业务逻辑和管理组织结构,很大程度上 解决了企业信息化过程中出现的问题,提高了企业的工作效率,增强企业的竞 争力。 动态工作流系统是一个能够支持对正在运行的工作流流程实例进行修改的 系统。传统的工作流系统规定只能够在流程定义阶段对流程进行编辑和修改, 在流程开始运行之后就不能再对其进行任何操作。然而,现代的商业过程并不 是一成不变的,它们需要在流程的运行中进行某些修改来保证其满足企业需求 的变化。因此,通过引入动态工作流技术来保证业务流程在运行过程中能够根 据实际情况对其做出相应的变化和调整,提高工作流系统的适应性。 首先,本文对现阶段工作流技术在国内外的的发展现状进行研究,分析了 现有工作流系统的技术优点和存在的不足,并且研究了工作流的基本知识,主 要包括工作流的定义和相关概念、工作流参考模型和工作流管理系统的基本概 念,并分析了其结构体系。然后通过对动态工作流的定义和概念,以及动态工 作流技术的主要研究内容进行研究,为后面的设计提供理论基础。 然后,针对一个实际系统的开发,在前面的理论基础上,提出并设计了该 系统的体系结构。本系统采用经典的三层结构体系,分成表示层,逻辑层和数 据层。从理论上分析了动态工作流实现的原理,对实现动态工作流系统的关键 动态修改进行研究和分析,主要包括对动态修改的分类,实现策略和基本 操作的研究,并提出一种扩展的策略来实现本动态工作流系统。 最后,从过程实例和活动实例两方面的状态转换机制的研究并扩展,设计 了本系统中所使用的节点规则及流转条件,同时设计出了一个支持动态修改的 工作流引擎。在此基础上设计出一个基于n e t 的动态工作流系统,该系统支持 对流程定义和流程实例进行动态修改。基于n e t 的动态工作流系统是在基于 m i c r o s o f t n e t 的框架下开发的,采用经典的三层体系结构,充分发挥了n e t 框 架和c f j 语言的技术优势,在很大程度上提高了系统的动态性和灵活性。 关键词:动态工作流引擎,基于n e t 的动态工作流,动态修改,工作流 a b s t r a c t t h ew o r k f l o wt e c h n o l o g yi sak i n do ft e c h n o l o g yt h a tt h ea l lo rp a r to ft h e b u s i n e s sp r o c e s si ss u p p o r t e db yc o m p u t e ro ra u t o m a t i cp r o c e s s e d t h ed e v e l o p m e n t a n dp r o g r e s so fc o m p u t e rt e c h n o l o g yd i r e c t l yp r o m o t et h ec o n t i n u o u sd e v e l o p m e n to f t h ew o r k f l o wt e c h n o l o g y p e o p l eu s ei tt oo r g a n i z eb u s i n e s sp r o c e s s ,h a n d l et h e b u s i n e s sl o g i ca n dm a n a g et h es t r u c t u r eo ft h eo r g a n i z a t i o n t h i sm e t h o dl a r g e l y s o l v e st h ep r o b l e m si nt h ep r o c e s so fe n t e r p r i s ei n f o r m a t i o n ,i m p r o v e st h ee f f i c i e n c y o ft h ee n t e r p r i s ea n de n h a n c e st h ec o m p e t i t i v e n e s so ft h ee n t e r p r i s e s t h ed y n a m i cw o r k f l o ws y s t e mi sas y s t e mw h i c ha l l o w st om o d i f yt h ew o r k f l o w p r o c e s si n s t a n c ew h e ni ti sr u n n i n g t h et r a d i t i o n a lw o r k f l o ws y s t e mr e q u i r e m e n t s c a no n l yb ee d i t e da n dm o d i f i e di nt h ep r o c e s sd e f i n i t i o np h a s eo ft h ep r o c e s s a f t e r t h ep r o c e s sb e g a nt or u n ,t h e r ei sn ol o n g e ra v a i l a b l ef o ra n yo p e r a t i o n h o w e v e r , t h e m o d e mb u s i n e s sp r o c e s s e sa ren o ts t a t i c ,m e yn e e dt om a k es o m ec h a n g e si nt h e p r o c e s sr u n n i n gt o l l s u r ei tm e e t st h ec h a n g eo fb u s i n e s sn e e d s t h e r e f o r e , b y i n 仃o d u c i n gt h ed y n a m i cw o r k f l o wt e c h n o l o g yt o n s u r gb u s i n e s sp r o c e s s e sd u r i n g o p e r a t i o na c c o r d i n gt o t h ea c t u a ls i t u a t i o na n dm a k et h ea p p r o p r i a t ec h a n g e sa n d a d j u s t m e n t st oi m p r o v et h ea d a p t a b i l i t yo fw o r k f l o ws y s t e m s f i r s to fa l l ,w ed os o m er e s e a r c ha b o u tt h es t a t u so ft h ew o r k f l o wt e c h n o l o g ya t h o m ea n da b r o a d ,a n a l y z et h ea d v a n t a g e sa n ds h o r t c o m i n g so ft h ee x i s t i n gw o r k f l o w s y s t e m s ,a n ds t u d yt h eb a s i ck 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 , i n c l u d i n gt h e w o r k f l o wd e f i n i t i o na n dr e l a t e dc o n c e p t s 、t h ew o r k f l o wr e f e r e n c em o d e la n dt h eb a s i c c o n c e p t so fw o r k f l o wm a n a g e m e n ts y s t e m ,a n da n a l y s z ei t ss t r u c t u r a ls y s t e m a n d t h e nw es t u d yt h ed y n a m i cw o r k f l o wd e f i n i t i o n sa n dc o n c e p t s ,a sw e l la st h em a i n r e s e a r c hc o n t e n t so fd y n a m i cw o r k f l o ws y s t e mw h i c hp r o v i d e sat h e o r e t i c a l f o u n d a t i o nf o rt h el a t e rd e s i g n t h e n ,f o rt h ed e v e l o p m e n to fap r a c t i c a ls y s t e m ,b a s e do nt h ef r o n tt h e o r y , w e p u tf o r w a r da n dd e s i g nt h es y s t e ms t r u c t u r eo ft h es y s t e m i nt h es y s t e m ,w eu s et h e c l a s s i ct h r e e t i e ra r c h i t e c t u r es y s t e mt h a tt h e ya r et h ep r e s e n t a t i o nl a y e r , t h el o g i c l a y e r a n dt h ed a t a l a y e r w et h e o r e t i c a l l ys t u d y t h e d y n a m i cw o r k f l o w i m p l e m e n t a t i o np r i n c i p l ea n dd oal o to fr e s e a r c h e s a n da n a l s i so ft h ed y n a m i c m o d i f i c a t i o nw h i c hi st h ek e yp o i n to ft h ed y n a m i cw o r k f l o ws y s t e m ,i n c l u d i n gt h e d y n a m i cm o d i f i c a t i o no ft h ec l a s s i f i c a t i o n ,t h er e s e a r c ho ft h ea c h i e v es t r a t e g ya n d t h eb a s i co p e r a t i o n 。a n da tl a s t ,w ep r o p o s eae x p a n s i o ns t r a t e g yt oa c h i e v et h i s d y n a m i cw o r k f l o ws y s t e m f i n a l l y , f r o mt h et w oa s p e c t so ft h ep r o c e s si n s t a n c ea n da c t i v i t yi n s t a n c es t a t e t r a n s i t i o nm e c h a n i s ma n de x t e n d ,w ed e s i g nr u l e so ft h en o d e sa n dc i r c u l a t i o n c o n d i t i o n su s e di nt h i ss y s t e m ,t od e s i g naw o r k f l o we n g i n et h a ts u p p o r t sd y n a m i c m o d i f i c a t i o n a n dt h e n , w ed e s i g nad y n a m i cw o r k f l o ws y s t e mb a s e do n n e tw h i c h s u p p o r t st h em o d i f i c a t i o no ft h ep r o c e s sd e f i n i t i o na n dt h ep r o c e s si n s t a n c e t h e s y s t e mi sb a s e do nm i c r o s o f t n e tf r a m e w o r k ,u s i n g t h ec l a s s i ct h r e e - t i e ra r c h i t e c t u r e i tg i v e sf u l lp l a yt ot h e n e tf t a m e w o r ka n dc 撑t e c h n i c a la d v a n t a g e ,h a sg r e a t l y i m p r o v e dt h es y s t e md y n a m i ca n df l e x i b i l i t y k e y w o r d s :d y n a m i cw o r k f i o we n g i n e ,t h ed y n a m i cw o r k f i o wb a s e do n n e t , d y n a m i cm o d i f i c a t i o n ,w o r k f l o w i l l 武汉理工大学硕士学位论文 第1 章绪论 1 1 论文研究的背景和意义 ,在全球信息化浪潮的席卷下,越来越多的企业开始了信息化的进程,各种 办公自动化系统应运而生。然而由于各种各样的原因,这些系统在业务流程的 设计与实际的实现上总是存在着这样或那样的缺点,主要表现有:使用人员的操 作感不强、系统智能化程度低、系统自动化程度不高、系统动态性和通用性较 耸笠 , z l 寸o 随着计算机技术的发展和进步,企业之间的竞争逐渐表现出快速化、灵活 化、自动化与全球化的新特征。为了能够在激烈的市场竞争中脱颖而出,企业 必须从自身出发,提高处理各种流程的处理效率,快速地响应市场与客户需求 的变化,有效的监控各项工作进度,提高企业组织生产率和运行效率,分析各 种流程作业的成本,优化组织结构,从而有效的降低企业的运营和管理成本, 提高企业竞争力。在这种背景下,如何实现办公流程的信息化与自动化,已成 为许多企业未来发展的关键点。而实现这些流程的信息化和自动化的主要技术 工作流技术也成为逐渐走入人们的视野。迄今为止,在e r p ( 业务流程管 理) 、c r m ( 客户关系管理) 、e a i ( 企业应用集成) 等经典企业应用领域,工作 流技术的应用已经不可或缺【l 】。 工作流技术的最终目的是实现业务流程的自动化,方便业务管理,提高企 业的工作效率。在工作流系统中,工作流将特定的任务发送给指定的用户,然 后,该用户可以按照相应的操作对表单进行处理和数据存储,按要求执行完任 务后,将执行的结果按照相应的流转规则传递给下一个用户,下一个用户再按 照相应的要求执行任务。如此反复下去,就形成了工作流程,简称为“工作流 。 目前,由于很多企业的大部分的应用都是以流程为核心的,所以,各企业 在谋求持续发展的过程中,都把对流程的改善和优化作为重中之重。企业经营 过程重组和企业过程自动化已经成为诸多企业提高自身经营水平的迫切需求, 随着企业经营过程重组和企业过程自动化的不断深入,对系统适应业务流程动 态变化的需求提出了更进一步的要求。然而,由于现有工作流的开发模式一般 都是定制流程的,无法满足该要求。所以,动态工作流技术应运而生。 武汉理工大学硕士学位论文 动态工作流技术的思想是在工作流技术的基础上发展起来的。因此,它既 保留了工作流技术的诸多优点,同时也具备自身特色。动态工作流技术所要解 决的最主要的问题就是动态修改,也就是支持对正在运行的流程进行修改,提 高系统的适应性。动态工作流技术最主要的任务就是使系统流程实例中的各个 节点( 节点的属性及节点间的流转关系) 不受流程定义时的限制,支持其动态 修改。动态工作流的改变应该包括:挂起流程和对流程中节点进行添加、删除 与修改后的再次提交,实现工作过程管理和企业办公业务逻辑的分离,能够很 大程度上提高系统的柔性和灵活性。 。 基于这样的背景,将动态工作流技术应用到当前的办公信息化系统中。使 用户可以按照实际办公流程对其各项业务流程进行建模。并且在业务流程发生 改变时,通过对正在运行过程中的流程进行动态修改来做出相应的改变,大幅 度的提高了公司办公信息系统的灵活性和可适应性,从而提高公司的办公效率, 增强企业竞争力。 1 2 国内外研究现状 工作流技术最早诞生于生产组织和办公自动化领域。在1 9 7 0 年代中期,当 时的计算机水平还很低下,网络环境还很差,以及相关理论和技术都不太完善 的背景下,这项技术并没有引起太多的注意。然而,关于工作流的思想却由来 已久,早在1 9 6 8 年,研究人员就已经开始尝试将信息技术与工作流程自动化相 结合。在当时还有很多与工作流相关的研究工作都在进行中,其中,比较著名 的是s c o o p 系统和o f f i e e t a l k 系统,他们是最早的办公自动化系统,同时,它 们的问世也标志着工作流技术的开始。 到了8 0 年代中期,工作流管理系统开始出现,众多公司开发并研制出一系 列的工作流产品。其中比较有代表性的有:f i l e n e t 公司在1 9 8 4 年推出的w o r k f l o 商用系统,v i e w s t a r 公司在1 9 8 8 年推出的v i e w s t a r 系统,还有m m 公司在同 年推出的i m a g e p l u s 系统。这些产品的问世,既方便了用户对其业务流程进行精 简和重组,同时也为后期的工作流技术的发展提供了一个良好的思路。 进入9 0 年代,随着以计算机与网络技术为主的一批相关技术的不断发展, 极大的促进了工作流管理系统的开发与研究,工作流技术得到了长足的发展。 各种工作流管理系统相继问世的同时,也带来了许多问题。由于不同的公司和 研究人员从不同的角度进行开发,因此对工作流技术的概念和结构体系的定义 2 武汉理工大学硕士学位论文 都是不同的,这也使得不同的工作流产品之间的互操作是不可能的,严重阻碍 了工作流技术更进一步的发展。 1 9 9 3 年8 月,工作流技术标准化的专业组织工作流管理联盟( w o r k f l o w m a n a g e m e n tc o a l i t i o n ,w f l v l c ) 成立。这标志着工作流技术已经发展到了一个 相对成熟的阶段。1 9 9 4 年,工作流管理联盟发布了工作流管理系统的“工作流 参考模型”,并相继制定了一系列的工业标准。2 0 0 1 年,b p m i ( b u s i n e s sp r o c e s s m a n a g e m e n ti n i t i a t i v e ) 标准组织成立,在随后的1 1 月1 3 号发布了b p m l l 0 业 务流程语言规范。 目前,在全世界范围内,工作流技术引起了更多人的注意,在学术界和企 业界都得到了极大关注。人们将更多更新的先进技术集成到到工作流管理系统 中,这不仅极大的丰富并完善其体系结构,同时也在一定程度上增强了工作流 管理系统的性能。越来越多的大学和研究机构也都参与进来,通过不断的研究 和探索,在工作流技术的研究和应用领域取得了越来越多的成果,促进工作流 技术的发展。 在传统的工作流系统中,用户只能够在流程定义阶段,对流程进行编辑和 修改。当系统运行中,就不允许再对其流程进行任何操作。然而,现代的业务 流程最显著的特征是具有可变性,用户需要在流程的运行过程中,对流程进行 某些修改来保证其满足企业需求的变化。因此,通过引入动态工作流技术来保 证业务流程在运行过程中能够根据实际情况做出相应的变化和调整,从而提高 工作流管理系统的适应性。 随着信息技术的不断发展和市场的需要,国内外越来越多的研究人员都加 入到了动态工作流技术开发的行列中。随着研究的不断深入,研究人员发表了 很多具有参考价值的观点和理论,开发了许多支持动态工作流的元模型来描述 流程中动态变化的因素,并且制定了对这些可变因素的操作规范,这些都为动 态工作流系统以后的实现和发展提供了理论基础并且指明了方向。 土耳其中东工业大学软件研究与发展中心研制的工作流管理系统 m e t u f i o w 2 1 ,在该系统中研究人员将动态修改分成两类:永久性修改和暂时性 修改。其中,永久性修改是指过程定义被永久性的修改,它对应的运行实例可 以选择性地修改一个、部分或者全部;暂时性修改是指仅仅修改运行的过程实 例,而并未修改流程中过程定义。用户可以通过动态修改工具对过程进行以下 七种修改操作:( 1 ) 定义新的活动,并将新活动加入过程定义中;( 2 ) 定义新 的控制流关系或者修改已存在的控制流关系;( 3 ) 定义新的条件或者修改已存 3 武汉理工大学硕士学位论文 在的条件;( 4 ) 修改过程中的相关参数;( 5 ) 修改活动块中的类型;( 6 ) 修改 活动中的参与者;( 7 ) 删除活动。 在“动态工作流技术的应用研究,【习中作者在结合传统工作流建模方法的基 础上,通过扩展工作流元模型,提出了一种支持动态修改的工作流体系结构,并 在j b p m 的基础上进行扩展,对在应用过程中出现的流程迁移、动态路由、组织 关系的变更等动态修改的情况进行了分析和研究,并制定了相应的变更规则,提 出了解决方案,在一定程度上增强了工作流系统的适应性。 在“基于规则引擎的动态工作流模型研究与设计,【4 】中,作者把业务流程和 业务规则通过使用规则引擎分离开来,并提出一种新的基于规则引擎的动态工 作流模型。其中,业务规则在分离后被分成三种服务:( 1 ) 决策规则服务;( 2 ) 动作规则服务;( 3 ) 任务规则服务。在系统运行过程中,当流程节点运行到决 策点时,按照该系统定义的决策规则服务,然后决定流程运行的下一个节点; 当系统中存在处理大量业务逻辑和规则时,就可以通过调用动作规则服务,提 高流程的执行的效率;当系统需要处理任务分配的工作非常复杂时,可以通过 调用任务规则服务来有效地进行业务管理。但是,规则引擎的引入会增加系统 的开发和维护成本,对规则引擎的过度使用也会降低系统的工作效率。所以, 在实际的应用中,要根据企业自身的实际情况来决定该工作流模型的使用。 综上所述,国内外的研究人员对动态工作流技术的研究内容主要有:动态 工作流的模型,动态工作流引擎的结构,动态修改的分类,动态修改操作,动 态建模,系统中使用的流转规则和条件、动态修改策略以及在动态修改过程中 会产生的问题。 1 3 论文主要工作和论文组织 本文通过研究动态工作流的相关概念及各种动态修改策略,制定流程定义 方法和规则及流转条件,在理论研究的基础上,设计并实现了一个动态工作流 引擎。然后针对一个实际项目的需求,设计了办公信息化系统的应用体系结构, 同时借鉴了一些其他办公信息化系统开发的经验,将动态工作流技术与办公信 息化系统结合,开发出基于n e t 动态工作流的办公信息化系统。 本论文主要分为以下五章: 第1 章绪论。主要介绍了该课题的研究背景和意义,强调引入动态工作流 技术的必要性,介绍了国内外的研究状况和论文的主要工作及论文的组织结构。 4 武汉理工大学硕士学位论文 第2 章动态工作流概述。主要介绍工作流的定义和相关概念,工作流管理 的功能及其基本组成,动态工作流的基础知识。 第3 章基本n e t 动态工作流系统的设计。主要介绍了对实现本系统中用到 的关键技术的研究,主要包括系统结构体系的设计,动态修改策略和操作的设 计,以及支持动态工作流系统的核心动态工作流引擎的设计,最后给出了 支持动态工作流运行的数据库的设计。 第4 章基于n e t 动态工作流系统的实现。结合一个实际的项目,将动态工 作流技术与实际的应用相结合,介绍该系统的总体结构和设计思路,以及动态 工作流的运行实例。 第5 章结论与展望。总结本论文的研究成果,并对以后的研究工作进行展 望。 5 武汉理工大学硕士学位论文 第2 章动态工作流概述 2e i 工作流的定义和相关概念 当今社会,企业内部的信息管理系统已经成为企业运行的业务神经。一个 企业信息管理系统的水平高低能够在某个程度上体现出该企业的信息化水平和 该企业应付市场风险的能力。随着计算机技术的不断进步,以及企业对办公信 息化的强烈需求,人们开始用工作流技术组织业务流程、辨别业务逻辑、管理 组织结构,这在很大程度上解决了企业信息化过程中出现的问题。 工作流技术是企业流程建模和流程管理的核心技术之一【5 1 ,将工作流技术应 用到企业的信息化系统中,可以极大的弥补传统企业信息化系统的不足。利用 工作流技术,对于企业执行效率的提高,组织结构的精简,企业成本的降低以 及工作业绩的提高都有着重要的意义。 由于不同的开发者和研究人员对工作流技术的关注点不同,而且工作流产 品所面对的用户不同,他们对工作流技术的理解也不尽相同。因此,目前学术 界对工作流的概念还是没有一个统一的,明确的定义。其中,比较权威是在1 9 9 3 年,工作流管理联盟( w f m c ) 提出的定义:工作流是一类能够完成或者部分自 动执行的业务过程,它可以按照为实现完整业务目标而定义的一系列过程规则, 在不同的参与者之间传递文档、信息或任务并执行【6 】。从这个定义中,我们可以 看出,工作流可以是人工处理的,但是在实际的应用过程中,大多数的工作流 在企业信息系统中,都是提供业务流程的自动化执行和支持企业运算环境下不 同组织之间业务的交互。 不管从哪种角度或者是从哪个层面对工作流进行定义,都突出了以下两个 特点: ( 1 ) 业务流程的自动化执行; ( 2 ) 业务流程和用户之间的交互。 图2 1 为工作流基本概念间的相互关系,通过对这些相互关系和基本概念的 研究,可以更好的理解工作流的思想。 6 武汉理工大学硕士学位论文 描述为 , r - 流程定义- 、 、 子过程分解 业务流程 h 。 、被管理,。、。_ l k 鼻 ,譬 - 、 工作流管理系统 创建和 、管理 、- 控制 、 、 l 流程实例 l 一活动 包含 ? ? ? 2 二袭票凳,_ 活动实例 实现表示为,”_ ? ” f( 讲) _ ,。、 , ,、 手动操作自动处理7,。执行、 ( a n d o r )、 工作任务2 篙篓 图2 1 工作流基本概念间的联系图 业务流程( b u s i n e s sp r o c e s s ) 业务流程就是对同有一类具体事务的抽象, 描述了该类事务的业务本质。一个业务流程由许多将要被执行的活动和一系列 决定该活动执行先后顺序的业务规则构成。 流程定义( p r o c e s sd e f i n i t i o n ) :业务流程的计算机表示形式。当业务流程确 定以后,通过使用工作流定义语言对该业务流程进行建模,一般生成为x m l 形 式( e x t e n s i b l cm a r k u pl a n g u a g e ,可扩展标记语言) 。流程定义同样是由一个或 者多个活动组成,并且指出该活动的执行次序。 工作流管理系统( w o r k f l o wm a n a g e m e n ts y s t e m ,简称w 伽s ) :是一个能 够完成工作流过程和相关活动的定义和管理,按照预习定义的执行步骤和业务 规则完成活动调度、任务分发和流程的流转工作,并在各种业务活动或者任务 的执行过程中合理地分配资源的工作流系统。 活动( a c t i v i t y ) :活动是一个流程的最小逻辑步骤或环节,不能够将它分开 来执行。它需要有人员的参与或机器的参与。 流程实例( p r o c e s si n s t a n c e s ) :业务流程的一次执行。在业务流程执行后, 可以通过流程实例来反映业务流程的实际执行状况。 7 武汉理工大学硕士学位论文 2 2 工作流管理系统 2 2 1 工作流管理系统的概述 工作流管理系统是一种支持对流程的定义,管理和按照事先定义好的工作 流逻辑执行流程实例的软件系统。对研发人员来说,工作流管理系统的最终目 标是管理工作的流程来保证工作在正确的时间被设定好的人员来执行,并在自 动化进行的业务过程中,能够人为的进行执行和干预。对于工作流管理系统来 说,能够采用不同的信息技来,实现,并且能够在不同企业的运算环境中运行。 虽然目前市场上有很多种工作流产品和不同类型的工作流管理标准,它们 有不同的应用场景和不同的实现方式,但是它们都或多或少的具有一些共同的 特性,都能提供业务流程的建模、集成和交互功能。从抽象层面来分析工作流 管理系统,可以把工作流管理系统的功能和结构按照执行顺序分为3 个功能:( 1 ) 建立时功能:主要关注业务流程,相关活动或任务的定义和建模,输出的结果 是业务流程的格式化定义;( 2 ) 运行时实例控制功能:主要关注在一定的运行 环境下管理业务流程,并完成业务相关活动或任务的调度;( 3 ) 运行时与用户 及应用程序的交互功能:通过人机交互,业务活动或任务在用户或应用程序之 间的流转调度,共同完成业务流程的执行,其结构如图2 2 所示。 图2 2 工作流管理系统的功能和结构 武汉理l :人学硕十学位论文 2 2 2 工作流管理系统的结构体系 为了实现工作流技术的标准化,方便不同厂家的工作流产品之间的互操作, 工作流管理联盟从众多不同的工作流产品中抽象出了一个通用的工作流管理系 统的结构体系。般来说,通用的工作流管理系统主要由以下三个组件组成 7 : ( 1 ) 软件组件:支持工作流管理系统中各项功能的实现: ( 2 ) 系统定义和控制数据:在工作流管理系统中,被某个或多个软件组件 使用的数据: ( 3 ) 应用程序和应用程序数据库:不是工作流管理系统自身的组成部分, 通过被工作流管理系统调用,来完成整个或部分工作流管理系统的功能。 这三个功能组件的关系如图2 3 所示。 兰厩i 。_ - 1 。一 引用一过程定义卜、 可五而石丢气 被解释 、 l 组织角色:p _ 秤、 模型数据广t e 司 工作漉 执行服务 引用 f 二 t 维护制数据 7i 弋 4 广 。产一任务表l _ 一 ,7 i ,一 交互 i 竺竺同l 调用 应用 工作漉 :蒙:更新筒数据 一:i ! l r 图2 3 工作流管理系统体系结构图 工作流管理系统是有很多个不同的功能组件所组成,这些组件之间能够互 通信息、相互协作,共同来完成整个业务流程的执行和管理。 9 彻 一 武汉理工大学硕士学位论文 2 3 动态工作流概述 随着技术的不断提高和实际应用的不断深入,传统的工作流技术逐渐不能 满足用户的需求,因此研究人员开始对工作流的动态性进行探讨。目前,国内 外的工作流系统有成百上千种之多,但是,大多数的工作流管理系统规定只能 够在流程定义阶段对过程进行编辑和修改,在过程开始运行之后就不能再对其 进行任何修改。这种限制使得它们只适用于那些在运行时实际的业务过程和在 定义时系统所表示的过程完全吻合的业务过程。然而随着社会的不断发展,企 业和政府办公环境的不断变化,现代的业务流程更多地表现为一种动态流程, 多变性和不可预知性已成为其内在特点。所以,固定的业务流程描述再也不能 满足现实应用的需要,不可预知的改动和异常的发生,会使定义的流程与实际 运行时的流程执行存在差异,从而使工作流系统不能正常的运行,极大的影响 了工作流技术管理系统的应用和发展。所以将动态修改技术应用到工作流中, 可以保证业务流程在运行过程中能够根据实际情况做出相应的变化和调整,从 而提高工作流管理系统的适应性。在保证工作流基本特性的前提下,如何提高 工作流管理系统的适应性,这也是目前国内外动态工作流技术研究的一个新的 热点【8 1 。 动态工作流的关键就是动态修改,动态修改是指在流程运行时对事先定义 好的工作流流程进行某种修改。目前,虽然人们从各个方面对动态工作流进行 研究,并提出了一些解决方案,但是大多都还只是理论方面的研究,并没有成 熟的产品问世。由于对动态工作流技术的研究角度的不同,对于动态工作的概 念,国内外的专家学者并没有能够给出一个明确的定义。通俗的说,动态工作 流系统是一个能够支持对正在运行的工作流过程实例进行修改的工作流管理系 统。目前,国内外对动态工作流技术的研究主要集中在以下几个方面:动态修 改的分类、动态工作流引擎的设计、修改策略和修改的实现方法等。 2 4 本章小结 本章主要研究了动态工作流技术的基础知识,主要内容包括:工作流的定 义和相关概念、工作流管理系统的定义、工作流管理系统的结构体系以及动态 工作流的基本概念。这些内容为后面的动态工作流系统的设计奠定了理论基础, 并且对该系统的实现起到了指导作用。 1 0 武汉理工大学硕士学位论文 第3 章基于n e t 动态工作流系统的设计 随着网络技术的不断发展,人们对动态工作流技术的研究也越来越多,动 态工作流技术因此得到了长足的发展。将其它各种技术与动态工作流技术结合 起来,使其系统的性能更加的稳定和功能更加的强大。 动态修改是动态工作流的关键问题,本章将对系统中使用的动态修改策略 和基本操作等进行研究,并在结合实际系统提出扩展。在此基础上,对基于n e t 的动态工作流系统的总体结构和实现方案的设计进行详细的探讨。动态工作流 引擎是整个动态工作流系统的核心,它主要负责动态工作流执行服务中部分或 者全部的运行控制环境。本章将对其具体的设计以及实现进行重点的研究。 3 1 系统结构图 为了实现动态工作流系统,结合实际项目的开发的需求,借鉴了工作流管 理联盟( w f m c ) 给出的参考模型9 】,设计出了本系统的系统结构。采用经典的 三层体系结构:表示层、逻辑层和数据层。其系统的系统结构如图3 - 1 所示。 表示 逻辑 图3 - 1 系统结构图 武汉理工大学硕士学位论文 如图3 1 所示,本系统分为应用框架部分、动态工作流编辑器部分、逻辑处 理部分和基础处理部分组成。表示层包含应用框架部分,逻辑层包含逻辑处理 部分,基础处理部分,工作流编辑器和工作流逻辑处理部分,数据层主要包含 数据库连接部分。 应用框架部分的功能主要包含说明应用框架所包含的页面,其中主要有用 户登录页面、用户管理页面、部门管理页面、权限管理页面、自定义组件管理 页面、菜单设置页面、栏目设置页面、帮助设置页面、功能管理列表页面。页 面函数为事件驱动,并且调用相应的业务处理方法来实现功能。 动态工作流编辑器部分的功能是实现工作流程的建模和管理,考虑到v m l 的图形特性和j s 可操作性,工作流编辑器使用b s + v m l + j s 混合模式。生成的 工作流程的展现形式为图形,其保存方式为x m l 。界面函数同样为事件驱动, 并且调用相应的逻辑处理方法实现功能。 逻辑部分的功能是处理本系统中的各种业务逻辑,又可以分为:工作流处 理部分和业务处理部分。工作流处理部分是由3 部分组成:流程管理、节点管 理和节点规则管理。业务处理部分又可以分为:用户管理、项目管理、资料管 理、后台管理和消息管理。其结构如图3 2 所示。 逻辑处理部分 工作流处理部分li 业务处理部分 薯冀ll 薯皇li 薯童 管理il 管理il 箸磊 逻辑处理 用户il 项目ll 后台li 资料ll 消息 管理il 管理il 管理li 管理ii 管理 图3 2 逻辑处理结构图 数据部分功能主要包含提供系统和s q ls e r v e r 数据库的连接、文件的处理 和数据的导出,主要有x m l 和e x c e l 两种。 1 2 武汉理工大学硕士学位论文 3 2 动态工作流中动态修改的研究与设计 动态工作流的关键就是动态修改,在过程运行中对该工作流过程进行动态 修改时,首先要考虑的问题是如何实现动态修改,即采用什么样的动态修改策 略来处理这些过程实例和动态修改是通过什么样的操作来实现的。下面将对动 态修改的类别、动态修改策略和基本操作进行具体研究。 3 2 1 动态修改分类 动态工作流中动态修改的内容可以从工作流管理系统的体系结构上体现出 来,动态修改的内容会随着工作流抽象层次的不同,其含义和方式也是不同的。 如图3 3 为动态修改的层次结构图。 系统层次 动态修改内容 应用领域 过程 模型 一任务 资源 一软件组件 组织模型 一数据模型 系统基础组织 应用领域之同的重配置 模型演变 一模型实例的设定性改变 资源调度 一组件和接口 一人力资源 一相关数据适配 系统的重配置 图3 3 动态修改的层次结构图 动态工作流中动态修改的特征主要可以分为三个方面:应用领域的动态修 改、过程的动态修改和资源的动态修改。 应用领域的动态修改是指动态工作流系统能够适应不同的工作领域,处理 好不同领域和组织的差异。一个动态工作流系统是需要处理好不同的工作领域 和组织之间的关系,当某一领域发生变化时,只需要通过修改其程序的配置和 进行简单的操作就能适应新的领域,而不需要对整个系统进行重新的设计和开 发【1 0 1 。 过程的动态修改可以分为两类:过程模型的修改和工作流实例的设定性修 1 3 武汉理工大学硕士学位论文 改。过程模型的修改是指当实际工作的业务发生改变时,相应的过程模型也需 要进行修改,其修改的重点部分是过程模型的重新设计,替换以及版本的控制 等问题。工作流实例的设定性修改是指在工作流运行阶段,随机发生的修改。 这些修改需要结合实际情况,并且按照系统设定的修改策略和相应的操作来确 保过程模型的一致性和正确性。 资源的动态修改主要对工作流资源的重新分配、组织结构和数据结构的修 改。资源是企业生产经营必须的因素,在工作流系统的运行过程中,需要得到 企鹅也资源的支持,相应的过程实例才能得到完成。组织结构的修改最主要的 是当企业的组织结构发生变化时,人员的变动使得流程节点的实现人发生改变, 这时就需要动态工作流系统用其他人员来处理该节点。工作流的数据的修改是 指在过程实例的运行过程中,数据发生改变,动态工作流系统必须做出相应的 处理来保证程序的正常运行。为确保系统的稳定性,一般情况是不允许对该数 据进行操作的。 3 2 2 动态修改策略及扩展 按照动态修改的作用域不同,可以将其分成两类【l u : ( 1 ) 过程定义的动态修改,这种方法会在过程定义阶段,尽可能多的预见 到运行中遇到的各种动态需求,然后为其具体执行提供可以选择的情况。相当 于在工作流系统中另外增加新的流程定义; ( 2 ) 过程实例的动态修改,在实例运行的过程中,根据实际过程的改变, 动态工作流系统一般会采取以下三种修改策略【1 2 】:重新启动策略( p r o c c o d p o l i c y ) ,在该策略中,工作流管理系统将放弃所有已经运行的工作流实例,然后 按照新的流程定义重新启动流程实例,这种策略由于要丢弃已经运行的工作流 实例,会造成大量的数据丢失,因此代价十分昂贵;继续执行策略( r e s t a r t p o l i c y ) ,该策略对正在运行的流程实例不进行任何处理,而后面的新创建的流程 实例必须按照新的流程定义执行,这种策略对实际中过程变化的反应较慢,缺 少灵活性。转换策略( t r a n s f e rp o l i c y ) ,该策略将正在运行的过程实例转换成按 照新的流程定义执行下去,该策略能够及时的对实际变化作出反应。 通过进一步的研究,本文在原有策略的基础上做出扩展,提出了一种新的 转换策略,将流程按照版本分类,同一类的工作流程经过动态修改或者其他的 操作后生成不同的版本,每个版本都有一个流程版本号,用v c r s o nn 来表示一 1 4 武汉理工大学硕士学位论文 个类型的工作流程,其中n 就是它的版本数。将一个原有的工作流记为v e r s o n1 , 在流程的挂起出处,对流程进行动态修改后的版本记为v e r s o n2 ,如果流程还没 有执行,按照v e r s o n2 继续执行;如果开始执行,在执行过的节点按照v e r s o n1 执行,取消挂起后的流程按v e r s o n2 执行;如果执行结束,就按照已经执行的 v e r s o nl 执行,不再另外做任何处理。 3 2 3 动态修改的基本操作 一般来说,在一个工作流系统中,会存在控制流、数据流等多种流。其中 数据流中主要包含流程中每一步所要处理的数据信息,控制流中包含的则是每 一个流程步骤中所必须的控制信息。控制流的具体形式有三种【l3 】:以角色控制 为主的角色流、以消息传递为主的消息流和以状态传递为主的状态流。 在整个系统中,控制流决定着每个流程的走向。所以,当其中所包含的信 息发生改变时,则整个工作流程也将随之而改变。如图3 - 4 是节点属性的动态性 图。 图3 _ 4 节点属性的动态性图 通过图3 - 4 可以看出,在不同的工作流系统中,可以通过修改节点的属性从 而来修改角色流、消息流和状态流的定义来动态的修改和调节整个工作流流程。 但是,不论在是在哪种工作流系统中,都是通过对流程中的各个节点所包含的 属性值进行定义和修改来实现流程的动态变化。 本文也是通过修改节点的属性来实现系统中流程的动态变化,本系统的动 态修改主要有

温馨提示

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

评论

0/150

提交评论