




已阅读5页,还剩62页未读, 继续免费阅读
(计算机应用技术专业论文)基于petri网的工作流引擎的研究与设计.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
太原理工大学硕士研究生学位论文 基于p e t ri 网的工作流引擎的研究与设计 摘要 当今随着经济环境的全球化,企业面临着越来越激烈的竞争。大多 数有竞争力的企业都把对业务过程的管理作为他们成功的关键。工作流 管理系统将实际的业务过程转化成某种计算机化的形式表示,通过调用 有关的信息资源与人力资源来协调工作流中的各个环节,使之按照一定 的顺序依次进行,从而实现业务过程的自动化。它为企业和政府部门创 造了良好的协同工作环境。 工作流模型是整个工作流技术的重要内容,而模型的正确性分析和 性能评价则是工作流系统研究和应用的主要理论基础和支撑技术。由于 p e t r l 网具有形式化的语义定义、直观的图形表达、严格的数学基础以及 基于状态的描述等优点,被越来越广泛应用于工作流过程建模和流程优 化。a a l s t 的工作流网“1 已被众多研究人员所认同,它是基于经典p e t r i 网所建立的。因此,它能精确地描述事件的顺序、并发和冲突关系,使 系统形象化,有利于理解。但是,传统p e t r i 网具有一些固有的缺陷:难 以实现流程控制,不能描述时间性活动。本文基于p e t r i 网理论对工作 流的业务过程进行了建模描述,并讨论了经典p e t r i 网的颜色扩展、时 间扩展、层次扩展。 工作流引擎是工作流管理系统的核心部分,它依据预先建好的业务 太原理: 大学硕士研究生学位论文 流程模型来推进业务的完成,并按照角色准确地给相关业务人员分配任 务,从而达到规范业务管理和提高工作效率的目的。本文设计并实现了 工作流引擎p n f l o w 。p n f l o w 采用j a v a 技术实现,并被设计成一个自包 含的组件,它可以作为一个程序库集成的需要工作流服务的服务端程序 中。它的特色是使用前文讨论的颜色扩展的p e t r i 网做为工作流模型以 及它灵活高效的分类资源管理能力。相应的,p n f l o w 的访问控制模型基 于角色,角色就是一个资源类,通过将任务和角色关联,然后给用户指 定一定的角色从而可以执行相应的任务。模型在具体实现时采用了加权 弧对颜色建模。另外,p n f l o w 认为在过程逻辑和应用逻辑之间存在着明 显的界限,它不关心上层应用数据,它采用内存对象存储技术p r e v a y l e r 作为持久层解决方案,避免了关系数据库的使用,使得它可以方便的和 上层应用集成。 关键词:p e t r i 网,工作流,工作流管理系统,工作流引擎 i i 太原理工大学硕士研究生学位论文 d 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 e n g i nb a s e do np e t r in e t a b s t r a c t n o w a d a y s ,w i t ht h ee c o n o m i cd e v e l o p m e n ti nt h ew h o l ew o r l d ,t h e e n t e r p r i s e i sf a c i n gm o r ea n dm o r ed r a s t i cc o m p e t i t i o n m o s tc o m p e t i t i v e e n t e r p r i s e sr e g a r da d m i n i s t r a t i o no ft h eb u s i n e s sp r o c e s sa st h ek e yt os u c c e s s w o r k f l o wm a n a g e m e n ts y s t e m st r a n s f o r mp r a c t i c a lb u s i n e s sp r o c e s s e si n t o c e r t a i nc o m p u t e r i z e df o r m sa n di m p l e m e n ta u t o m a t i o no fb u s i n e s sp r o c e s sb y m e a n so fs e q u e n c i n gw o r ka c t i v i t i e sa n di n v o k i n ga p p r o p r i a t eh u m a na n d + i n f o r m a t i o nr e s o u r c e sa s s o c i a t e dw i t ht h e s e a c t i v i t i e s t h e y o f f e rn i c e e n v i r o n m e n t sf o rc o o p e r a t i v ew o r k s 。0 。 t h ew o r k f l o wm o d e li st h e s i g n i f i c a n t c o n t e n ti nt h ew o r k f l o w t e c h n o l o g y t h ev e r i f i c a t i o na n dp e r f o r m a n c ee v a l u a t i o no ft h em o d e li st h e p r i n c i p a l t h e o r e t i c a lb a s i sa n ds u p p o s i n gt e c h n i q u eo ft h es t u d i e sa n d a p p l i c a t i o n so ft h ew o r k f l o ws y s t e m 砌mt h ea d v a n t a g e so ff o r m a ls e m a n t i c d e f i n i t i o n ,v i s u a l l yg r a p h i c a le x p r e s s i o n ,f i r mm a t h e m a t i c a lf o u n d a t i o na n d d e s c r i p t i o nb a s e do ns t a t e ,t h ep e t r in e ti sa p p l i e dt om o d e la n do p t i m i z et h e w o r k f l o wp r o c e s sm o r ea n dm o r e m o r en u m e r o u ss c h o l a r sa n ds p e c i a l i s t s i i i 太原理工大学硕士研究生学位论文 h a v ei d e n t i f i e dw i t hw o r k f l o wn e tb a s e do nc l a s s i c a lp e t r in e t i t ,t h e r e f o r e , c a nd e s c r i b es e q u e n c e ,c o n c u r r e n ta n dc o n f l i c t a n di tm a k e ss y s t e mv i s u a l a n du n d e r s t a n d a b l e t h e r e ,h o w e v e r , a r es o m el i m i t a t i o n s :i ti sd i f f i c u l tt o c o n t r o lf l o wo fb u s i n e s s ,a n di tc a n td e s c r i b et i m e l i n e s sa c t i v i t y t h i sp a p e r d e s c r i b e st h ep r o c e s so fw o r k f l o wb a s e do np e t r in e tt h e o r i e s ,a n dt h e nt h e p a p e re x t e n d sc l a s s i c a lp e t r in e tb yt i m e ,c o l o ra n d r a n k w o r k f l o we n g i n e ,t h em o s ti m p o r t a n tp a r to fw o r k f l o wm a n a g e m e n t s y s t e m ,i sr e s p o n s i b l e f o rw o r k f l o wp r o c e s s e se x e c u t i o n a c c o r d i n gt o w o r k f l o wp r o c e s sm o d e l sd e f i n e db ym o d e l i n gt o o l s a n di ta l s oa s s i g n sr i g h t t a s kt or i g h tp e o p l ew h oh a sr i g h tr o l e st oe n a b l eh i g hw o r ke f f i c i e n c y t h e p a p e rd e s i g n sa n dr e a l i z e sas p e c i f i cw o r k f l o we n g i n e :t h ep n f l o ws y s t e m p n f l o wi sw r i t t e ni nj a v ad e s i g n e dt ob ee m b e d d e d t h e r e f o r e ,p n f l o wi s o r g a n i z e da sal i b r a r yt ob eu s e db ys e r v e rs i d ea p p l i c a t i o n st h a tn e e d w o r k f l o ws e r v i c e s i t sm a i ns t r e n g t h sa r et h ev e r ye x p r e s s i v ec o l o r e dp e t r i n e tb a s e dn o t a t i o ni tu s e st od e f i n ew o r k f l o w sa n dt h ep o w e r f u lr e s o u r c e s e l e c t i o nm e c h a n i s m si t p r o v i d e s a l s o ,i th a saw o r k f l o wa c c e s sc o n t r o l m o d e lb a s e do nr o l e t h eb a s i ci d e ao ft h i sm o d e l i st h a tr o l e sa r ec o n n e c t e d d i r e c t l yw i t ht a s k w h e nar e s o u r c eb ep u ti n t oar o l e ,i tc a np e r f o r m at a s k t h ep h i l o s o p h yo fp n f l o wt h i n kt h a tt h e r ea r ec l e a rs e p a r a t i o nb e t w e e n w o r k _ f l o wl o g i ca n da p p l i c a t i o nl o g i c t h e r e f o r e ,p n f l o wi st o t a l l yo b l i v i o u s o ft h ed a t ao ft h ea p p l i c a t i o n ,i td o e sn o t r e q u i r ear d b m sa n di sv e r ys i m p l e i v 太原理工大学硕士研究生学位论文 t ou s ea n dt oi n t e g r a t ew i t ha p p l i c a t i o n s k e yw o r d s :p e t r in e t ,w o r k f l o w , w o r k f l o wm a n a g e m e n ts y s t e m , w o r k f l o we n g i n e v 声明 本人郑重声明:所呈交的学位论文,是本人在指导教师的指导下, 独立进行研究所取得的成果。除文中已经注明引用的内容外,本论文 不包含其他个人或集体已经发表或撰写过的科研成果。对本文的研究 做出重要贡献的个人和集体,均己在文中以明确方式标明。本声明的 法律责任由本人承担。 论文作者签名:3 每墓三乙l 一 e ti 蕻i : 关于学位论文使用权的说明 本人完全了解太原理工大学有关保管、使用学位论文的规定,其 中包括:学校有权保管、并向有关部门送交学位论文的原件与复印 件;学校可以采用影印、缩印或其它复制手段复制并保存学位论文; 学校可允许学位论文被查阅或借阅;学校可以学术交流为目的, 复制赠送和交换学位论文;学校可以公布学位论文的全部或部分内 容( 保密学位论文在解密后遵守此规定) 。 签名: 导师签名: 垒堕趋 日期: 日期: 趔荔塑艺翌趔卑型2 翌 坦墨:圭: 太原理工大学硕士研究生学位论文 1 1 工作流技术概述 第一章绪论 七十年代末s k i pe l l i s ,a n a t o lh o l t 和m i c h a e lz i s m a n 等人关于办公信息系 统的研究工作。1 1 开创了工作流研究领域。在工作流技术之前,业务过程是由人来管 理的,因此一个团体往往先确立组织结构,并在该结构下根据业务进行分工,然后决 定是否用计算机部分或者全部支持业务过程中的某个任务,相应于这种过程管理方 式,信息系统把整个业务过程通过硬编码写死在软件里,这种做法在很大程度上限制 了信息系统的潜能。由于业务过程是不可变更的,如果某个活动被分配了人员,那这 些人员也是固定的,不能变动,将业务过程硬编码的系统使用寿命短暂,缺乏灵活性、 和可扩展性。 因为企业的业务过程会随着市场环境的因素而频繁改变,因此就要求信息系统能 足够灵活。基于这样的需求,工作流技术应运而生了。通过将业务过程分解成定义良 好的任务,按照一定的规则和过程来执行这些任务并对它们进行监控,达到提高办事 效率、降低生产成本、提高企业生产经营管理水平和竞争力的目的。工作流管理系统 通过对业务过程中各任务发生的先后次序及同各任务相关的人力或信息资源的调用 等进行管理实现业务过程的自动化,将正确的信息在正确的时间传递给正确的人或系 统。 有了工作流技术,人们可以以一种更加抽象的方式来设计业务过程,以业务过程 为中心对信息系统和组织结构进行一体化设计,然后再决定过程中的某个任务由计算 机还是由人来完成。工作流技术最突出的特点就是它把过程逻辑和业务逻辑分开。, 这样可以在不改变业务逻辑的情况下,只改变过程逻辑来适应企业不断变化的业务过 程,而且这种过程逻辑的改变并不需要更改软件本身,而是通过工作流的过程定义工 具就可以方便的做到;另一个突出的特点是同一个业务逻辑可以被不同的过程逻辑重 复使用,不必为每个过程逻辑全部重新定义业务逻辑,这实现了一定意义上的软件重 用。此外,工作流技术还提供了其他功能,如:过程跟踪和监控,可变更的活动人员 分配机制,。 1 太原理工大学硕士研究生学位论文 1 2 工作流模型研究现状 工作流模型作为工作流管理系统的起点,对企业业务过程逻辑及其业务活动依赖 关系进行抽象表示。目前人们提出了不少有意义的工作流模型,并在此基础上设计了 许多商品化的工作流管理系统。但从其功能上看,多数工作流模型基本上是基于“静 态”过程定义的,工作流管理系统本身不能根据工作流实例的运行状况而动态地修改 其配置、控制和数据信息,这使得工作流管理系统在应用的许多关键特性上无法得到 保证。已有的工作流过程模型涉及的理论主要包括计算机支持的语言行为( s p e e c h a c t ) 理论、协同工作( c s c w ) 、协调理论、数据挖掘、智能体a g e n t 、p e t r i 网和面向 对象技术等。 w i n o g r a d 与f l o r e s 在语言行为理论的基础上提出了一种基于对话的工作流模型 ”1 ,这种模型模型突出客户与执行者两个角色之间的语言行为交互和承诺,一定程度 上克服了传统工作流过程模型把注意力集中于活动及其逻辑关系,忽视了参与者之间 的交互。这种工作流过程模型由一系列封闭的工作流子环相互连接而成的。每个工作 流环包含四个阶段:需求阶段、协商阶段、执行阶段和满意阶段。本质上讲,这种过 程模型仍属于以活动为中心的建模方法,而且因兼顾活动和角色交互可能使过程的描 述复杂化,不便于大型,尤其是跨组织工作流的描述。 从c s c w ”1 研究的角度来看,工作流管理系统是一种形式化、结构化协作的群件系 统。工作流的日益分布化和复杂化,导致工作流建模是一个群组协作的过程。这需要 借助c w c s 理论来协调建模者的行为。 协同理论研究如何管理一组协同活动之间的相关性,它和工作流的本质是相符合 的。如范玉顺等人。1 在协调理论和反馈控制思想指导下,通过引入协调等机制,拓宽 了工作流过程模型的表达能力。 在众多的过程建模方法中,p e t r i 网是一种图形语言,可直观地反映并行、同步 和共享等现象,适合描述具有并行行为或操作的系统。p e t r i 网的另一特点是具有精 确的语义和严格的数学基础,其理论结果十分丰富。关于基于p e t r i 网的工作流模型 在本文的第二章将会更详尽的描述。 除了以上几类工作流模型,还有许多其他形式的工作流模型。比如,文献 9 给 2 太原理工大学硕士研究生学位论文 出了一种活动树的模型,它以一个树状结构来表达工作流过程。从根结点开始,过程 被逐层分解为由各级子结点所代表的活动,而活动的执行顺序是由左至右逐个分支地 进行。a n d r e a sg e p p e r t 等人提出了b r o k e r s e r v i c e s 模型“,它定义了较为精确与 严格的形式化语义,用代理来表示工作流执行过程中的处理实体,用服务来表示所要 执行的活动,代理的行为是采用e c a ( e v e n t c o n d i t i o n a c t i o n ) 规则来描述的。 1 3 工作流管理系统开发成果简况 在确定了工作流模型的基础上,如何实现整个系统预定的各项功能就成为设计人 员所必须考虑的问题。确定一个工作流系统的实现方案,一般包括两个重要方面。( 1 ) 首先是选择系统所基于的底层通信基础结构。这一基础结构关系到系统中的各个组成 部分之间以怎样的方式来进行互操作,这是分布式应用赖以存在的基础。比较典型的 结构包括远程过程调用r p c 、面向对象的分布计算环境c o r b a 、基于t c p i p 的w e b 、 各类消息传递系统以及代理系统等。( 2 ) 要确定系统各组成部分之间的协作过程。从 模型的提交、运转到结束,这一过程必然会涉及到多个软件模块间的协作,那么这些。 具有不同功能且相互独立的模块之间在所确定的底层通信基础结构上的互操作过程 就是实现工作流运转的过程。这部分工作主要包括接口定义、数据维护方式、操作处 理过程等的确定。 以下简要介绍了几种典型的工作流系统实现方案,它们分别出自于不同的研究项 目,在一定程度上代表了几个不同的研究发展方向“”。 o r b w o r k :基于c o r b a 的分布式工作流系统 o r b w o r k 是美国g e o r g i a 大学计算机系m e t e o r ( m a n a g i n ge n d t o e n do p e r a t i o n s ) 研究项目所开发出的一套工作流管理原型系统,它是基于c o r b a 的完全分布的工作流 执行系统,以c o r b a 产品o r b i x 作为底层的通信支持,并使用c o r b a 来实现系统的互 操作和数据源的封装。在o r b w o r k 中,系统的所有组成部分,包括任务管理器、任务 ( 或经过封装的己经存在的应用程序) 、监控单元和恢复机制都是c o r b a 对象,它们之 间通过c o r b a 的i d l 调用进行协作。同时,o r b w o r k 还为用户提供了w e b 界面以及w e b 与c o r b a 之间的接口。以c o r b a 作为工作流系统实现的底层基础有许多优点,比如对 3 太原理工大学硕士研究生学位论文 象请求代理( o r b ) 机制、标准的接口定义语言( 工d l ) 、面向对象等等。这些优点都 将使c o r b a 成为用户实现企业级工作流解决方案的一种可能的选择。 w e b w o r k :基于w e b 的工作流系统 ,w e b w o r k 与o r b w o r k 一样,也是m e t e o r 项目中的一部分。与o r b w o r k 不同的是, w e b w o r k 是完全基于w e b 技术实现的工作流系统。m e t e o r 的研究人员考虑到企业可能 由于价格等原因而不愿意去购买c o r b a 产品,但是大多数企业都有自己的w e b 服务器, 或者可以连接到某个w e b 服务器上,因此开发出了一套基于w e b 的工作流管理系统。 w e b 浏览器为用户提供了一个通用、友好的界面,而且它可以很容易地、不附加任何 多余代价地布置在多个计算平台上。 e x o t i e a f m q m :基于永久消息队列的分布式工作流系统 i b m a l m a d e n 研究中心所进行的研究项目e x o t i c a 在工作流分布执行方面提出了 一种能够完全分布的执行模型,它通过永久消息( p e r s i s t e n tm e s s a g e s ) 的方式来保 存工作流相关执行信息,使得每一个执行节点都是相互独立的,工作流过程的执行不 以某一个节点为中心,完全实现了分布。这种方式大大提高了系统的可靠性、可扩展 性以及柔性。 e v e :事件驱动下的分布式工作流执行系统 瑞士苏黎士大学计算机系的研究人员提出了一种基于事件的工作流执行服务中 间件平台体系结构,称为e v ec e v e n te n g i n e ) ,用以集成工作流执行过程中松散祸 合的分布式功能组件( 包括各类企业应用) 。在e v e 体系结构中,工作流的执行是由分 布在网络上的代理( b r o k e r ) 通过响应由e v e 服务器检测到的事件来完成的:同时,代 理在提供服务的过程中又会产生新的事件。每一个代理代表了一种活动任务的处理实 体,它的行为也是由e c a 规则来定义的。不同的代理分别用于提供用户接口、组织管 理、外部应用集成以及系统组件等功能。 d a r t f l o w :基于可移动代理的工作流管理系统 d a r t f l o w 是达特茅斯大学计算机系设计开发的一种基于可移动代理的工作流系 统。所谓“可移动代理”,是指一段可以在自身的控制下由异构网络系统中的一台机 器转移到另外一台机器上运行的程序。也就是说,可移动代理能够在执行到某一点时 挂起自身程序,将代码传递到另外的网络节点上去继续运行。可移动代理具有许多优 4 太原理工大学硕士研究生学位论文 点,比如在一定条件下能够减少网络流量、适合于移动用户、有利于数据集成、具有 并行机制等,因此很适合于工作流管理系统的构建。企业的每一个经营过程的实例可 以由一个移动代理来处理,代理在预先定义好的步骤下在分布的网络节点上执行,当 代理移动时,它携带着过程所需的执行代码与数据,无需每一步都通过中央的数据库 服务器来交换数据。在d a r t f l o w 中,它的系统组件结构与工作流管理联盟所提出的 参考模型基本一致,能够相互对应,其中比较有特色的几个部分是过程代理、多种类 型的代理服务器、用户界面与工作表服务器。 1 4 现有工作流技术的不足 通过对工作流理论以及产品的研究,我们认为工作流技术的不成熟性主要表现在 以下几个方面: ( 1 ) 在工作流的模型描述方面,缺乏一种支持过程定义、过程演进以及过程分 析的形式化的数学模型“”。工作流模型的核心是对过程的定义,包括组成过程的基本 活动以及活动之间的时序关系。目前的各种工作流模型,大部分都是从直观感觉出发, 以图形语言或者文本语言来定义工作流过程。这种定义的方法实际上仅仅是处于用户 层上,即对用户而言是比较理想的方式,但并不利于实际系统的实现,也无法对工作 流的本质特征进行描述,更谈不上对过程的分析与评价。由于缺乏理论层的模型支持, 使得工作流在应用的许多关键特性上无法得到保证,包括柔性定义、过程重用、事务 管理、异常处理等,这些都大大限制了工作流在企业应用中的推广。 ( 2 ) 在工作流的执行方面,缺乏一个标准化的集成框架来支持对企业常用的分 布式应用的集成。企业在应用工作流进行业务流程的运作时,最为关心的就是工作流 系统能否与企业原有的各个应用系统( 比如m r p i i 系统、c a x 系统等) 很好地集成起来, 使它们成为一个完整的业务流程当中有机的组成部分,而不是像原来那样处于一种 “孤岛”状态。但目前来看,工作流应用中的一个很大的瓶颈就是工作流管理系统所 能支持的企业应用太少,在集成的方式方法上还没有统一的标准,很大程度上要受到 外部应用的限制。因此,在工作流系统与企业应用间鱼待建立一个性能良好的“粘合 层”,最好是独立于不同企业应用的一个标准的集成框架,这将极大地提高工作流系 5 太原理工大学硕士研究生学位论文 统对企业应用的适应性。 ( 3 ) 在工作流的仿真评价方面尚处于一种几近空白的状态。应该说,在缺乏仿 真方法与仿真工具支持的情况下,整个工作流系统是不完善的。因为人们难以预料所 部署的工作流过程将有可能出现怎样的结果,它有哪些不合理的地方,其性能指标如 何,这一切都必须等到实际运行以后才能由工作流管理系统所记录的数据中获得,显 然,这并非是一种合理的方式。针对工作流进行仿真的难点主要在于。仿真的性能指 标不好确定,仿真的内容较为复杂等。 ( 4 ) 缺乏互操作性。不同组织之间不存在一个中央权威机构能够管理所有参与组 织的业务过程。而且不同的组织内部往往部署来自不同厂商的工作流管理系统,由于 不同的工作流管理系统没有采用统一的标准所带来的异构性,如采用的底层通信基础 结构各不相同,不同的厂商工作流产品具有自己独立的工作流模型、工作流定义语言 以及a p i 函数,标准化程度差,不同的工作流管理系统之间很难实现互操作“。 1 5 作者的主要研究工作 在上述研究背景下,作者的研究工作主要集中在以下两个方面:继续基于p e t r i 网的工作流模型的研究,讨论了对传统p e t r i 网的颜色扩展、时间扩展、层次扩展, 详细介绍了基于p e t r i 网的过程建模技术。设计并实现工作流引擎p n f l o w ,其特 色是工作流模型基于着色p e t r i 网,实现了前文提到的颜色扩展p e t r i 网调度算法。 过程管理和上层应用严格分离的思想贯穿p n f l o w 设计过程,同时它实现了一种简单 而强大的资源管理方式。最后,该引擎是嵌入式的,可以作为一个1 i b 库提供给需要 的s e r v e r 使用,它采用内存对象存储技术,避免了关系数据库的使用,具有灵活高 效和适用面广的特点。 6 太原理工大学硕士研究生学位论文 第二章p n f io w 引擎的工作流模型基础 2 1 工作流基本概念 2 1 1 实例 实例又被称为过程实例。工作流系统的基本目的是处理实例。一次税收申报、一 次保险索赔、一个抵押申请过程等都是实例。相似的实例属于同一种实例类型,比如 每次保险索赔都属于同一种实例类型。通常每一个实例被赋予一个唯一的标识。 每个实例都有一定的生命周期。以保险索赔为例,提出索赔意味着实例在工作流 系统出现,直到所派处理结束,实例从工作流系统种消失。一个实例的出现和消失之 间,它总是处于某个特定状态,该状态由以下三个元素组成:( 1 ) 实例相关属性的值; ( 2 ) 已经满足的条件;( 3 ) 实例的内容。实例属性是一系列同实例相关的变量,能够用 来管理实例。实例属性的值可能随着实例的进展而发生变化。条件可以说明实例的进 展,被用来确定哪些任务已被执行,哪些没有被执行,哪些任务可以被执行等。实例 的内容通常存储在文件或数据库中,它不属于工作流系统的管理范畴。 2 1 2 任务、工作项和活动 任务是一个不可分割的工作单元,具有a c i d 特性。任务的原子性依赖于它所定 义的环境。任务通常有手动的( 完全由人来执行) 、自动的( 无需人员干涉即可执行) 和半自动的。工作项是实例和即将要执行的任务的结合体。只要实例状态允许,工作 项即可被创建。工作项可以被看作是要被执行的实际工作块。活动指的是工作项的实 际执行。和任务不同,工作项和活动都同具体的实例相关。 2 1 3 过程 一个过程由许多要被执行的任务和一系列决定任务执行次序的条件构成。它描述 了某种类型的实例的执行方式,定义了案例的生命周期。通常一个过程可以用来处理 7 太原理工大学硕士研究生学位论文 多个不同的实例,根据实例属性采取不同的措施,例如过程中的某些任务只能在某些 特定的实例上执行。 我们可以使用以定义的过程作为另一过程的一部分。因此,除任务和条件外,过 程也可能由子过程组成。每个子过程又由它的任务、条件已经可能更细致的子过程组 成。 2 1 4 路由 为了描述任务的执行次序,我们引入4 中基本的路由结构: ( 1 ) 顺序路由。任务按顺序被一个接一个地执行。通常在这些任务之间存在清 晰的依赖关系,例如前一个任务的输出结果是后一个任务的输。 ( 2 ) 并行路由。两个任务可以被同时或者以任意次序执行,都要执行且互不影 响。这两个任务开始于a n d s p l i t 结点,随后重新同步于a n d - j o i n 结点。 ( 3 ) 选择路由。两个或更多任务间存在选择,该选择可能依赖于实例属性的值。 选择路由开始于o r s p l i t 结点,随后汇合于o r j o i n 结点。 ( 4 ) 循环路由。理想情况下,对于每个实例,一个任务的执行次数都不超过1 。 然而有时候需要多次反复执行某个任务,知道满足一定条件为止。 2 1 5 触发 当实例状态允许时,一个工作项可以被执行。但是工作项的执行还需要其他的条 件。如果某工作项是由人来执行的,那么当他将工作项从工作列表中取出来以后,活 动才能开始。所谓触发,就是指工作项被一个资源启动后才能开始执行从而转化为活 动。资源分为三类:( 1 ) 资源驱动:( 2 ) 外部事件:( 3 ) 时间信号。如果工作项不需 要外部激励并总是被立即执行,则不需要触发。 2 1 6 资源 业务过程中任务的执行离不开资源,行政办公环境中的文员,医生、打印机或者 8 太原理工大学硕士研究生学位论文 是一个软件系统都可以作为资源的例子。资源的基本特征是:它可以执行任务。通常, 工作流系统会给每个资源一个唯一的标识,并限定资源的工作能力为1 ,也就是任何 一个资源在任何给定的时间内不能在多个活动上工作。 在工作流系统中注册的资源被根据其职能特征和所属的组织机构进行分类。基于 职能特征划分出的资源类称为角色,通过角色和任务的正确链接,系统可以确保资源 具备相应的资格执行特定任务;基于组织结构划分出的资源类成为组织单元,这种划 分方式可以确保任务在组织的正确位置中得到执行。在过程定义中给每个任务提供一 个资源分配原则,这个原则同时指明资源所属的角色和组织单元。 2 1 7 回滚 类似变迁的实施,活动( 一个特定实例的任务的实际执行) 是一个原子单元。因 此它总是被作为一个整体执行。但在与这个活动相关的任务的执行期间可能会发生故 障。比如,一个资源( 如一个雇员) 出于某种原因中断了活动,雇员也许会发现任务 执行所需的数据丢失了,再比如,活动使用的某个应用程序在执行期间崩溃了等等h 另外,活动执行过程中,也可能由于系统错误导致工作流管理系统本身出现异常。 所有这些情况都需要回滚,所谓回滚就是让工作流管理系统返回活动开始前的状 态。回滚后,活动可以重新开始。只有当活动已经成功完成以后才能提交所有发生的 变化。过程的回滚操作起来比较简单:实例的属性和所有有效条件都返回到它们的原 始值【l “。但是应用程序的回滚可能会非常复杂。 2 2p e t r i 网简介 2 2 1 经典p e t r i 网 1 9 6 2 年德国的c a p e t r i 博士在研究自动机通信时,提出了一套形式化的建模方 法,在当时引起了学术界的广泛关注,这种建模方法用他的名字命名为p e t r i 网“”。 p e t r i 网以并发论、网逻辑和网拓扑为主要内容,它同时具有充分的模拟能力和丰富 的分析方法。一方面,作为一种图形工具,p e t r i 网除了具有类似流程图等的可视描 9 太原理工大学硕士研究生学位论文 述功能外,还可以通过托肯( t o k e n ) 的流动模拟系统的动态行为:另一方面,作为一 种数学工具,p e t r i 网可以建立关联矩阵、状态方程和p t 一不变量等来描述系统的结 构特征。 经过四十多年的发展,p e t r i 网理论已被广泛应用于许多领域“”,如计算机网 络的性能分析、分布式计算机系统的分析和控制以及在软件工程、分布式数据库、操 作系统、并行程序的设计与验证、人工神经网络、知识表示中的应用等。同时,p e t r i 网也被广泛应用在自动化、机械制造、系统控制和军事指挥等学科领域。 在p e t r i 网中用库所( p l a c e ) 表示状态,用变迁( t r a n s i t i o n ) 表示状态的变 化。库所用圆圈表示,变迁用矩形表示,库所和变迁用有向弧连接,库所中可以容纳 用黑点表示的托肯。如图2 一l 所示。 图2 - 1 经典p c tr i 网 f i g 2 1c l a s s i c a lp e t r in e t 图2 1 所示是一个简单的p e t r i 网,它由三个库所( c l a i m ,u n d e r c o n s i d e r a t i o n , r e a d y ) 和三个变迁( r e c o r d ,p a y ,s e n d l e t t e r ) 组成。这个网对保险索赔过程进行 了建模。一个索赔到达库所c l a i m 时,首先被记录下来,随后选择进行赔偿或发送信 件说明拒绝理由。库所c l a i m 和变迁r e c o r d 被一个从前者指向后者的箭头连接。在 p e t r i 网中共有两种类型的弧,从变迁到库所或者从库所到变迁,从变迁到变迁或者 从库所到库所的弧是不允许的。 基于弧,我们可以确定变迁的输入库所。库所p 是变迁t 的输入库所,当且仅当 从p 到t 存在一条有向弧。类似的我们可以确定变迁的输出库所。库所可以容纳托肯, 托肯用黑店表示。图2 1 中库所c l a i m 中有3 个托肯,p e t r i 网结构是固定的,而库 所中托肯的分布是可变的。变迁r e c o r d 从输入库所c l a i m 中获取标记,然后放到输 1 0 太原理工大学硕士研究生学位论文 出库所u n d e r c o n s i d e r a t i o n 中,我们把这一行为称为对变迁r e c o r d 的实施 ( f i r i n g ) 。如图2 2 所示。 图2 - 2 变迁的实施 一 埏2 2t r a n s i t i o n 。f i r i n g p e t r i 网的状态用库所中托肯的分布来描述,图卜1 的状态可以用向量( 3 ,0 ,0 ) 来描述。换句话说,c l a i m 中有三个托肯,而u n d e r c o n s i d e r a t i o n 和r e a d y 中一个 也没有。 变迁只有在满足可实施的条件才能实施。这个条件就是变迁的每个输入库所都至 少有一个托肯,这时可以说这个变迁是就绪的,在图2 1 中,只有变迁r e c o r d 是就 绪的,其他两个都不是。变迁实施时,从它的每个输入库所取走一个托肯,并往它的 每个输出库所都增加一个标记,图2 2 显示了变迁r e c o r d 实施一次以后的效果。 一个托肯从库所c l a i m 转移到库所u n d e r c o n s i d e r a t i o n 。我们用向量( 2 ,1 ,0 ) 描述新的状态。一旦r e c o r d 被实施,3 个变迁都将处于就绪状态。因为库所c l a i m 中至少还有一个托肯,变迁r e c o r d 可以被再次实施。由于库所u n d e r c o n s i d e r a t i o n 中有一个托肯,所以变迁p a y 和变迁s e n d _ l e t t e r 都可以被实施。最终经过六次实施, 这个网的状态就达到( 0 ,0 ,3 ) 。测试r e a d y 中有3 个托肯,不再有变迁能够被实施, 所有的保险索赔处理结束。 1 】 太原理工大学硕士研究生学位论文 变迁是p e t r i 网中的主动元素。经过变迁的实施,过程( 网) 从一个状态转变到 另一个状态。因此变迁经常表示事件、操作、转换或传输。库所是p e t r i 网中的被动 元素,他们不能改变网的状态,库所通常表示媒介、缓冲、阶段或条件。托肯通常表 示具体的实物,也可表示抽象信息,上面讨论中每个托肯表示一个保险索赔实例。 2 2 2 扩展p e t r i 网 p e t r i 网是图形化的,容易理解和使用,同时,它也基于坚实的数学基础,有很 多有效的分析技术。然而在一些实际情形下,传统p e t r i 网会暴露出一些缺点,比如, 它会变得很庞大而难以理解,或者它不能对某些隋形建模。因此人们以多种方式对传 统p e t r i 网进行了扩展,本节关注和工作流相关的扩展。 2 2 2 1 颜色扩展 在保险索赔的例子种,每一个托肯代表一个保险索赔实例。通常每个实例有着不 同的属性,比如索赔的性质、保险客户姓名等。我们希望在同一个模型中处理这些不 同的实例,而传统p e t r i 网不能区分两个托肯。为此,用“颜色”对传统p e t r i 网进 行扩展”,这种扩展确保每个托肯都被提供一个值,即颜色。有了这个值,托肯可以 被区分。在实际系统中,实例的唯一标识即对应着这里的“颜色”。 变迁实施所产生的托肯取决于实施变迁时被消耗的托肯的值,与传统p e t r i 网不 同,生产的托肯的数目也是变化的,即生产的标记数目由被消耗的托肯的“颜色”决 定。 图2 - 3 故障处理过程 f i g 2 - 3m a l f u n c t i o nm a n a g e m e n tp r o c e s s 1 2 太原理工大学硕士研究生学位论文 以下面的一个生产部门中处理技术故障的过程为例。每次故障发生时,部门修理 师首先要对故障进行分类。很多故障在分类的时候就能解决。否则,需要进行修理。 修理结束后,执行测试,测试后有三种可能:故障被解决;需要进一步修理;故障不 见需要更换。该过程的p e t r i 网模型如图2 3 所示。 库所s t a r t 中的托肯说明故障已经发生需要处理。对于库所s t a r t 中的每个托肯, 变迁c a t e g o r i z e 正好实施一次。每次实施时,都会有一个托肯产生在e n d 或n r 中。 与经典p e t r i 网不同,输出库所可能得不到托肯。在变迁c a t e g o r i z e 执行期间,在 当前可用的信息的基础上进行选择,结果是故障被解决或者需要修理。库所s t a r t 中的托肯的值( 颜色) 记录了故障的相关属性( 如失效组件的标识,故障历史等) 。 如果需要修理,变迁r e p a i r 就会被实施。然后送一个托肯到n t ,接着变迁t e s t 被 实施。变迁t e s t 也恰好产生一个托肯,该托肯会出现在三个输出库所之一! 在经过颜色扩展的p e t r i 网中,可以为要消耗的托肯的值设置前提条件。即只有 当变迁的每个输入库所中都有一个托肯并且前提条件满足时变迁才能就绪。一个变迁 的前提条件时同将要消耗的库所的值相联系的逻辑需求。例如图2 - 3 所示的过程中, 我们可以给c a t e g o r i z e 增加如下前提条件:“从库所s t a r t 中消耗的托肯的值必须包 j 含一个有效的失效组件标识”。这样一个没有有效组件标识的故障永远不会被分类。 我们也可以使用前提条件来“同步”托肯。也就是说只有当托肯的特定组合被消 -_ 耗时,变迁才能够被实施。我们使用图2 4 所示的装配变迁来阐述这个问题。 图2 - 4 装配变迁 n g 2 - 4a s s e m b l et r a n s i t i o n 根据生产指令,变迁a s s e m b l e 取一个引擎和四个轮子来组装成一辆汽车。它的 1 3 太原理工大学硕士研究生学位论文 输入库所w h e e l 有四条弧指向它,这样,只有当库所w h e e l 中存在至少四个托肯时, 变迁a s s e m b l e 才能就绪。变迁实施时消耗的托肯数量等于输入弧的数量。在本文所 设计的工作流引擎系统中,创造性的引入弧的权重来处理这种问题,比如从库所 w h e e l 到变迁a s s e m b l e 只用一条弧,弧的权重是四,这样方便了处理。库所
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 调度培训考试题及答案
- (正式版)DB15∕T 3358-2024 《绵羊腹腔镜活体采卵技术规程》
- 电厂脱销考试题及答案
- 团队成员任务分配与跟踪管理模板
- 企业法律事务处理与合规管理模板
- 工业用材料进销存管理软件开发协议
- 高科技设备采购与技术支持协议
- 我的老师让我感动记叙文题写作(8篇)
- 音乐鉴赏之古典音乐之美:高中艺术教育教案
- 《五年级数学图形变换与代数方程解法》
- (7.2.2)-7.2啦啦操音乐创编的流程与方法
- GB/T 212-2008煤的工业分析方法
- 冀教版8年级上英语各单元语法课件
- 大班科学《玩转扑克牌》课件
- 高速公路改扩建桥梁拼宽施工技术及质量控制
- 双台110kV主变短路电流计算书
- DB1750-2019水电站(厂)防雷与接地性能测试技术规范
- 牛常见病防治课件
- 危险物品储存安全隐患排查整治表
- 装饰工程保修单
- IInterlib区域图书馆集群管理系统-用户手册
评论
0/150
提交评论