




已阅读5页,还剩46页未读, 继续免费阅读
(计算机应用技术专业论文)基于工作流技术的web企业应用研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
华北电力大学硕士学位论文 摘要 当前,工作流技术已经成为企业信息化的一个热点,针对企业业务应用的开发离不开工 作流技术的支持。文中深入讨论了工作流模型、工作流建模理论和方法以及工作流引擎层次 结构,并详细地给出了工作流建模的具体实现方法。本文最后结合成功案例重点介绍了基于 工作流技术的w e b 企业应用的实现方法。实践证明,基于工作流技术的w e b 企业应用已经 成为企业信息化的一种先进手段。 关键诃:工作流,工作流建模,工作流引擎,w e b 企业应用 a b s t r a c t t o d a y , w o r k f l o wt e c h n o l o g yb e c o m e sah o t s p o ti ne n t e r p r i s ei n f o r m a t i o np r o c e s s i ta l s op l a y s a ni m p o r t a n tr o l ei nt h ed e v e l o p m e n to fe n t e r p r i s e b u s i n e s s a p p l i c a t i o n s t h i sp a p e rd e e p l y d i s c u s s e sf o l l o w i n gt o p i c s :w o r k f l o wr e f e r e n c em o d e l ,w o r k f l o wm o d e l i n gt h e o r ya n dw o r k f l o w e n g i n ef r a m e w o r k i ta l s og i v e sw o r k f l o w - m o d e l i n gm e t h o d si ng r e a td e t a i l i nt h ee n d ,t h i sp a p e r i n t r o d u c e sh o wt od e v e l o pw o r k f l o w - b a s e dw e be n t e r p r i s eb u s i n e s sa p p l i c a t i o nw i t has u c c e s s f u l b a s e i ts e e m st h a tw o r k f l o w b a s e dw e be n t e r p r i s eb u s i n e s sa p p l i c a t i o ni sa l la d v a n c e dm e t h o di n e n t e r p r i s ei n f o r m a t i o np r o c e s s w a n gg u op e i ( c o m p u t e rs c i e n c ea n dt e c h n o l o g y ) d i r e c t e db yp r o f l i nb iy i n g k e y w o r d s :w o r k f l o w ,w o r k f l o w m o d e l i n g ,w o r k f l o we n g i n e ,w e be n t e r p r i s ea p p l i c a t i o n 华北电力大学硕士学位论文 摘要 当前,工作流技术已经成为企业信息化的一个热点,针对企业业务应用的开发离不开工 作流技术的支持。文中深入讨论了工作流模型、工作流建模理论和方法以及工作流引擎层次 结构,并详细地给出了工作流建模的具体实现方法。本文最后结合成功案例重点介绍了基于 工作流技术的w e b 企业应用的实现方法。实践证明,基于工作流技术的w e b 企业应用已经 成为企业信息化的一种先进手段。 关键诃:工作流,工作流建模,工作流引擎,w e b 企业应用 a b s t r a c t t o d a y , w o r k f l o wt e c h n o l o g yt ) e c o m e sah o t s p o ti ne n t e r p r i s ei n f o r m a t i o np r o c e s s i ta l s op l a y s a ni m p o r t a n tr o l e i nt h ed e v e l o p m e n to fe n t e r p r i s e b u s i n e s s a p p l i c a t i o n s t h i sp a p e rd e e p l y d i s c u s s e sf o l l o w i n gt o p i c s :w o r k f l o wr e f e r e n c em o d e l ,w o r k f l o wm o d e l i n gt h e o r ya n dw o r k f l o w e n g i n ef r a m e w o r k i ta l s og i v e sw o r k f l o w - m o d e l i n gm e t h o d si ng r e a td e m i l i nt h ee n d ,t h i sp a p e r i n t r o d u c e sh o wt od e v e l o pw o r k f l o w - b a s e dw e be n t e r p r i s eb u s i n e s sa p p l i c a t i o nw i t has u c c e s s f u l b a s e i ts e e m st h a tw o r k f l o w b a s e dw e b e n t e r p r i s eb u s i n e s sa p p l i c a t i o ni sa l la d v a n c e dm e t h o di n e n t e r p r i s ei n f o r m a t i o np r o c e s s w a n gg u op e i ( c o m p u t e rs c i e n c ea n dt e c h n o l o g y ) d i r e c t e db yp r o f l i nb iy i n g k e y w o r d s :w o r k f l o w ,w o r k f l o w m o d e l i n g ,w o r k f l o we n g i n e ,w e be n t e r p r i s ea p p l i c a t i o n 声明 本人郑重声明:此处所提交的硕士学位论文基于工作流技术的w e b 企业应用研究, 是本人在华北电力大学攻读硕士学位期间,在导师指导下进行的研究工作和取得的研究成果。 据本人所知,除了文中特别加以标注和致谢之处外,论文中不包含其他人已经发表或撰写过 的研究成果,也不包含为获得华北电力大学或其他教育机构的学位或证书而使用过的材料。 与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了谢意。 学位论文作者签名:乏】宙土釜日期:! ! :! :! 竺 关于学位论文使用授权的说明 本人完全了解华北电力大学有关保留、使用学位论文的规定,即:学校有权保管、并 向有关部门送交学位论文的原件与复印件;学校可以采用影印、缩印或其它复制手段复制 并保存学位论文;学校可允许学位论文被查阅或借阅;学校可以学术交流为目的,复带赠 送和交换学位论文;同意学校可以用不同方式在不同媒体上发表、传播学位论文的全部或 部分内容。 ( 涉密的学位论文在解密后遵守此规定) 作者签名:继 日期:e5 :【匕 导师签名: 华北电力大学硕士学位论文 1 1 课题背景 第一章引言 基于工作流的w e b 企业应用代表了当前企业应用的一个研究热点和发展方向,它通过 对工作流的流程定义和运行期控制来解决企业应用中两方面的问题:业务流程的多样化和流 程的不确定性。 在企业应用中,工作流经常与过程重组( b u s i n e s s p r o c e s s r e e n g i n e r i n g ,b p r ) 相联系, 完成对一个组织( 或机构) 中核心经营过程的建模、评价分析和操作的实施。目前我国大多 数工业企业在自身的发展壮大中,都有企业业务流程更新或重组的需求。特别在电力企业工 程项目管理的过程中,由于涉及到很多申请、审批、物资采购流程等,这些流程在实际工作 时大量数据处于流动中,工作流程会由于政策等原因经常发生变化,如某类计划将改变其审 批流程,或增加一个部门进行审批;或由于某个环节不能处理流程,会导致整个任务无法按 时完成。所以系统设计时要求随时改变工作流程,包括改变流向、增加环节、减少环节、合 并环节等。采用传统菜单驱动的方式实现这些企业应用显然不能满足流程可变性的需要,于 是必须引进工作流技术,实现电力工程项目的灵活管理。 虽然并非所有的b p r 都需要采用工作流的方式实施,但是,工作流技术通常是实施b p r 的一个较好的方法,因为工作流提供了经营过程逻辑与其信息支撑系统的分离,并实现了应 用逻辑和过程逻辑的分离,这种方式在企业进行实际应用时具有显著的优点。它可以在不修 改具体功能模块实现方式的情况下,通过修改( 重新定义) 过程模型来改进系统功能,实现 对生产经营过程部分或全部的集成管理,有效地把人、信息和应用工具合理的组织在一起, 提高软件的重用率,发挥系统的最大效能。 对于引入工作流的企业应用,能够在软件开发和业务两个层次受益。 在软件开发过程中能够: ( 1 ) 方便开发:工作流管理系统能够简化企业级软件开发甚至维护。 ( 2 ) 降低开发风险:通过使用状态和动作这样的术语,业务分析师和开发人员使用同一种 语言交谈。这样开发人员就不必将用户需求转化成软件设计了。 ( 3 ) 、j k 务流程实现的集中统一:业务流程经常变化,使用工作流系统的最大好处是业务流 程的实现代码,不再是散落在各种各样的系统中。 ( 4 ) 力1 1 快应用开发:你的软件不用再关注流程的参与者,开发起来更快,代码更容易维护。 在业务流程管理上的改进如下: ( 1 ) 提高效率:许多流程在自动化过程中会去除一些不必要的步骤: ( 2 激好的流程控制:通过标准的工作方法和跟踪审计。提高了业务流程的管理: 些i ! 皂垄查堂堡主堂堡垒苎 ( 3 ) 改进客户服务:因为流程的一致性,提高了对客户响应的可预见性; ( 4 ) 灵活;跨越流程的软件控制,使流程可以按照业务的需要重新设计; ( 5 ) 业务流程改进:对流程的关注,使它们趋向于流畅和简单。 1 2 论文的主要工作和内容安排 基于工作流技术的企业应用,可以把业务过程逻辑从具体的业务实现中分离出来,可以 不修改具体功能实现而只修改过程模型来改变系统功能,从而实现对业务流程的部分或全部 过程的集成管理,提高软件的重用率,发挥系统的最大效能。 论文的主要工作是对工作流建模方法进行探讨和研究,提出一套基于工作流技术的w e b 企业应用开发方法,并应用于国电泰州项目管理门户系统项目。 论文共分四大部分。第一部分是第一章和第二章,对工作流技术进行简单的概述,重点 说明了工作流的参考及其实现模型。第二部分为第三章,重点讨论了工作流的建模方法。第 三部分,介绍了工作流执行服务器的原理。最后两章为第四部分,说明了工作流技术在w e b 企业应用的方法。 华北电力大学硕士学位论文 第二章工作流技术概述 2 1 工作流技术的来源与发展 工作流的概念起源于生产组织,提出的目的是通过将工作分解成良好的任务、角色,按 照一定的规则和过程来执行这些任务并对它们进行监控,达到提高工作效率、降低生产成本、 提高企业生产经营管理水平和企业竞争力的目标。在计算机网络技术和分布式数据库技术迅 速发展,多机协作同工作流技术日益成熟的基础上,与2 0 世纪8 0 年代中期发展起来的工作 流技术为企业更好的实现这些经营目标提供了先进的手段。工作流技术一出现马上就得到了 广泛的重视和研究。目前,工作流技术已经成功地应用在图书馆、医院、保险行业、银行等。 然而它更重要的应用还是在于工业领域,特别是制造领域。 1 9 9 3 年,工作流管理联盟( 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 在 工作流相关术语、结构体系、应用程序接口、管理控制接口、过程语言描述等方面制定了一 系列标准和规范。这些工作在很大程度上促进了工作流技术的发展和工作流管理系统在企业 中的应用。 目前,在全球范围内,对工作流技术研究的相关产品开发进入了更为繁荣的阶段,更多 更新的技术已经被集成进来,文件管理系统、数据库、电子邮件、i n t c m e t 服务等都被容纳到 工作流管理系统之中。工作流产品的市场每年以两位数字的速度迅速增长。作为支持企业经 营过程重组( b u s i n e s sp r o c g s sr e e n g i n e e r i n g ,b p r ) 、经营过程自动化( b u s i n e s sp r o c e s s a u t o m a t i o n ,b p a ) 的一种手段,工作流技术的研究应用日益受到学术界与企业界的广泛重 视。 2 。2 工作流定义 根据w f m c 的定义,工作流是全部或者部分,由计算机支持或自动处理的业务过程。 工作流干预过程、业务程序的自动化处理,文档、信息或者任务按照定义好的规则在参与者 之间传递,来完成整个业务目标或者对整个业务目标的完成做贡献。同时,工作流可以由手 工组织,实际上,多数工作流在r r 系统中进行组织,从而对过程自动化提供计算机支持。简 单的说,工作流就是一系列相互衔接、自动进行的业务活动或任务。 工作流是经营活动的一个计算机实现,而工作流管理系统则是这一实现的软件环境。使 用工作流作为经营活动的实现技术,首先要求工作流系统能够反映经营过程的以下几个问题, 即经营活动是什么( 由哪些活动、任务组成,也就是结构上的定义) 、怎么做( 活动间的执行 华北电力大学硕士学位论文 条件、规则以及所交互的信息,也就是控制流与信息流的定义) 、由谁来做( 人或计算机应用 程序,也就是组织角色的定义) 、做得怎样( 通过工作流管理系统对执行过程进行监控) 。图 2 1 给出了一个称为工作流伞的示意图,反映了工作流覆盖的经营过程范围与对应的工作流 研究领域。 2 3 工作流管理系统 图2 1 工作流伞 工作流管理联盟对工作流管理系统给出的定义是:一种能定义、创建和管理工作流执行 的系统。它可以通过一个或多个工作流引擎来运行,并能解释过程定义、与工作流参与者交 互,在需要时还要引用r r 工具和应用。 通常,工作流管理系统是指运行在一个或多个工作流引擎上用于定义、实现和管理工作 流的运行状态。 虽然不同的工作流管理系统具有不同的应用范围和不同的实施方式,但它们具有很多共 同的特性。概括地说,工作流管理系统提供了3 种功能( 见图2 2 ) 。 ( 1 ) 建立阶段的功能:主要考虑工作流过程和相关活动的定义和建模功能。 ( 2 ) 运行阶段的控制能力:在一定的运行环境下。执行工作流过程,并完成每个过程中活 动的排序和调度功能。 ( 3 ) 运行阶段的人机交互功能:实现各种活动执行过程中用户与r r 应用工具之间的交互。 华北电力大学硕士学位论文 p r w e s si e , s i 9 1 b u s h s sl n 。s jaj l a b s i s d c n l l l m h lm “k l li 雌d c l i n n k ,1 1 r “l h 0 b u i i m c i h ,r c _ 、 1 ) c “川t i t a n r i l l l l i m c 9 & “c “ m s l r l o “1 5 岫【1 1 c 白l j 。“ :! ! j ! ! j j ! ! j j j ! ! ;j ! :! ! ! j ! ! ! ! ; i 姒柑h i m :m 限i 、” i i n i “州i o n 、l i h l ! s e r a p p l i c a l i o nl j ( d 8 2 4 工作流参考模型 图2 2 工作流管理系统的特性 图2 3 给出了工作流管理联盟提出的工作流参考模型,它从另一个角度说明了工作流的 体系结构、应用接e :i 及特性,主要目的是为了实现工作流技术的标准化和开放性。参考模型 描述了工作流管理系统结构中的主要模块以及模块之间的接口。工作流执行服务器周围的接 口是w a p i ( w o r k f l o wa p i s ) ,通过这些接口可以访问工作流系统的服务,还可以与其它系 统组件间进行交互。在这里,工作流管理联盟着重说明了五类接口。 接口l :工作流服务和工作流建模工具间的接口,包括工作流模型的解释和读写访问。 接e l2 :工作流服务和客户应用之间的接口,这是最主要的接口规范,它约定所有客户 方应用和工作流服务之间的功能访问方式。 接口3 :工作流引擎和应用间的直接接口。这里的应用程序是不需要人工参与的自动应 用,因而此接1 :1 的工作只需包括通信建立、活动管理功能和数据处理功能。 接口4 :工作流引擎之间的互操作接口。 接l - q5 :t 作流引擎和工作流管理工具之间的接口。实现对工作流的管理和监视。 华北电力人学颧卜j 似晓文 匿习 “n “、, 毒 圈 2 5 工作流实现模型 i j i l 、i u 川k i i i u i i _ l i , i t 1 l i t , i 山i f i , l l l p i i i t l l i 、k l “i h c n 图2 3 工作流参考模型 工作流管理系统需要考虑众多因素,w f i v l c 提供了一个工作流管理系统的体系结构模 型,包括过程定义工具、过程定义、工作流执行服务( w e s ) 和工作流引擎、工作流控制数据、 工作流相关数据、任务表和任务表处理程序、应用程序和应用数据等。 图2 4 为w f i i i c 提出的工作流参考模型的体系结构图。这个参考模型的体系结构给出了 抽象的工作流管理系统的功能组成部分和接口,它能够满足工作流管理系统和产品应该具有 的主要功能,可为实现工作流产品之间的互操作提供公共的基础。 华北电力大学硕士学位论文 膏 酴潲l 墨。 g l l l 刊r i c 、o r k l l o wi ) r o d u ds t r u c t u r e 图2 4 工作流管理系统的体系架构模型 工作流管理系统实现模型各个模块说明: ( 1 ) 过程定义工具 过程定义是用来创建一个计算机可以处理的形式的过程描述。以形式定义语言、对象关 系模型、简单的系统、脚本、或者在参与者之间进行传递的路径集为基础。 ( 2 ) 过程定义 包含了所有使业务过程能被工作流执行服务执行的必要信息。这些信息包含起始和终止 条件、各个组成活动、活动调度规则、各业务的参与者需要做的工作、相关应用次序和数据 的调用信息等。 过程定义可能会涉及到一个组织角色模型,模型包括组织结构和角色信息。从而使过 程定义在与具体活动或信息对象相关的组织实体和角色功能方面十分详细。工作流执行服务 器负责把工作流运行环境中的参与者与相应的组织实体或角色联系起来。 ( 3 ) 工作流执行服务( w e s ) 和工作流引擎 华北电力大学硕士学位论文 工作流执行服务包括一个或多个工作流引擎。工作流引擎是工作流管理系统的核心软件 组件。它的功能包括解释过程定义、创建过程实例并控制其执行、调度各项活动、为用户工 作表添加工作项、通过应用程序接口调用应用程序、提供监督和管理功能等。 ( 4 ) 工作流控制数据 指被工作流执行服务( w e s ) 和引擎管理的系统数据,例如工作流实例的状态信息、每一 活动的状态信息等。 ( 5 ) 工作流相关数据和应用数据 过程导航判断或工作流机中的其他控制操作,都是以工作流应用程序产生或者更新的数 据为基础,这些数据可以被工作流机和条件工作流相关数据所访问;这是工作流机唯一可以 访问的应用程序数据。 ( 6 ) 任务表和任务表处理程序 任务表列出了与业务过程的参与者相关的一系列工作项,任务表处理程序则对用户和工 作表之间的交互进行管理。 ( 7 ) 应用程序和应用数据 应用程序可以直接被工作流管理系统调用或通过应用程序代理被间接调用。与工作流数 据和相关数据不同,应用数据对应用程序来讲是局部数据,对工作流管理系统的其他部件来 说是不可见的。 2 6 工作流模型规范 2 6 1 工作流当前流行的规范 工作流标准还处于制定阶段,所以存在大量相互重叠的规范。在工作流领域第一个致力 于标准化工作的是w f m c 。w f m c 发布的参考模型相对成熟完善,它定义了工作流管理系 统和其他相关部分之间的接口。w f m c 的另一项成果是x p d l 规范( x m lp r o c e s sd e f i n i t i o n l a n g u a g e ) 。x p d l 定义了描述工作流声明部分的x m l 的结构。因此目前w f m c 推出的工作 流参考模型和x p d l 是工作流领域中最好的规范。 在工作流模型规范中,目前处于一种百家争鸣的局面,主要有: ( 1 ) w f m c sx p d l w f m c 是由约3 0 0 家成员参加的组织,基于参考模型定义了一系列的标准。参考模型用 例的形式描述了工作流系统和其他相关部分之间的关系。x p d l 是w f m c 制定的描述业务流 程控制流的x m l 格式规范。1 9 9 4 年,w f m c 发布了工作流管理系统的参考模型。参考模型 提出了五类接口,有关过程模型的定义则构成了接口l 的核心内容。 ( 2 ) e b x m l sb p s s ( b u s i n e s sp r o c e s ss p e c i f i c a t i o ns c h e m a ) e b x m l 是协同流程的相关标准,主要关注不同公司流程之间的通讯。可以看作e d i 的 华e 电力大学硕士学位论文 继承者。 ( 3 ) b p e l f b u s i n e s sp r o c e s se x e c u t i o nl a n g u a g e ) w e b 服务业务流程执行语言( b p e l ) 是一种编程语言,它明确定义了基于w e b 服务的业 务流程,由一系列基于消息交换的规范产生。现在有一个 a v a 实现:b e e l 甜。 ( 4 ) u b l ( t h eu n i v e r s a lb u s m e s sl a n g u a g e ) u b l 定义了用于不同组织间通讯的x m l 文档标准库。可以看作是对e b x m l 的补充, 因为e b ) q 讧l 只定义了建立组织间流程的基础。 工作流模型被描述成可以被计算机处理的形式化表示,统称为“过程定义”,其描述语 言称为“工作流过程定义语言”,是用来方便交互和不同格式模型之间实现转换。不同工作 流实现模型有自己的规范描述语言、语法规则、标识符、关键字、文法规则。 2 6 2x p d l 模型规范 在企业应用中,使用者会用不同工具对工作流进行建模、分析、归档。工作流过程定义 接口定义了一个公共的交换格式,使得不同产品的工作流定义可以实现模型交换。 接口1 还实现了工作流过程的定义和执行两个不同阶段的分离,使得工作流的定义工具 和执行引擎相互独立,极大地增加了工作流产品的灵活性和可配置性,为用户提供更好、更 方便的选择和组合。图2 5 体现了x p d l 在不同工作流管理系统中所起的桥梁作用。 匪习 =铺 一嚣鉴警矗毹 p r o 【e g t ( 虹d 鳓 卜嬲卷罴蹦 k 撩暴掣7 :二。“ | : :l 巷 。 s i r e u l a n 。ue n g i e 一 ,i - - x p 。d l ,一、一、_ ,、 t 、u ,”j 7 、i ,”、节。f 、x 一_ j 、 e n d o r l 王】上d l 盅d _ j , 、 、“、li l _ 】i o m i o l l i l ge n g i n e , 图2 5x p d l 的桥梁作用 在现实中,一项业务流程都能用工作流模型的过程模型表示出来。过程模型由一系列活 华北电力大学硕十学位论文 动( a c t i v i t y ) 按照一定的约束关系组成。这些活动在具体的执行过程中需要使用一些资源和 角色( 对应资源模型和组织模型) 。工作流建模就是将这一系列的活动、活动之间的关系按 照事务的需求定义出来,并对应相应活动的起始时间、活动要使用的角色、资源等。然后将 模型上传给引擎,通过工作流引擎将任务项在“合适的时间发给合适的人员”。 工作流建模就是通过对业务流程的分析,使用建模工具以计算机能处理的形式进行建 模,并输出2 个能被引擎解释并执行的过程定义。该过程定义可以使用x p d l 描述。 华北电力大学硕士学位论文 第三章工作流建模 业务流程建模是为了获得一个业务流程的工作流模型描述,不同的建模方法有其不同的 适用范围。目前比较典型的工作流建模方法主要有三种: 1 基于活动网络的建模方法:以活动与活动之间的关系作为基础建立工作流模型,特 点是界面友好,容易理解,缺点是缺少严格的形式化语义,不利于模型验证。 2 基于u m l 建模的方法:u m l 是一种图形化语言,用来可视化、构造和文档化软件 的主导系统。u m l 的使用并不局限于软件开发,其中的一些图可以用在企业建模、业务工程、 过程分析和系统配置上。虽然u m l 体现了一些较好的建模经验,但它仍缺乏精确的语义定 义。 3 基于p e t r i 网的建模方法:在p e t r i 网的基础上,提出了工作流网的概念,以及如何把 工作流模式映射到p e t r i 网,兼顾了严格的语义和图形语言,也是一种基于状态的建模方法, 并拥有强有力的分析方法。 相比较而言,基于p e t r i 网的建模有着不可比拟的优势,将来的主流趋势是采用p e t r i 网 建模技术和工具。首先p e t r i 网有精确的定义,同其他非形式化的框图技术相比,避免了模糊 性、不确定性和矛盾性。其次,这种形式化体系可以用来反思过程。比如能建立特定模式, 也促成了许多分析技术的使用。 下面分别对这三种建模方法进行解释和说明。 图3 1 是一个软件开发的基本流程,我们将采用上述三种方法对该流程进行建模。流程 大意如下:一个项目被发起,初审通过后进入开发阶段,角色有程序员、数据库管理员、测 试小组和用户。程序员和数据库管理员的工作可以并行工作。软件的一个版本出来后,由测 试小组进行测试,通过了,则提交给用户测试;否则版本迭代开发阶段。用户对软件产品进 行测试,如果用户对软件提出自己的看法和要求,就要求开发小组的成员根椐用户的意思做 进一步的修改和测试。 华北电力大学硕十学位论文 3 1 基于活动网络的建模方法 圉3 1 软 叶开发流程图 3 1 1 基于活动网络的工作流建模方法描述 活动网络图( a c t i v i t yn e t w o r kd i a g r a m ) 是可读性最好的一种,对于非专业人员而言是 最直观、最自然的过程表达方式。活动网络图一般由节点、连接弧构成。规定节点代表工作 流过程中的一个活动,而连接弧表示活动之间的关联。在实际企业业务流程中,数据的流动 和活动的流动并不是完全一致的,所以将连接弧分为控制弧和数据弧。但这两种连接弧在结 构上是相同的,只是在过程定义时区分。 活动网络图表示企业经营过程,节点则代表其中的各个活动。当然,为了结构的清晰方 便,可以将若干活动定义为一个活动节点。 作为表示活动的节点类,应该具有如下的属性和方法。其中属性包括: f 1 ) 存储所有以此节点为尾的连接弧数组,用来确定是否所有前趋节点已经完成或者在必 要的时候对前趋节点进行反馈。 ( 2 ) 存储所有以此节点为首的连接弧的数组,用于在此活动完成后,激活后继节点。 ( 3 ) 存储所有需要发送数据的节点方向( 连按弧) 的数组,用来向其发送必要的数据。 ( 4 ) 存储所有要参与这个活动的角色数组,用来向这个角色的任务表管理器发送j m s ( j a v a m e s s a g es e r v i c e ) 。 ( 5 ) 存储表示执行这个活动的工作流机的地址。由于工作流机一般处在分布式的环境中, 因此要表明这个活动由分布式的工作流机组中的哪个来执行。这个地址的形式根据工作流机 所在网络环境来决定。 ( 6 ) 状态标志。一个活动可以有许多状态,工作流系统可以根据活动的状态来决定下一步 的动作。状态标志的使用,弥补了活动网络图对于状态及其转换描述能力的不足。 ( 7 ) 除此之外,还应该有属性来存储要接收或发送数据,发送给参与角色的j m s 内容以 及表示这个活动的d 号等。 除了上述属性,一个活动节点类还应包括各种必要的方法: ( 1 ) 激活的方法。这个方法可以由前趋活动在其完成后来调用,激活本活动。 ( 2 ) 从自己的数据空间中读取数据的方法。 ( 3 ) 给需要的活动发送数据的方法。 ( 4 ) 具体的业务处理方法。这个方法是活动的核心,即这个活动所要做的操作。 ( 5 ) 改变活动状态的方法。 上述的属性和方法是一个活动基本具备的。可以通过具有这些属性方法的基类,通过继 承或重载来派生出符合具体情况新的活动类,来更好的描述具体的企业业务流程。 华北电力大学硕士学位论文 连接弧是位于节点之间的有向线段,它从前驱节点指向后继节点,表示活动的转移或数 据的流动。一个连接弧类应该具备的基本属性方法为:这个连接弧的起始活动节点、后继活 动节点、状态、i d 号等。当然也可以通过继承派生出颓的更符合实际情况的连接弧,如加入 一些条件的判断等操作。 3 1 2 建模工具j a w e 介绍 j a w e 是一个进行过程定义建模的工具,它是公开源代码项目,使用要遵循g n u g e n e r a l p u b l i cl i c e n s e 。j a w e 的工作原理见图3 2 。该工具属于活动网络建模方法。 这个过程建模的最终输出是一个x p d l 输出文件,该文件在运行时能够被工作流引擎解释。 j a w e 完成了三个主要目标: ( 1 ) 过程定义的图形化表示; ( 2 1 过程定义输出到x p d l ; ( 3 ) 任何有效的x p d l 文件的导入和它的图形化表示。 工作流过程定义接口定义了一个通用的交换格式,该格式支持不同产品之间工作流过程 定义的转换。一个由j a w e 产生的工作流过程定义,能够被不同的工作流运行时产品所鳃释。 过程定义交换的原理是基于元模型框架的。利用这个元模型,j a w e 能够用x p d l 作为一种 通用交换格式来转换模型。除了这种转换,j a w e 还被用来进行过程定义的内部表示。 华北电力大学硕士学位论文 图3 2j a w e t 作原理图 用j a w e 建模工具设计上述软件开发的流程实例如图3 3 所示。 蛮 t 甲阜 越 曩。 i 零 i 黼 弓m圈 争 i 爹 , l 数据库_ 【曼i ? 1 爹。 i i 干 p , 一 一。 j, 导 j 。嗣吲眩 ,“7l 一一 奏 , 一 篷箩1磊订l i 燮| 塑燮l “礼鼍 r 1 :歹 习。f 2 i z 量 3 2 基于u m l 的建模方法 图3 3 用j a 腮建模工具设计软件开发的流程实例 u m l 定义了如下几种类型图:用例图、类图、序列图、协作图、状态图、活动图、组件 图和部署图。用例图显示了一组用例、参与者和他们之间的关系。类图显示了一组类和他们 之间的关系。这两种图属于静态视图。序列图和协作图本质上是交互图,侧重于描述对象与 参与者交互。序列图是侧重于消息时序关系的一种交互图。协作图所强调的是组织结构而不 是时序。状态图通常用来建立对象生命周期模型,侧重于对象的状态。活动图通常用来描述 对象间的控制流,同状态图相比,活动图的重点是活动。u m l 使用四种类型的图来创建一个 系统的动态视图:序列图、协作图、状态图和活动图,它们来对动态行为建模。组件图和部 署图对一个系统的实现视图来建模,在组件图中对象被分组为组件。部署图则显示了运行期 间处理节点的配置以及位于其上的组件。 华北电力大学硕士学位论文 工作流管理系统关注于过程方面,由于序列图、协作图、状态图和活动图强调系统的动 态行为,这些图与工作流建模关系非常密切。 j b o s si b p m 的流程建模工具就是基于u m l 活动图和状态图。在活动图中,活动直接对 应于工作流参考模型中的活动概念,反映了系统功能上的分解,标注数据信息的有向弧表示 活动间的数据流。 j b p md e s i g n 是j b o s s j b p m 建模工具,它是e c l i p s e 上的一个插件。用它设计上述软件开 发的流程实例如下图3 4 所示: 图3 4 用j b 附建模工具设计软件开发的流程实例 3 3 基于p e t r i 网的建模方法 3 3 。1 基于p e t r i 网的工作流描述 p e t r i 网是一个图形化的建模工具,一方面可以利用图形化的方式描述工作流过程,另一 方面可以通过形式化的分析技术检查工作流模型的正确与否,甚至对其进行功能分析。 p e t f i 阿定义成三元组,p n = 假t f ) ,其中: ( 1 ) p = - f p l ,p 2 ,p 3 p n l ) 是库所的有限非空集; ( 2 ) t = t 1 ,t 2 ,t 3 p i l l ) 是变迁的有限非空集: 华北电力人学硕十学位论文 ( 3 ) f = p x t u t x p 是有向弧的集合( x 表示笛卡尔集合) ,p 和t 还表示p f l 中并且t u p 中。 p e t r i 网由库所和变迁组成,圆圈表示库所,矩形表示变迁,库所和变迁用有f 龟弧连接。 p e t r i 网的动态行为是用t o k e n 的分配来描述的,用( ) 表示。p e t r i 网结构是固定的,而库 所中的t o k e n 的分布式可以变化的。变迁出发的条件是它每个输出库所含有的t o k e n 数目要 多于从该库所到变迁的有向弧数。 变迁是p e t r i 网的主动元素,通过实施变迁,过程从一个状态转移到另一个状态。变迁通 常表示为事件、操作、转换、传输:库所是p e t r i 网中的被动元素,不能改变网的状态,通常 表示为媒介、缓冲器、位置、阶段、条件:t o k e n 表示为对象,可以表示为一个特定的事务 或抽象的信息。 通过扩展p e t r i 网模型定义,满足如下两个条件: 条件1 :工作流网必须具有一个起点和一个终止点,使得进入起始库所得t o k e n 代表一 个过程实例的开始;而进入终止库所的t o k e n 表示一个过程实例的结束。 条件2 :工作流网中不能存在孤立状态活动与条件,所有的活动与条件都位于起始点到 终止点的通路上。 满足这两个条件的p e t r i 网就被称为工作流网,其数学定义为: ( 1 ) n 有两个特殊的库所,i 是一个起始库所,即+ i = 中,o 表示一个终止库所,o p * o = e p ; ( 2 ) 如果在n 中加入一个变迁t ,使得t = o ) 并且1 + = i ,则得到的n 是一个强连接的 p e t r i 网。 在建模过程中,如果使用条件和任务的概念,则库所表示条件,变迁表示任务。库所中 t o k e n 表示可以使用的资源或数据。一个变迁有一定数量的输入和输出库所,分别表示任务 的前置条件和后置条件。被建模系统的状态可以用每个库所中的t o k e n 表示,变迁的触发引 起状态的变化,变迁触发的结果是每个连到该变迁的库所,在触发后所有的输入库所取走一 个,在每个输出库所增加一个。t o k e n 状态的变化代表了流程的演变。 3 3 2 工作流模式到p e t r i 网的映射 在工作流系统应用范畴内,用工作流过程表示企业的一个业务流程,用库所表示条件, 其中包含一个开始库所和一个结果库所分别对应了过程的开始和结束,用变迁表示任务,任 务的执行方式由路由决定。根据w f m c 的定义,工作流应该包含四种基本的路由结构,分 别是顺序、分支、并行、循环。 用p c 哪网描述工作流的四种基本模式如图3 5 。 望! ! 皇垄查堂堡主堂堡丝壅 臣) 多叫互 一! p a 二 ;多 u 嘲;卅扦 c l t tr 基摊( 砖式或) d 冈: 条抖( 鐾式或) 骠长二黑s 埒 唑窿二浮 图3 5 用p e t r i 网描述工作流的四种基本模式 顺序路由:如图3 5 ( a 图) 所示,用于表达任务间的因果关系。只要a 执行完毕之后 b 才能开始。c 1 模拟任务a 的后置条件和任务b 的前置条件。活动的前置条件指明相应活 动的启动条件,启动条件是通过相应活动的直接前驱活动,以及相应的状态标志来表示的: 活动的后置条件是当前活动所对应的任务结束后,该启动哪些后继活动。 并行路由:如图3 5 ( b 图) 所示,任务b 和c 可按任何顺序执行。为了表达这种关系, 在p e t r i 网中添加了a n d s p i l t 任务和a n d - j o i n 任务。任务a 表达了b 与c 并行的关系。而d 表达了同步的关系,只有b 与c 所在的活动都执行结束后d 才可以开始。 选择路由( 隐性或分支) :如图3 5 ( c 图) 所示。当c 2 含有t o k e n 后,就会出现b 和c 任务同时就绪的情况,但哪个能够真正的被执行,从图中无法得知( 所以称为隐式或分 支) ,这取决于b 与c 被触发的结果如果b 被执行,c 就被禁止,反之,c 执行,b 被禁 止。这里b 与c 的选择与a 无关。 选择路由( 显性或分支) :如图3 5 ( d 图) 所示。任务a 具有两个输出库所c 2 和c 3 , 但这里与“与分支”不同,a 在这里表示“或分支”,a 只能根据其某个活动属性x 的值来 决定向哪个库所输出t o k e n 。比如,若x 0 ,c 2 获得t o k e n ,任务b 被执行。若x 0 ,c 3 获 得t o k e n ,任务c 被执行。 循环路由:如图3 5 ( e 图) 所示。b 是被反复执行的任务,c 可以理解为一个起控制 作用的任务,用来检验b 的执行结果,来决定是把t o k e n 转移到c a 还是移到c 2 ,如果t o k e n 被移到c 4 ,b 不再被执行。而是继续推进流程的执行。如果t o k e n 被移回c 2 ,b 将反复的 执行。 用p e t r i 网建模方法来设计上述软件开发的流程实例如下图3 6 所示: 竺些皇垄查堂堡主兰堡堕苎 蒜黛聃磊填h 辨懈i x j 卜一瑚琏,继 里 缸姑库 丙 1 瀚试 。蔚 菇、 辏 掣 图3 6 用p e t r i 网建模方法设计软什开发的流程实例 1 8 产墨一 i 代一 华北电力大学硕士学位论文 第四章工作流执行服务器的原理与实现 4 。1 工作流执行服务器原理概述 工作流执行服务器是由一个或多个工作流机构成的软件服务器,用来创建、管理、执行 工作流实倒。应用程序可能会通过w a p i 来与这个服务交互。 工作流机为工作流实例提供运行时期的执行环境的软件服务器或引擎。个工作流机负 责执行服务器中的部分( 或者全部) 运行控制环境。 工作流机能处理: ( 1 ) 解释过程定义; ( 2 ) j 空制过程实例创建、激活、挂起、终止等; 0 ) 为过程的活动导航。可能要包含顺序或者平行的操作、最后时间期限、对工作流相关 数据进行解释; ( 4 】参与者签名和退出: f 5 ) 确定任务项目,实现用户意图:提供接口,支持用户交互; ( 6 ) 维护工作流控制数据和工作流相关数据,在应用程序间或者用户间传递工作流相关数 据: m 提供调用外部程序的接口,连接所有工作流相关数据; f 8 ) 提供控制、管理和审查功能。 工作流执行服务器使用一个或多个工作流机,为过程实例和活动提供运行环境,负责解 释和激活过程定义,与过程所需的外部资源进行交互。在模型中,过程与活动控制逻辑间有 一个逻辑上的分离,活动控制逻辑构成工作流执行服务器:过程与应用工具问、与终端用户 任务问也有一个逻辑上的分离,应用工具和任务建立起对每个相关活动的处理。这种逻辑上 的分离,为制定更多的行业标准提供了机会。也为在工作流程序中集成用户具体的应用工具 提供了机会。 工作流执行服务可以著作是一个状态变迁机器,过程或者活动的实侧在响应外部事件、 工作流机负责的控制判断后,其状态发生改变。 图4 。1 描述了过程实例的基本状态变迁方案: 图4 1 描述了过程实例的基本状态变迁方案: 1 9 华北电力大学硕士学位论文 图4 1 过程实例的基本状态变迁图 在图4 1 中,发生状态转移( 用箭头表示) 来响应w a p i 的命令:过程定义中的转移条 件满足,也可能发生状态转移。 1 i n i t i a t e d ( 初始化) 过程实例被创建,包括与过程状态相关的日期、工作流相关数据,但是过程还没有满足 条件,不能执行。 2 r u n n i n g ( 运行)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030中国青年公寓运营商融资渠道创新研究报告
- 2025-2030中国青年公寓行业线上线下融合与全渠道营销研究报告
- 2025-2030中国青年公寓行业消费者偏好与产品设计优化报告
- 2025-2030中国青年公寓行业数字化转型与智慧管理分析
- 2025-2030中国青年公寓电梯等候时间优化数学模型
- 2025-2030中国青年公寓市场精细化运营与成本效率优化研究报告
- 2025-2030中国青年公寓市场消费行为与投资潜力分析报告
- 2025-2030中国青年公寓市场客群消费习惯与支付能力研究报告
- 2025-2030中国青年公寓宠物友好型房源商业价值评估报告
- 2025-2030中国青年公寓供应链优化及运营效率提升报告
- 磷化铝管理办法
- 2025年海底捞企业面试题及答案
- 小学体育家长会课件
- 教育的人口功能
- 抗凝剂皮下注射技术临床实践指南2024版
- 中小学教辅材料征订管理制度
- 2025年芳香保健师(初级)职业技能鉴定理论考试真题解析试卷
- 2025年陕西省中考数学试题(原卷版)
- 注塑加工项目可行性研究报告
- 痛风中医辨证论治课件
- 带储热的液态空气储能系统性能的多维度剖析与优化策略
评论
0/150
提交评论