(计算机应用技术专业论文)迁移工作流系统中位置服务的设计与实现的研究.pdf_第1页
(计算机应用技术专业论文)迁移工作流系统中位置服务的设计与实现的研究.pdf_第2页
(计算机应用技术专业论文)迁移工作流系统中位置服务的设计与实现的研究.pdf_第3页
(计算机应用技术专业论文)迁移工作流系统中位置服务的设计与实现的研究.pdf_第4页
(计算机应用技术专业论文)迁移工作流系统中位置服务的设计与实现的研究.pdf_第5页
已阅读5页,还剩68页未读 继续免费阅读

(计算机应用技术专业论文)迁移工作流系统中位置服务的设计与实现的研究.pdf.pdf 免费下载

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

文档简介

山东大学硕士学位论文 摘要 迁移工作流是近年来工作流管理研究的一个新方向,并且被解释为运行期间 在工作位置上合并静态工作流说明、本地规则和策略、以及用户策略的效应。迁 移工作流管理系统的三要素是迁移工作流管理引擎、迁移实例和工作位置。工作 流管理引擎完成工作流定义、迁移实例生成和多迁移实例协调等。工作位置指停 靠站服务器及其关联的工作机网络。其中,停靠站服务器是迁移实例的运行场所, 工作机网络提供迁移实例工作流服务。多个迁移实例在停靠站服务器的支持下通 过迁移和协作实现总的业务目标。 由于在迁移工作流系统中,工作流服务由分布在不同地点的、异构的工作位 置提供给携带任务说明书的迁移实例,因此,迁移工作流服务不同于传统的工作 流系统中的工作流执行服务。首先各工作位置本身就是一个异构的分布式环境, 各工作位置是否能有效地组织和调度工作流服务将直接影响着工作流系统的性 能和可靠性。其次,需要在迁移实例和负责提供工作流服务的各工作位置之间保 持服务一致,以支持迁移路径的选择和任务说明书到工作流服务的扩展。 本文总结了迁移工作流管理系统中采用的服务策略,包括服务部署、服务提 供、服务发布、安全性和可靠性等,这些策略较好地支持了迁移工作流系统中工 作流服务的有效组织、管理和调度。然后设计了一种动态的服务提供和发现的策 略,描述了服务查询的机制,并说明了任务、服务、子服务和工作位置之间的关 系,解决了在系统运行过程中动态地改变服务和服务相关参数的问题。 根据服务的特点,本文对服务进行了分类,将固定的、不针对特定m i 的服务, 如迁入迁出服务、通信服务、安全服务、日志服务等称之为迁移实例服务,将 相对易变的、需要查询才能得知的、针对某个具体业务应用的服务称之为工作流 服务。根据m i 是否显式地调用服务,可以把服务分为非透明服务和透明服务。 在实现中我们通过工作流服务支持模块( w s s m ) 来提供服务,并且本文设计了两 种不同工作模式的工作流服务支持模块,即同步调用的工作流服务支持模块和异 步调用的工作流服务支持模块,并根据实验数据比较了两种实现方式的优缺点。 再后讨论了停靠站服务器与其工作机网络提供本地工作流的策略。基于迁移 工作流系统框架,工作机网络中的应用服务器为m i 执行业务过程的主体,工作 流参与者通过工作机的浏览器与应用服务器交互。通过在应用服务器上部署相关 山东大学硕士学位论文 业务过程组件,实现与停靠站服务器的交互。在实现中本文将开源的j b o s s 作为 应用服务器,并遵守j 2 e e 构架标准开发业务过程组件。参考s e s s i o nf a c a d e 设计模式,开发了一个称作s e r v i c e p r o x y b e a n 的无状态s e s s i o nb e a n ,为停靠 站服务器提供统一的调度界面,它屏蔽了工作机网络中应用系统的业务逻辑层的 复杂性。 本文以一个购书流程为例,实现了服务查询、服务管理,然后根据实验数据, 比较了同步调用的和异步调用的工作流服务支持模块的优缺点。最后通过一个一 级审批流的例子说明了如何在停靠站服务器及其工作机网络上实现本地工作流。 关键字;迁移工作流;位置服务;服务策略;工作流服务支持模块; ll f 东大学硕士学位论文 a b s t r a c t m i g r a t i n gw o r k f l o wi san e wt e c h n o l o g ya p p l y i n gm o b i l ec o m p u t i n gt o w o r k f l o wm a n a g e m e n t ,w h i c hi se x p l a i n e da sam e c h a n i s mc o m b i n i n gs t a t i c w o r k f l o ws p e c i f i c a t i o nw i t hl o c a ls t r a t e g ya n du s e rs t r a t e g ya tr u n t i m e t h r e ee s s e n t i a lf a c t o r so fam i g r a t i n gw o r k f l o ws y s t e mi n c l u d em i g r a t i n g w o r k f l o wm a n a g e m e n te n g i n e ,m i g r a t i n gi n s t a n c ea n dw o r k p l a c e t h e m a n a g e m e n te n g i n ei si nc h a r g e o fw o r k f l o wp r o c e d u r ed e f i n i t i o n , m i g r a t i n gi n s t a n c e sg e n e r a t i o na n dt h ec o o r d i n a t i o no fm a n ym i g r a t i n g i n s t a n c e s t h ew o r k p l a c er e f e r st ot h em is e r v e ra n dw o r k - m a c h i n en e t w o r k , w h i l et h em is e r v e ri st h ee x e c u t i n gp l a c eo fm i g r a t i n gi n s t a n c e ,a n d w o r k - m a c h i n e p r o v i d e s w o r k f l o w s e r v i c e st om i g r a ti n gi n s t a n c e s a m i g r a t i n gi n s t a n c ea c c e s s e sw o r k f l o ws e r v i c e st h r o u g hm is e r v e rb ym e a n s o fo b j e c tr e f e r e n c e m i g r a t i n gi n s t a n c e sc o m p l e t et h ew h o l eb u s i n e s sg o a l b ym i g r a t i n ga n dc o o p e r a t i o nw i t ht h es u p p o r to fm is e r v e r i nam i g r a t i n gw o r k f l o ws y s t e m ,w o r k f l o ws e r v i c e sa r ep r o v i d e db yt h e w o r k p l a c e sw i t hd i f f e r e n ts t r u c t u r e s s ot h em i g r a t i n gw o r k f l o ws e r v i c e i sd i f f e r e n tf r o mt h ew o r k f l o we x e c u t i n gs e r v i c ei nt r a d i t i o n a lw o r k f l o w s y s t e m s i th a si t so w nc h a r a c t e r i s t i c f i r s t l y ,t h ew o r k p l a c ei sa d i s t r i b u t e de n v i r o n m e n tw i t hd i f f e r e n ts t r u c t u r e s h o wt oo r g a n i z ea n d u s ew o r k f l o ws e r v i c e si si m p o r t a n ti nt h ew o r k p l a c eb e c a u s ei ti m p a c t s t h ee x e c u t i n ge f f i c i e n c ya n dt h er e l i a b i l i t yo ft h ew o r k f l o we x e c u t i n g s e r v i c e s e c o n d l y ,t h ew o r k f l o w s e r v i c e so f s e m a n t i ca f f i n i t yf o r m i g r a t i n gi n s t a n c e sa n dw o r k p l a c e s i sn e e d e di nf a v o ro fm a k i n gt h e m i g r a t i n gd e c i s i o na n dr e a l i z i n gt h em a p p i n gf r o mt h et a s ks p e c i f i c a t i o n t ot h ew o r k f l o ws e r v i c e t h ep a p e rs u m m a r i z e dt h ea c t u a ls e r v i c es t r a t e g i e si nt h ew o r k f l o w m a n a g e m e n ts y s t e m , i n c l u d i n gt h es e r v i c ed e p l o y m e n t ,p r o v i d i n g , p u b l i c a t i o na n ds e c u r i t y t h e s es t r a t e g i e sc o u l dh e l pt h ew o r k p l a c et o o r g a n i z e ,m a n a g ea n du s et h ew o r k f l o ws e r v i c e se f f e c t i v e l y ad y n a m i c s e r v i c es u p p l y i n ga n dq u e r y i n gs t r a t e g yw a sp r o p o s e dt od e s c r i b eh o wt o q u e r ys e r v i c e s ,a n dt h er e l a t i o n s h i p b e t w e e nt a s k s ,s e r v i c e s ,s u b s e r v i c e sa n dw o r k p l a c e s t h i ss t r a t e g ys o l v e dh o wt oc h a n g ei n p u t o u t p u t 山东大学硕士学位论文 p a r a m e t e r so fs e r v i c e sd y n a m i c a l l ya tr u n t i m e b a s e do nt h ec h a r a c t e r i s t i co fs e r v i c e s ,s o m es t a b l e ,c o m m o ns e r v i c e s w e r ec l a s s i f i e da sm is e r v i c e ,s u c ha sm i g r a t i n gi n o u ts e r v i c e , c o m m u n i c a t i n gs e r v i c e ,l o g g i n gs e r v i c ea n ds oo n :s o m es p e c i a ls e r v i c e s w e r ec l a s s i f i e da sw o r k f l o ws e r v i c e ,w h i c hw a sr e l a t e dt oab u s i n e s s a p p l i c a t i o na n dm u s tb eq u e r i e dt of i n do u ti t sd e t a i l s a c c o r d i n gt o w h e t h e rm is h o u l dr e q u e s tt h es e r v i c e so ni t so w ni n i t i a t i v e ,t h ep a p e r c l a s s i f i e dt h es e r v i c e si n t ot r a n s p a r e n ts e r v i c e sa n dn o n + t r a n s p a r e n t s e r v i c e s i nt h ei m p l e m e n t a t i o n ,t h ew o r k f l o ws e r v i c es u p p o r t i n gm o d u l e ( w s s mf o rs h o r t ) p r o v i d e ds e r v i c e st om is e r v e r ,a n dw ed e s i g n e dt w ot y p e s o f w s s m s ,s y n c h r o n o u s l yc a l l i n g w o r k f l o w s e r v i c e m o d u l ea n d a s y n c h r o n o u s l y c a lli n gw o r k f l o ws e r v i c em o d u l e a c c o r d i n g t ot h e e x p e r i m e n tr e s u l t ,t h ep a p e rc o m p a r e dt h e s et w om o d u l e s t h e nw ed i s c u s s e dt h em is e r v e ra n di t sw o r k - m a c h i n en e t w o r kh o wt o p r o v i d el o c a lw o r k f l o w s a c c o r d i n gt ot h em i g r a t i n gw o r k f l o ws y s t e m f r a m e w o r k ,t h ea p p li c a t i o ns e r v e ri nt h ew o r k - m a c h i n en e t w o r k ,w h i c hw a s i n d e p e n d e n tt ot h em is e r v e r ,w a st h es e r v i c ee x e c u t o r ,a n daw o r k f l o w p a r t i c i p a n tc o u l dc o n n e c tt ot h ea p p l i c a t i o ns e r v e rw i t hab r o w s e ro na w o r k - m a c h i n e w ed e p l o y e ds o m eb u s i n e s sp r o c e s sm o d u l e so na na p p l i c a t i o n s e r v e rf o rt h em is e r v e rt ou s e i nt h ea p p l i c a t i o n ,w eu s e dt h ej b o s s a p p l i c a t i o ns e r v e r ,a no p e ns o u r c es e r v e r ,a st h ea p p l i c a t i o ns e r v e r a c c o r d i n gt ot h es e s s i o nf a c a d ed e s i g np a t t e r n ,w ed e v e l o p e das t a t e l e s s s e s s i o nb e a nn a m e ds e r v i c e p r o x y b e a n ,w h i c hp r o v i d e dau n i f o r mi n t e r f a c e a n ds h i e l d e dt h ec o m p l e x i t yo ft h eb u s i n e s sl a y e rf o rm is e r v e r w et o o kab o o ko r d e r i n gp r o c e s sf o re x a m p l e ,i m p l e m e n t i n gt h es e r v i c e q u e r y i n ga n dm a n a g e m e n t a c c o r d i n gt ot h ee x p e r i m e n tr e s u l t ,w ec o m p a r e d t h es y n c h r o n o u s l yc a l l i n gw o r k f l o ws e r v i c es u p p o r t i n g m o d u l ea n d a s y n c h r o n o u s l yc a l l i n gw o r k f l o ws e r v i c es u p p o r t i n gm o d u l e f i n a l l yw e s h o w e dh o wt h em is e r v e ra n di t sw o r k - m a c h i n en e t w o r kp r o v i d e dal o c a l w o r k f l o wb yac l a s so n ee x a m i n i n ga n da p p r o v i n gp r o c e s s k e yw o r d s :m ig r a tin gw o r k fio w ;w o r k pia c es e r vic e :s e r vic os t r a t e g y :w s s m 原创性声明和关于学位论文使用授权的说明 原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独立 进行研究所取得的成果。除文中已经注明引用的内容外,本论文不包含 任何其他个人或集体已经发表或撰写过的科研成果。对本文的研究做出 重要贡献的个人和集体,均已在文中以明确方式标明。本声明的法律责 任由本人承担。 论文作者签名:毖殖日期:鲨鱼:士:! 三 关于学位论文使用授权的声明 本人完全了解山东大学有关保留、使用学位论文的规定,同意学校 保留或向国家有关部门或机构送交论文的复印件和电子版,允许论文被 查阅和借阅;本人授权山东大学可以将本学位论文的全部或部分内容编 入有关数据库进行检索,可以采用影印、缩印或其他复制手段保存论文 和汇编本学位论文。 ( 保密论文在解密后应遵守此规 论文作者签名:越导师签名: 日期:沙面牛i 日 期:丝:! :! :1 2 山东大学硕士学位论文 1 1 课题的背景及意义 第1 章绪论 1 1 1 迁移工作流技术的概况和发展 工作流技术是实现企业业务过程重组、过程管理与过程自动化的核心技术n 1 , 它可以有效地把企业中的人、信息和应用合理地组织在一起,从而高效地实现时 间、质量、成本和服务的要求。工作流管理系统( w f m s ) 则是通过软件定义、创 建、管理和执行工作流系统。近年来,工作流管理系统已经广泛地应用于企业管 理和计算机应用的各个方面,管理的目标也从小组、部门、企业扩大到了跨地域 的企业集团。但在应用领域和范围扩大的同时,也带来了对工作流管理的新的要 求叫。 迁移工作流( m i g r a t i n gw o r k f l o w ) 是近年来工作流管理研究的一个新方向 踟。在现代企业中,由于工作流管理的跨地域性、计算机系统间的异构性以及工 作流本身的异步性等特点,工作流管理系统多具有分布、异构、异步等特点。迁 移工作流技术将移动计算机的基本思想和技术引入到工作流管理,指定移动代理 ( 移动a g e n t ) 完成工作流中的活动,工作流的执行演变为多个移动a g e n t 之间 的集散式协同工作过程,并且利用移动a g e n t 本身所具有的自主性和移动性等特 性可促进、改善工作流的管理和执行,能够使得工作流系统更加符合其分布、并 行、异步的本质,从而大大增强工作流系统的能力。 在c i c h o c k i 等提出的迁移工作流模型j 1 中,执行某个活动的移动a g e n t 称 作迁移实例( m i g r a t i n gi n s t a n c e ) ,并且被解释为运行期间在工作位置上合并 静态工作流说明、本地规则和策略以及用户决策的效应。迁移实例可以在某个工 作位置上利用本地资源执行一项或多项任务。当迁移实例发现当前工作位置不能 满足其任务需求时,迁移到下一个能满足其需求的工作位置上继续执行,下一个 工作位置的选择决定于过程目标及当前任务的要求。这就利用了迁移实例的自主 性和移动性。若一个业务过程中包含多个并行的活动,则对于不同的活动,不同 的迁移实例可以在不同的工作位置上生成并首先在该工作位置上运行。这就利用 了多个迁移实例之间的并行性,大大地提高了工作流系统适应动态环境的灵活 性。 山东大学硕士学位论文 文献 5 在c i c h o c k i 等人的基础上给出了迁移工作流模型的清晰定义,提出 了一个包括工作位置、迁移实例和迁移工作流管理引擎三要素的迁移工作流管理 系统框架结构并讨论了停靠站结构、迁移实例结构、迁移域组织和管理、迁移寻 址等关键技术。其中,迁移工作流管理引擎按照工作流的过程定义创建迁移实例, 为其分派任务,并将其派遣到裙工作位置上启动执行。工作位置是迁移实例的执 行场所,它包括停靠站服务器及它所关联的工作机网络停靠站服务器为迁移实例 提供执行环境,工作机网络中的应用服务器上的服务组件提供工作流服务,由停 靠站服务器负责调度和访问工作机网络的服务资源。文献 6 在此框架的基础上, 实现了一个迁移工作流系统原形,给出了原形系统设计、实现、部署、运行以及 使用的主要算法。 1 。1 2 课题的意义 工作流执行服务是工作流管理系统的核心h 1 。在采用工作流管理系统支持经 营过程的企业中,工作流执行服务可以看成是企业的业务操作系统,企业的业务 过程在它的管理、监控和调度下运行,工作流执行服务系统的性能和可靠性就直 接决定了企业经营过程的效率。在传统工作流管理系统中,工作流执行服务由工 作流机( 又称作工作流引擎,英文名为w o r k f l o we n g i n e ) 负责。它解释过程定 义并完成工作流过程实例的创建、执行与管理,为工作流程的运行提供一个运行 时环境。在迁移工作流系统中,工作流实例在运行期间创建,并根据迁移实例携 带的显式的或直觉化的业务过程说明在实例执行期间通过调用站点服务进行扩 展。因此,各工作位置如何组织和调度工作流服务等服务机制直接影响着工作流 执行服务的性能和可靠性。 在迁移工作流系统中,迁移实例根据其携带的业务过程说明( 称作任务说明 书) 迁移到某个满足其任务要求工作位置上,并利用本地资源执行一项或多项任 务。若迁移实例能准确理解各工作位置提供的工作流服务,将有助于迁移路径的 选择和任务说明到工作流服务的扩展,提高执行效率。为此,如何在迁移实例和 负责组织、提供工作流服务的各站点之间保持服务语义一致,成为了工作流服务 表示和组织形式中一个重要问题。文献 3 引入一个独立的b r o k e r 来发布所有 站点及其对外提供的服务,迁移实例在运行时采用按名查找服务的策略,从 b r o k e r 那里获得目标站点并执行迁移;文献 5 通过工作流管理机来支持迁移实 例对服务站点的发现;a u t o p i l o t 通过分层的工作流服务代理( w s b ) 支持移动 2 山东大学硕士学位论文 a g e n t 对服务站点的选择1 ,v o y a g e r 通过服务代理( s e r v i c eb r o k e r ) 支持移 动a g e n t 对服务站点的查询3 。上述方法虽然都支持迁移实例发现目标站点,但 并没有解决服务语义一致的问题,迁移实例和各站点间缺乏共享语义,不利于将 任务说明扩展到相应的服务。 鉴于以上几点,本课题针对迁移工作流服务的特点对系统中的工作流服务机 制进行了研究。参照国际工作流联盟的定义n 们的思想,提出了一种动态的服务提 供和发现的策略,设计并实现了两种不同工作模式的工作流服务支持模块,并提 出在工作机网络中采用标准的企业级平台( 如j 2 e e ) ,而不再采用传统的分布式 对象标准,来提供本地工作流。 1 2 本文的研究工作 1 本文描述了工作流技术中的基本概念,并对现有的工作流管理系统及其服 务机制进行研究,分析了工作流技术的现状及其发展趋势。 2 介绍了本课题的研究背景之一:一种基于移动计算范型的迁移工作流系统 概念模型。描述了迁移工作流的定义,给出了迁移工作流管理系统框架,并阐述 了其中的工作流引擎、停靠站服务器和迁移实例的体系结构。此外,总结了迁移 工作流服务的特点。 3 总结了现有的工作流服务策略,包括服务组织策略和常用的服务发现机 制。总结了工作流管理系统的优点。 1 3 本文的创新点 本课题在迁移工作流系统的概念模型和系统原型的基础上,对迁移工作流系 统中各工作位置服务机制进行了研究,提出了适用于迁移工作流管理系统的服务 模型。本文的创新点包括: 1 设计了一种动态的服务提供和发现的策略,描述了管理引擎服务查询的机 制,并说明了任务、服务、子服务和工作位置之间的关系,解决了在系统运行过 程中动态地改变服务或服务相关参数的问题。 2 基于服务的分类,设计了两种不同工作模式的工作流服务支持模块,即同 步调用的工作流服务支持模块和异步调用的工作流服务支持模块,增强了位置服 务的可扩展性,并根据实验数据比较了两种实现方式的优缺点。 3 山东大学硕士学位论文 3 工作机网络不再是一个传统的分布式计算环境一诸工作机之间通过分 布式对象标准( 如c o r b a 或d c o m ) 耦合在一起,而是在工作机网络中布署一个可 移植的、多用户的、安全的和基于标准的企业级平台,如j 2 e e 框架。这样,提 供工作流服务的不再是工作机,而是网络中的应用服务器。这不仅简化了工作机 网络中应用系统的开发、管理和部署,同时提高了停靠站服务器与工作机网络交 互的效率。 1 4 本文的组织 本文具体的组织结构如下: 第一章绪论介绍了论文的研究背景及意义,说明了论文所作的主要工作、 创新和论文的组织结构。 第二章迁移工作流基础首先介绍了工作流技术,描述了工作流技术中的基 本概念,并对现有的工作流管理系统及其服务机制进行研究,分析了工作流技术 的现状及其发展趋势。然后又介绍了移动a g e n t 技术,描述了它的基本概念和系 统组成。 第三章迁移工作流系统的概念模型及其服务策略首先介绍了一种基于移 动计算范型的迁移工作流概念模型,描述了迁移工作流的定义,给出了迁移工作 流管理系统框架,并阐述了其中的工作流引擎、停靠站服务器和迁移实例的体系 结构。然后总结了现有的工作流服务策略,包括服务组织策略、常用的服务发现 机制等,为迁移工作流服务的组织、部署、提供、服务信息的发布以及服务的安 全性等问题制定相应的策略,并对服务进行了分类,最后总结了工作流服务的特 点。 第四章迁移工作流系统中位置服务的设计首先给出了m is e r v e r 的体系结 构,然后在此基础上设计了两种工作流服务支持模块,并分析了各自的优缺点。 然后阐述了一种服务查询和管理的机制,解决了在系统运行过程中动态地改变服 务或服务相关参数的问题,最后给出了在工作机网络中业务过程组件的设计。 第五章迁移工作流系统中位置服务的实现本章针对第四章提出的服务组 件和相关组件的设计进行了具体的实现,并根据实验数据证明了设计的正确性。 第六章结束语总结了本论文所做的工作和研究成果,并提出了有待于进一 步完善的环节和以后研究的重点。 4 山东大学硕士学位论文 2 1 工作流技术基础 第2 章迁移工作流基础 2 1 1 工作流的基本概念 ( 一) 工作流 工作流管理联盟( 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 ) 是工作流 技术的标准化组织,w f m c 为工作流提供的定义是 1 1 : 定义2 1 1 1 工作流( w o r k f l o w ) 工作流是一类能够完全或者部分自动执行 的经营过程,它根据一系列过程规则,文档、信息或任务能够在不同的执行者之 间传递与执行。以上定义首先强调的是工作流是一个经营过程。其次,工作流是 能够全部或部分自动执行的经营过程。因此,工作流技术属于计算机应用技术, 它的主要目标是使用计算机代替人完成部分机械化的工作,并且更有效率、更准 确。换一种说法,工作流所要解决的主要问题是使在多个参与者之间按照某种预 定义的规则传递文档、信息或任务的过程自动进行,从而实现某个预期的业务目 标,或者是促使此目标的实现。要理解工作流,首先要理解经营过程。经营过程 的一个定义是: 定义2 1 1 2 经营过程一个经营过程是为了实现企业某个经营目标的一 个过程,它在部分或者全部组织机构和人员的参与下,利用企业资源( 包括所需 的处理设备、通信设备、计算机硬件、软件等等) ,按照预先确定的规则,在参 与者和组织机构之间进行文档、信息、任务的传递和处理( 包括经营决策) ,从 而实现规定的经营目标。 经营过程所包含的几个主要问题是: 1 ) 经营过程的目标是什么? 2 ) 经营过程分为哪些任务和步骤? 3 ) 参与角色? 4 ) 采用什么方式完成经营过程? 工作流定义的另一个主要方面是经营过程的全部或部分自动执行。这说明了 工作流所关注的经营过程与一般的经营过程的主要区别。经营过程能够自动执行 是使其自动化的一个必要条件,在当前的条件下,计算机技术是能够达到经营过 5 山东大学硕士学位论文 程自动化的主要手段。因此,要做到经营过程的自动执行,就必须首先要准确描 述经营过程,由此得到工作流模型。描述完的工作流模型交由计算机系统自动执 行,由此得到工作流管理系统的概念。 ( 二) 工作流管理系统 定义2 1 1 3 工作流管理系统( 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 s ) 工作流管理系统是通过运行在工作流引擎上的软件来定义、创建和管理工作流执 行的系统,而工作流引擎则可以解释过程定义、同工作流参与者交互,并且必要 时能够调用信息处理工具和应用程序。 工作流管理系统将现实世界中的业务过程转化成某种计算机化的形式表示, 并在此形式表示的驱动下完成工作流的执行和管理。工作流管理系统一般包括以 下三个主要功能: 1 ) 构建阶段的功能:对工作流过程以及组成它的活动进行定义和建模。 2 ) 运行阶段的控制功能:对工作流运行进行管理,以及对每个工作流过程 中的活动进行排序。 3 ) 运行阶段与用户和i t 应用工具之间的交互作用。 ( 三) 工作流引擎 工作流引擎( w f e ) 是为工作流实例提供运行时期的执行环境的软件服务器或 引擎。它是工作流执行服务的核心,一个工作流引擎负责执行服务器中的部分( 或 者全部) 运行控制环境。从提供的功能上看,它主要完成以下任务: 解释过程定义 控制过程实例:创建、激活、挂起、终止等 为过程的活动导航,可能要包含顺序或者平行的操作、最后时间期限、 对工作流相关数据进行解释 参与者签名和退出 确定任务项目,实现用户意图;提供接口,支持用户交互 维护工作流控制数据和工作流相关数据,在应用程序间或者用户间传递 工作流相关数据 提供调用外部程序的接口,连接所有工作流相关数据 提供控制、管理和审查功能 在一个由多个工作流引擎构成的工作流执行服务器中,要把过程进行划分, 分配给工作流引擎。 ( 四) 工作流执行服务 6 山东大学硕士学位论文 由一个或多个工作流引擎构成的软件服务器,用来创建、管理、执行工作流 实例,为过程实例和活动提供运行环境,负责解释和激活过程定义,与过程所需 的外部资源进行交互。工作流执行服务是工作流管理系统的核心,主要完成以下 功能: 实例化及执行过程模型 为过程和活动的执行进行导航 工作流执行服务必须处理以下三种类型的数据: ( 1 ) 工作流控制数据是由工作流管理系统或工作流引擎管理的内部数据。 工作流执行服务器维护内部控制数据,来确定过程实例或活动实例的状态,并支 持其他内部状态信息。工作流执行服务工作流引擎通过内部的工作流控制数据 来辨别每个过程和活动实例的状态。 ( 2 ) 工作流相关数据是工作流管理系统用来判断过程中状态转移是否可以 执行的数据。工作流管理系统使用工作流相关数据来判断转移条件是否满足,并 选择下一个要执行的活动。这些数据能被工作流应用程序访问,这些数据也需要 通过工作流执行软件在活动间传递。 ( 3 ) 工作流应用数据是由应用程序操作的具体数据,只与应用程序或者用 户任务的执行相关。是企业完成具体的业务功能所需要的数据,工作流管理系统 无法也不需要对它们进行访问。 2 1 2 工作流过程建模 工作流模型( 也称作是过程定义) 是业务过程的计算机化的形式表示。它定义 的是过程运行中会涉及到的各种参数,如业务过程的开始和终止条件、各个工作 环节及相互之间的控制流动与数据流动关系等。目前主要的过程建模方法有 p e t r in e t 羽h 引、e p c ( e v e n t - d r i v e np r o c e s sc h a i n ) 、a c t i v i t yd i a g r a m 、有限 状态机f s m 、x p d l 元模型等,每种模型定义了几种基本的模型元素来表示流程的 内容和状态,如图2 - 1 所示。 7 l i j 东大学硕士学位论文 过程建模方法基本模型元素表示状态的对象 p e t r l 网 p l a c e ,t r a n s i t i o n t o k e n e p c e v e n t , f u n c t i o n ,c o n n e c t o r s e v e n t a o t i v i t yd i a g r a m s t a t e ,d e c i s i o n s t a t e f s m s t a t e , a c t i o ns t a t e x p d l 元模型 a c t i v i t y ,t r a n s i t i o n 图2 - 1 几种常见的工作流过程建模方法 工作流元模型包含了工作流定义、活动、转换条件、工作流相关数据、执行 者、资源、应用程序、数据窗口等基本实体m 1 ,如图2 2 所示, 工作流定义 h 符皇l 。 仉1 冲 由组成 l 活动i :作流柏火数据i 资源 枷,白樟h 1 转换条什 d a t aw i n d o w 应用程序 幽2 - 2i :作流元模霉! 其中,各基本实体的解释如下, 工作流定义基本反映了业务过程的目的,即这个过程要实现的目的和最终 达到的目标是什么。工作流定义一般包含诸如工作流名称、过程启动和终止 条件、系统安全、监控和控制信息等一系列基本属性。 活动相应于业务过程中的任务,主要反映完成业务过程需要执行那些功能 操作。活动主要属性有活动名称、活动类型( 原子级活动、子流程等) 、活 动的前后条件、调度约束参数( 如最长处理时间、排队等待时间等) 等。活 动节点的实现类型有五种,分别为:t o o l 活动、子流程活动、块活动、无实 现活动、路由活动: 1 ) 当一个活动的实现类型是“t o o l 类型 时,活动可包含一个或者多个应用 程序,当为活动增加应用程序时,需要指明对应此应用程序的形参的输入参数, 即实参集,实参可以从活动的所包含的相关数据中取。 8 山东大学硕士学位论文 2 ) 当一个活动的实现类型是“子流程类型”时,活动可以引用其它的流程定 义。同应用程序的定义相同,也需要定义对应此流程的形参的实参集,实参可以 从活动的所包含的相关数据中取。此外,还需要指明流程的执行方式( 同步还是 异步) 。在同步执行的情况下,在子流程实例被初始化后,活动将被挂起。在这 个流程实例运行终止后,活动被恢复。在异步执行的情况下,活动的执行持续到 子流程的过程实例初始化后。在子流程完成时,在调用与被调用流程间可能要使 用返回参数。 3 ) 当一个活动的实现类型是“块活动类型”时,此活动可以引用一个活动 集。和子流程实现不同的是,不必为块活动定义实参集,执行方式等。 4 ) 当实现类型是“无实现类型”时,需要手工来控制工作流活动,并且其实 现必须使用明确的信号通知工作流管理系统。 5 ) 路由活动( 虚活动) 既没有执行者,也没有应用程序。并且路由活动的运行 对流程相关数据,或者应用程序数据没有任何影响。 转换条件对应于组织机构经营过程中的业务规则和操作的顺序,如在订单 处理完成后,执行生成计划制定。转换条件主要负责为过程实例的推进提供 导航依据,主要参数包括工作流过程条件( f l o wc o n d i t i o n ) 和执行条件 ( e x e c u t i o nc o n d i t i o n ) 。工作流过程条件是过程实例向前推进的条件,它 可以认为是前后工作条件的同义词。执行条件是指当任务到达时通知不同 用户的条件。 工作流相关数据是工作流引擎执行任务推进的主要依据。工作流实例运行时 工作流引擎主要根据工作流相关数据和转换条件进行推进。工作流相关数据 的属性包括数据名称、数据类型和数据值等。如在银行贷款申请表处理后, 根据申请贷款的值( 如是否大于1 0 万元) 决定下一个的活动是什么,比如大 于1 0 万的申请请交业务经理,小于1 0 万的申请交给业务人员处理。 执行者主要描述执行活动过程中参与操作的人员和组织单位。执行者属性 主要包括角色的名称、组织实体( o r g a n i z a t i o n a le n t i t y ) 、角色职能等, 角色或组织实体决定了参与活动的人员或组织单元。 资源主要描述执行活动过程中所需要的设备、物料等资源。资源属性主要 包括资源的名称、所需数量或工时、资源的使用成本等。 需要激活的应用程序主要描述执行活动过程所采用的工具或手段。应用程 序主要属性包括应用程序的类型、名称、执行路径及运行参数等。如在活动 过程中调用e r p 软件或决策软件完成某个具体的企业业务功能。 9 山东大学硕士学位论文 数据窗口( d a t a w i n d o w ) 在每一个活动中可能包含一个或多个数据窗口, 用于显示用户所需要的信息。 2 1 3 工作流引擎的核心调度算法 建模方法影响到工作流引擎内核的流程调度和执行推进机制。如p e t r in e t 的调度算法描述为:任何一次t o k e n 的转移,都会引起对整个流程( 在p e t r in e t 中叫c a s e ) 的重新使能( e n a b l e ) 遍历。 以下是几个典型的开源工作流引擎流程调度算法印阳: 1 ) o b e 和s h a r k 的循环遍历 o b e 全称是o p e nb u s i n e s se n g i n e ,是最早支持x p d l 的一款开源工作流引 擎。o b e 引擎的所有调度规则依据于一个w o r k f l o w r u n n e r 类的r u n 方法,采用 循环遍历的方法:在初始化任何一个活动实例后,将这个活动实例放入堆栈 _ a c t i v i t y s t a c k 中,然后调用w o r k f l o w r u n n e r 的r u n 方法,在r u n 方法中遍历 _ a c t i v i t y s t a c k 的活动实例运行。流程的开始,活动的开始和完成,任务的执 行都会激发r u n 的运行。 s h a r k 的内部调度机制与o b e 类似,不过o b e 是遍历待激活的活动实例向前 推进,s h a r k 是遍历已经完成的活动实例然后向前推进。 2 ) o s w o r k f l o w 的“可嵌入式状态机 式推进 o s w o r k f l o w 的过程建模模型是有限状态机f s m 。o s w o r k f l o w 的流程推进机制 以动作( a c t i o n ) 为驱动,从狭义上说,o s w o r k f l o w 不能称之为调度,或者应该 说是一个执行机制:执行某一个a c t i o n ,并将状态从a 转化为b ,这个状态的转 变,可能是从一个s t e p 的某一个s t a t u s 变为另一s t a t u s ,或者从一个s t e p 的 某一个s t a t u s 变为另一个s t e p 的某一个s t a t u s ( 对o s w o r k f l o w ,s t a t u s 表现 为s t e p + s t a t u s ) ,在这个状态变迁过程中,会执行一系列的f u n c t i o n 。 3 ) 采用a c t i v i t yd i a

温馨提示

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

评论

0/150

提交评论