(计算机应用技术专业论文)基于构件的动态工作流建模方法研究.pdf_第1页
(计算机应用技术专业论文)基于构件的动态工作流建模方法研究.pdf_第2页
(计算机应用技术专业论文)基于构件的动态工作流建模方法研究.pdf_第3页
(计算机应用技术专业论文)基于构件的动态工作流建模方法研究.pdf_第4页
(计算机应用技术专业论文)基于构件的动态工作流建模方法研究.pdf_第5页
已阅读5页,还剩60页未读 继续免费阅读

(计算机应用技术专业论文)基于构件的动态工作流建模方法研究.pdf.pdf 免费下载

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

文档简介

基于构件的动态工作流建模方法研究 摘要 工作流技术发展到今天,随着实际应用的不断深入,人们对其提出了更多的 功能要求,其中一个主要问题是工作流系统的动态性和灵活性。传统的工作流, 其工作过程分成两个阶段,即建立阶段和运行阶段。建立阶段是对一个工作流程 进行定义,运行阶段是工作流执行服务对工作流定义进行解释执行。但是一个工 作流程在运行阶段会因为外部环境或者用户要求的变化而发生变化,因此,传统 的工作流系统因缺乏动态性和灵活性,在实际应用中具有一定的局限性。如何使 工作流系统具备灵活的动态性和自适应能力已成为目前工作流管理系统研究的 一个热点。 为了解决传统工作流系统在动态性方面的不足,本文在深入分析国内、外对 工作流动态性研究的基础上,把构件思想引入工作流建模过程,提出了一种全新 的工作流建模方法;提出了工作流构件的概念,对工作流构件进行了形式化描述 和分类,通过工作流构件库对其进行统一的管理;以工作流构件作为工作流模型 的主要组成元素,详细介绍了基于构件的工作流模型的组合策略和正确性检验标 准;设计出了基于工作流构件库和工作流模型库的可以显著提高系统动态性的工 作流动态修改体系结构。 对工作流的动态修改要求进行了研究,把对工作流的动态修改要求分为工作 流模型建立、工作流实例执行两个修改阶段和工作流结构、工作流活动两种修改 对象,然后分别论述了基于工作流构件的工作流模型对不同情形下的动态修改要 求的支持,包括修改方法、修改步骤、正确性验证和迁移策略等。 本文最后给出了基于工作流构件的某i t 公司计算机网上销售过程的工作流 建模示例,证明了这种工作流建模方法的可行性和正确性,并论述了该方法在增 强模型描述能力、提高系统的动态性和适应性、增加系统的稳定性和可扩展性等 方面具有的优越性。 关键词:工作流:工作流模型;工作流管理系统;动态修改;构件 r e s e a r c ho nm o d e ii n gf o rd y n a m i cw o r k f i o w b as e do nc o m p o n e n t a b s t r a c t w i t ht h ep r a c t i c a la p p l i c a t i o no fw o r k f l o wt e c h n o l e d g e ,p e o p l em a k em o r e f u n c t i o n a lr e q u i r e m e n t s ,a n do n eo ft h em a i np r o b l e m si st h ed y n a m i ca n df l e x i b i l i t y o fw o r k f l o ws y s t e mi nt r a d i t i o n a lw o r k f l o w , t h ep r o c e s so fw o r ki sd i v i d e di n t ot w o s t a g e s ,n a m e l yt h ee s t a b l i s h m e n tp h a s ea n dt h eo p e r a t i o n a lp h a s e b u i l d i n gp h a s ei st o g e taw o r k f l o wd e f i n i t i o n ,a n dt h eo p e r a t i o n a lp h a s ei st h ei m p l e m e n t a t i o n o f w o r k f l o wo p e r a t i o n a ls e r v i c e st oi n t e r p r e t ea n dr u nw o r k f l o wd e f i n i t i o n h o w e v e r , a w o r k f l o wi nt h er u n n i n gs t a g ew i l lc h a n g ef o rt h ee x t e r n a le n v i r o n m e n tc h a n g i n go r c h a n g e si nu s e rr e q u i r e m e n t s ,a n dt h e r e f o r e ,t h et r a d i t i o n a lw o r k f l o ws y s t e mh a sa c e r t a i nl i m i t a t i o n si nt h ep r a c t i c a la p p l i c a t i o nf o rl a c ko fd y n a m i ca n df e x i b i l i t y h o w t om a k ew o r k f l o ws y s t e mw i t hf l e x i b l ea n da d a p t i v e c a p a c i t yh a sb e c o m eah o t r e s e a r c hi nd y n a m i cw o r k f l o wm a n a g e m e n ts y s t e mc u r r e n t l y f o rs o l v i n gt h ed y n a m i cp r o b l e mi nt r a d i t i o n a lw o r k f l o ws y s t e m ,t h i sp a p e rr a i s e s an e ww o r k f i o wm o d e l l i n gm e t h o d w i t ht h eg u i d a n c eo fc o m p o n e n tt e c h n o l o g y , r a i s e saw o r k f l o wm o d e l l i n gs y s t e ma r c h i t e c t u r ew i c hs i g n i f i c a n t l ye n h a n c e st h e d y n a m i cc a p a b i l i t ya n dd e s c r i b t i o nc a p a b i l i t yo fw o r k f l o wm o d e l sb yi n t r o d u c i n g c o m p o n e n tt h o u g h t t h ec o n c e p to fw o r k f l o wc o m p o n e n ti sr a i s e d ,d e s c r i p tt h e f o r m a l i z e dd e s c r i p t i o na n dc l a s s i f i c a t i o no ft h ew o r k f l o wc o m p o n e n t s ,t h r o u g ht h e w o r k f l o wc o m p o n e n td a t a b a s ed ou n i f i e dr e g i s t r a t i o n ,a d d i t o n ,d e l e t i o n ,o rq u e r y o p e r a t i o n s ;m a k i n gw o r k f l o wc o m p o n e n t sa s am a j o rc o n s t i t u e n te l e m e n t s ,d e t a i l s w o r k f l o wm o d e l l i n gm e c h a n i s m sw o r k f l o wm o d e l sc o r r e c t n e s st e s t c h a n g i n gr e q u i r e s o fd y n a m i c si nw o r k f l o w sa r es t u d i e da n dc l a s s i f i e d ,t h e r e q u i r e sa r ed i v i d e di n t o t w os t a g e s ( t h ee s t a b l i s h m e n tp h a s ea n dt h eo p e r a t i o n a l p h a s e ) a n dt w oo b j e c t s ( t h ew o r k f l o ws t r u c t u r ea n dt h ew o r k f l o wa c t i v i t i e s ) t h e n e x p o u n dt h es u p p o r t sf o rt h ed y n a m i cc h a n g e sf o rd if f e r e n tc i r c u m s t a n c e sb a s e do n w o r k f l o wm o d e l l i n ga r c h i t e c t u r eb a s e do nw o r k f l o wc o m p o n e n t s ,i n c l u d i n gc h a n g e s i nm e t h o d o l o g i e s ,c h a n g e ss t e p s ,a n dc o r r e c t n e s so ft h ec e r t i f i c a t i o na n dt r a n s f e r s t r a t e g i e s i nt h ef i n a ls e c t i o nm a k eaw o r k f l o wm o d e lb a s e do nw o r k f l o wc o m p o n e n t s a b o u ta ni tc o m p a n yi nt h eo n l i n es a l e sp r o c e s sa sa ne x a m p l e ,a n dd i s c u s st h e s u p e d o f i ty ,f e a s i b i l i t y a n da c c u r a c yi nt h i sw o r k f l o wm o d e l l i n gm e t h o d s ,a n d a d d r e s s e st h ep r a c t i c a la p p l i c a t i o no f t h em e t h o d o l o g y k e yw o r d s :w o r k f l o w ;w o r k f l o wm o d e l ;w o r k f l o wm a n a g e m e n ts y s t e m ; d y n a m i c ;c o m p o n e n t 独创声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研究成果。 据我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写 过的研究成果,也不包宙未获得( 篷! 垫遗直基他盂蔓挂别虚明 的:奎拦卫窒2 或其他教育机构的学位或证书使用过的材料。与我一同工作的同志对本研 究所做的任何贡献均已在论文中作了明确的说明并表示谢意。 学位论文作者签名:支j 纸 签字日期:p 。6 年j 月巧e q 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,有权保留并向国家有 关部门或机构送交论文的复印件和磁盘,允许论文被查阅和借阅。本人授权学校可以将学 位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手 段保存、汇编学位论文。( 保密的学位论文在解密后适用本授权书) 学位论文作者签名:划献 导师签字 签字日期:工。o i 年5 月坫日 签字日期: 影彩 错多月毋 , 学位论文作者毕业后去向:上遇 工作单位:弼吝己线肚内) 甜才支南限幺司 e g i i i :啦卜5 i 。口5 b ( 通讯地址:上淹诫寿、新e 龙惹趣喁岁与磺1 层 邮编p l j 。, 基于构件的动态工作流建模方法研究 1绪论 1 1课题背景 在市场竞争日趋激烈的情况下,企业纷纷建立企业信息系统来辅助企业业 务活动,以期提高企业的工作效率,改善企业的经营管理水平,降低企业的生产 成本,加快企业对市场变化的反应速度,从而在竞争中占得有利地位。但是,传 统的企业信息系统多以数据为中心,主要着眼于企业内部业务过程的计算机实 现,通过对业务过程提供计算机辅助支持,以期提高单个人的工作效率,而对企 业内需要多人或多个部门协作完成的业务过程的支持不足,因此对提高企业整体 的生产效率的作用是有限的。 工作流管理技术正是从通过提高企业整体协作效率来提高企业生产效率的 角度出发,以企业业务过程为核心,以对企业的业务过程的过程逻辑为基础,不 仅提供对业务过程中的单个活动的支持,而且对活动之间的联系提供自动化或半 自动化的支持。因此,在企业信息系统中采用工作流管理技术,可以减少业务过 程中间环节的人为因素,提高活动之间的协调和控制的效率,从而达到企业整体 业务过程效率的最大化。 1 2 研究动态工作流建模方法的必要性 在目前的工作流系统中,首先需要通过工作流建模工具来定义工作流模型, 然后将该模型提交给工作流引擎,工作流引擎解释提交的工作流模型,并形成用 户界面和接口,来控制工作流的执行过程。 这种工作流的运行模式存在以下缺点: 第一我们在建立工作流的模型的时候,如果工作流比较简单且流程固定, 我们有可能预知所有的步骤及实现手段,那么模型中就可能对这些步骤、手段进 行充分的描述。但是,在现实中,工作流往往会很庞大和复杂,这就导致了我们 不可能预知所有的控制步骡。 耩于构件的动态工作流建模方法研究 第二即使我们预知了所有的控制步骤和手段,我们也并不一定知道是否应 该把它包括进一个具体的工作流中去。现实中,在一个过程的某个特定点需要多 个不同的实现途径是很正常的。然而他们中的某一个真正被使用的机会是很小 的。如果我们在制订工作流的时候就预先制订了所有的可能途径,那就会使工作 流模型过于庞大,而且会降低可读性。 因此,我们只能为最有使用可能的途径建模,而不是预先定义所有可能的路 径。为了应付一个所需的执行途径没有被事先建模的情况,一个新的执行途径必 须可以随时加到工作流中去。 第三并不是所有的时候,总有可能或希望指定模型中的执行步骤的顺序。 有时候过程是在不断实践中前进的,预先定义控制步骤是没有意义的。 第四将现实世界映射到工作流模型很容易出错。正是由于我们无法保证工 作流模型的绝对正确,工作流执行的时候必须有被修改的可能。 由此可以看出,传统的工作流的运行模式比较适合经营过程执行逻辑事先 可以确定的情况,对于在企业中存在着大量的执行逻辑无法事先确定的半结构化 和非结构化的经营过程,这种集中式的定义方式和执行过程就成为一种低效的过 程。由于这种静态模型定义的方式,使得工作流系统不能灵活地根据实际情况进 行工作流逻辑的更改,不能适应企业经营过程的变化,不能响应市场敏捷性的要 求。 归纳起来,引入动态工作流建模方法的主要原因为: 第一工作流模型的改进 通过实施b p r ( b u s i n e s sp r o c e s sr e d e s i g n ) 工程,或者通过系统提供的工作 流分析工具发现工作流定义的错误和不足之处或者企业的业务流程发生变化,企 业的工作流模型可能需要更改,以提高运作效率和适应现实的改变。这种贯穿工 作流模型生命周期的更改,是引入动态工作流建模方法的一个重要原因。 第二工作流执行时的实例修改 工作流在执行时往往会遇到许多可预见或不可预见的错误或事件,对于这 些情况,很难在工作流模型中定义,较好的解决方案就是允许用户动态修改工作 流实例,使之不一定按照规定的模式运行。 第三工作流用户的要求 批于构件的动态工作流建模方法研究 一个工作流通常不能适应企业所有的要求,往往需要根据用户的变化对工 作流作适当的调整,以适应特定用户、特定项目的要求,这样可能存在同一工作 流模型的不同运行实例,用户在工作流运行时可以作出自己的客户化修改,这也 导致我们必须实现工作流的动态性。 1 3 国内外研究现状 1 3 1 流程建模方面的研究 在流程建模方面,国内外的许多学者提出了相应的理论:文献“1 提出基于卡 片的工作流模型;文献借鉴p e t r i 网的一些思想提出基于信牌的工作流计算模 型:文献“1 提出了基于对象p e t r i 网( o b j e c tp e t r i n e t ,o p n ) 和基于o p n 的文本描 述语言l o o p n + + t 作流过程定义接口标准;文献”1 给出了一种活动树( a c t i v i t y t r e e ) 的模型,它是以一个树状结构来表达工作流过程的。从根节点开始,过程 被逐层地分解为由各级子节点所代表的活动,而活动间的执行顺序则是由左至右 逐个分支地进行。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 2 支持动态行为的建模研究 国内外许多学者在支持工作流动态性建模方面也进行了许多工作:文献m “ 在建模方法中把活动分为上下文相关行为和上下文无关行为,其中把自身行为和 嵌套行为合在一起称为上下文无关行为。但是很难对嵌套的同步、异步等细粒度 协作行为建模,且模型的描述方式也未基于x m l 语言给出,不易实现流程的互 操作。 文献“1 给出了m e i uf 1o w n n n 支持的a c t a 定义的7 种行为: 基于构件的动态工作流建模方法研究 b e g i n o n c o m m i t 、b e g i n o n a b o v e 、c o m m i t 、c o m m i t - o n a b o v e 、a b o v e 、 a b o v e o n c o m m i t 、b e g i n 。系统虽然不仅仅支持一种固定的控制行为类型,但 我们认为它是一种基于穷举法来定义流程动态行为的方法,仅适用于对简单环境 建模。 文献n 仉12 1 通过引入c h o i c e m e r g e 和x 0 r s p l i t i l l 等结构,将流程中所 有可能路径定义到流程模型中。其缺点在于,流程模型过于庞大而不易理解。此 外,这种方法只有在事先知道不确定因素的所有情况之后,才能进行定义,而对 动态流程来说,这往往是不现实的。 为了避免该方法的局限性,研究人员“3 “1 提出了黑盒、口袋等方法。这类 方法都是在流程模型中引入新的元素( ! t l j b l a c k b o x ,p o c k e t 等) ,在流程建模阶段 用这些元素对流程中的不确定因素进行封装。该方法避免了流程定义过于庞大复 杂的缺点,在一定程度上支持了动态流程;但这种方法在流程模型定义中引入了 新的元素,加大了流程模型的复杂度。此外,研究人员“3 1 “1 没有考虑在流程 实例运行过程中,对新加入元素进行展开时的合理性问题,没有定义一套规则来 约束展开过程。 基于e c a ( e v e n t c o n d i t i o n a c t i o n ) 规则和活动组合的动态工作流模型“无 需加入新元素,就可以对不确定因素进行封装。为了保证动态性活动展开过程的 合理性,引入了一套规则机制来约束展开过程。但是该模型忽略了选取规则和组 合规则本身可能存在的矛盾,没有提供检验规则合法性、解决规则矛盾的策略。 文献“”针对目前工作流管理系统在描述能力和动态性上的不足,提出了一 种基于协调理论和反馈机制的工作流建模方法。该方法扩展了传统活动网络模 型,增加了请求、服务、协调、多实例化等建模元素:该模型提供了流程建模的 动态性,但存在建模的方式不太直观、流程的有效性很难验证的缺点。 1 4 课题研究的主要内容及意义 本文把构件思想引入工作流建模过程,提出了一种基于工作流构件的工作 基于构件的动态工作流建模方法研究 流建模机制,并在此基础上论述了该工作流模型的对动态修改的支持。 课题研究的主要内容包括: 提出工作流构件的概念,并对其进行了形式化描述和分类; 以工作流构件为主要组成元素,提出了基于构件的工作流建模方法; 设计出了一个基于工作流构件库和工作流模型库的可以对工作流进行 动态修改的体系结构; 对工作流的动态修改要求进行分类,并分别论述了该工作流模型对其的 支持情况; 详细阐述了对工作流模型的修改方法、修改步骤、迁移策略和正确性检 验标准。 本课题研究的意义在于把构件思想引入工作流建模过程,提出了一种全新 的基于工作流构件的工作流建模方法,解决了长期以来一直未能有效解决的工作 流动态性和适应性方面不足的问题。本文提出的建模方法具有描述能力强、模型 直观简单、动态性强、易于扩展和复用、稳定性好、适应性强等优点,在此建模 方法的基础上设计与开发实用性好、可靠性高和处理不确定性能力强的动态工作 流管理系统将具有非常广泛的应用前景。 2 工作流技术概述 2 1 工作流研究的背景及概念 2 1 1 工作流问题的起源及发展 工作流是从英文单词w o r k f l o w 翻译得来的,它表示的是可用活动及活动之 间变化的过程描述的业务流程。工作流的概念起源于生产组织和办公自动化领域 ”。它是针对日常生活中具有固定程序的活动而提出的一个概念。提出的目的 是通过将工作分解成定义良好的任务、角色,按照一定的规则和过程来执行这些 任务并对它们进行监控,达到提高办事效率、降低生产成本、提高企业生产经营 管理水平和企业竞争能力的目标。实际上,自从进入工业化时代以来,有关过程 基于构件的动态工作流建模方法研究 的组织管理与流程的优化就一直在进行,这些工作是由人工来完成的。在计算机 网络技术和分布式数据库技术迅速发展、多机协同工作技术日趋成熟的基础上于 2 0 世纪8 0 年代中期发展起来的工作流技术为企业更好的实现这些经营目标提供 了先进的手段。工作流技术一出现马上就得到了广泛的重视与研究。至今工作流 管理技术已成功地运用到图书馆、医院、保险公司、银行等行业,然而它更重要 的应用还是在工业领域,特别是在制造业领域中。 在企业实际应用中,虽然工作流的概念相对于物料流、资金流、信息流等概 念要抽象一些,但是工作流从更高的层次上提供了实现物料流、资金流、信息流 及其涉及的相关过程与应用的集成机制,从而使得企业能够实现业务过程的集 成、业务过程的自动化( 不是物流自动化和信息处理自动化) 与业务过程的管理。 在工作流概念下实现业务过程继承与业务过程自动化的集成机制是通过定义不 同任务之间相互关系的工作流模型( 也称过程模型) 来实现的。在工作流模型中, 无论是具体的物料转移动作、实际的物理装置动作,还是抽象的信息处理动作与 决策过程,都可以用工作流的基本组成元素任务( 也称为活动) 来统一地进 行描述。同样,反映不同任务之间的关系,无论是具体的车间中零件的加工顺序 关系、办公自动化中的文件批转,还是抽象的决策流之间的关系都可以用工作流 的基本组成元素连接弧来统一的进行描述。连接弧反映了对企业业务经营过 程的一种控制逻辑,它定义了活动之间的连接关系和执行顺序。 传统的企业计算机管理信息系统的主要功能有三个,即信息处理、事物处 理与决策支持。信息传递和信息处理构成了企业和行政管理部门的业务工作中的 主要内容之一,也是计算机管理信息系统的主要功能之一,它是企业进行事物处 理的经营决策的基础。在信息传递和信息处理结果的基础上,各级领导进行相应 的决策活动,这些决策活动决定了企业业务的开展方式和经营战略。如何方便地 在不同的业务部门、业务人员之间高效地进行信息传递是企业领导、业务人员、 包括现在计算机软件开发人员十分关心的问题。由于信息需要一定的载体和方法 才能够实现有效的传递,在计算机软件没有成为主要的业务支持工具之前,实现 信息传递最好的方式是通过纸张作为载体,利用通知、文件、信函、传真、报告 等方式在不同的业务部门、业务人员之间进行。 这种以传统的纸张为载体的信息传递与处理方式的效率很低,需要花费相当 基于构件的动态工作流建模方法研究 大的人力、物力来完成信息的处理、组织、存储以及查询检索,同时这种方式降 低了对客户需求的响应速度,给企业的生产经营带来了不利的影响。在计算机得 到了相当广泛的普及和企业的计算机应用水平日益提高的情况下,企业业务人员 希望能够以一种无纸化的、计算机使能的工作环境来开展其日常的业务工作。一 些公司和企业因此建立了自己专用或者可商品化的表单传递应用系统 ( f o r m r o u t i n ga p p l i c a t i o n s ) 用来实现日常表单处理的电子化与自动化。这些系 统通常是以主机终端方式运行在大型机或者小型机上,用户通过终端运行位 于主机上的应用程序,它们可以看成是现在工作流管理系统的雏形,只不过它所 适用的环境还比较简单,所提供的功能还不全面,性能和系统的结构还不够先进。 八十年代中期,f i l e n e t 、v i e w s t a r 等公司率先开拓了工作流产品市场,成 为最早的一批工作流产品供应商。他们把图像扫描、复合文档、结构化路由、实 例跟踪、关键字搜索以及光盘存储等功能结合在一起,形成了一种全面支持某些 业务流程的集成化的软件,这便是早期的工作流管理系统。它们的出现使得许多 企业很快认识到在业务流程的处理过程中,纸张有可能只出现一次,即承载文档 的纸张在流程的起始处将首先被扫描成电子文档,继而对后续文档的处理过程也 将全部实现电子化。如果流程的输入本身就是电子化文档,那么自始至终在系统 中所传递的将完全是存储在计算机磁盘中的数据。很显然,这种集成化的软件系 统为企业简化与重组自己的关键业务流程提供了一种非常好的方法。由此我们还 可以看出,工作流从最初的诞生之日起就作为一种面向过程的系统集成技术而出 现的,只不过限于当时的计算机发展水平,它所集成的功能较为简单而已。 进入2 0 世纪9 0 年代,随着计算机与网络技术的迅速发展,特别是在 i n t e r n e t 应用日益普及的情况下,现代企业的信息系统的分布性、异构性和自 治性特征越来越显著,相应的企业信息资源也分布在异构的计算机环境中,信息 源之间的连接表现出松散耦合的特点。在这种形势下,工作流管理系统也由最初 的创建无纸化办公环境,转而成为同化企业复杂的信息环境、实现业务流程自动 执行的必要工具。这样的一个转变,把: 作流技术带入了一个崭新的发展阶段, 使得人们从更深的层次、更广的领域对工作流展开的研究。 如今,在全球范围内,对工作流的技术研究以及相关产品的丌发进入了更为 繁荣的阶段,更多更新的技术被集成进来,文件管理系统、数据库、电子邮件、 基于构件的动态工作流建模方法研究 移动式计算、i n t e r n e t 服务等都已被容纳到工作流管理系统之中。作为支持 企业经营过程重组( b u s i n e s sp r o c e 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 sa u t o m a t i o n ,b p a ) 的一种手段,工作流技术的研 究应用日益受到学术界与企业界的重视。 2 1 2 工作流的基本概念和定义 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 在工作流管理系统的相关术语、体系结构以及应用编程接口( w a p i ) 等方面 制定了一系列的标准。 工作流管理联盟对工作流定义是:工作流是指整个或部分经营过程在计算机 支持下的全自动或半自动化。在实际情况中可以更广泛地把凡是由计算机软件系 统( 工作流管理系统) 控制其执行的过程都称为工作流“。 工作流是经营过程的一个计算机实现,使用工作流作为经营过程的实现技术 首先要求工作流系统能够反映经营过程的如下几个方面的问题:即经营过程是什 么( 由哪些活动、任务组成,也就是结构上的定义) 、怎么做( 活动间的执行条 件、规则以及所交互的信息,也就是控制流与信息流的定义) 、由谁做( 人或者 计算机应用程序,也就是组织角色的定义) 、做得怎样( 通过工作流管理系统对 执行过程进行监控) 。 2 2工作流管理系统 在明确了工作流基本概念的基础上,下面介绍工作流管理系统的定义。 w f m c 给出的关于工作流管理系统的定义是:工作流管理系统是一个软件系统, 它完成工作流的定义和管理,并按照在计算机中预先定义好的工作流逻辑推进工 作流实例的执行。 工作流管理系统是运行在一个或多个工作流引擎上,用于定义、实现和管 理工作流运行的一套软件系统”。它是定义工作流模型、建立工作流实例和管 理工作流执行的系统,它通过运行一个或多个叫做工作流引擎的软件来解释过程 基于构件的动态工作流建模方法研究 定义,与工作流的参与者( 人或应用程序) 交互,推进工作流实例的执行,并监 控工作流的运行状态。可以利用工作流管理系统将现实世界中的业务过程转化成 计算机化的形式表示,并在此形式表示的驱动下完成工作流的执行和管理。 在很大程度上,工作流管理系统为企业的业务系统运行提供了个软件支 撑环境,非常类似于在单个计算机上的操作系统。只不过工作流管理系统支撑的 范围比较大、环境比较复杂而己,所以也有人称工作流管理系统是业务操作系统 ( b o s b u s i n e s so p e r a t i n gs y s t e m ) 。在工作流管理系统的支撑下,通过集成具 体的业务应用软件和操作人员的操作界面,爿能够良好的完成企业经营过程运行 的支持。所以,工作流管理系统在一个企业或部门的经营过程中的应用过程是一 个业务应用软件系统的集成与实施过程。 为了实现不同工作流产品之间的互操作,方便与其它应用系统的集成,工 作流管理联盟定义了一个通用的工作流管理系统的体系结构图。 口孰桦心律 f = j 系绕控稍数撰 口, 弼产;数摧 图21 工作流管理系统的体系结构图 基于构件的动态工作流建模方法研究 由图2 1 工作流管理系统体系结构图”可看出,工作流管理系统由建模工 具、工作流引擎、任务表管理器、用户界面及其相关的应用和数据组成。 工作流管理系统主要提供了3 种功能。: ( 1 ) 建立阶段功能:主要考虑工作流过程、相关的定义和建模功能; ( 2 ) 运行阶段的控制功能:在一定的运行环境下,执行工作流过程,并完成 每个过程中活动的排序和调度功能; ( 3 ) 运行阶段的人机交互功能:实现各个活动执行过程中用户与i t 应用工 具之间的交互。 图2 2 给出了工作流管理系统三个功能之间的关系。 图2 2 工作流管理系统功能之间的关系 2 3 工作流参考模型 工作流参考模型( w o r k f 。wr e f e r e n c em o d e l ) 是由工作流管理联盟于 1 9 9 5 年提出的工作流管理系统的体系结构参考模型,如图2 3 基于构件的动态工作流建模方法研究 臣亟 接 ? 图2 3 工作流参考模型 工作流参考模型的引入为人们讨论工作流技术提供了一个规范的术语表,为 在一般意义上讨论工作流系统的体系结构提供了基础;工作流参考模型为工作流 管理系统的关键软件部件提供了功能描述,并描述了关键软件部件之间的交互, 而且这个描述是独立于特定产品或技术的实现的:从功能的角度定义五个关键软 件部件的交互接口,推动了信息交换的标准化,使得不同产品间的互操作成为可 能1 。 工作流参考模型标识了构成工作流管理系统的基本部件和这些基本部件交 互使用的接口。 这些基本部件包括:工作流执行服务、工作流引擎、流程定义工具、客户端 应用、调用应用、管理监控工具。 工作流执行服务是工作流管理系统的核,b 部件,它的功能包括创建、管理 流程定义,创建、管理和执行流程实例;在执行上述功能的同时,应用程序可能 会通过编程接口同工作流执行服务交互;一个工作流执行服务可能包含有多个分 布式工作的工作流引擎。 工作流引擎是为流程实例提供运行环境并解释执行流程实例的软件部件。 流程定义工具是管理流程定义的工具,它可能通过图形方式把复杂的流程定 义显示出来并加以操作;流程定义工具同工作流执行服务交互。 基于构件的动态工作流建模方法研究 客户端应用是通过请求的方式同工作流执行服务交互的应用,也就是说是客 户端应用调用工作流执行服务;客户端应用同工作流执行服务交互。 调用应用是被工作流执行服务调用的应用;调用应用同工作流执行服务交 互。为了协作完成一个流程实例的执行,不同的工作流执行服务之间进行交互。 管理监控工具主要指组织机构、角色等数据的维护管理和流程执行情况的监 控;管理监控工具同工作流执行服务交互。 基本部件交互使用的接口包括:接口一、接口二、接口三、接口四和接口五。 接口一( 工作流定义交换) ,用于在建模和定义工具与执行服务之间交换工 作流定义。主要是数据交换格式和a p i 。数据交换通过x p d l ,a p i 通过w a p i 。 接口二( 工作流客户端应用接口) ,用于工作流客户端应用访问工作流引擎 和工作列表,通过w a p i 完成。 接口三( 被调用的应用接口) 用于调用不同的应用系统。 接口四( 工作流系统互操作接口) ,用于不同工作流系统之间的互操作。 接口五( 系统管理和监控) 用于系统管理应用访问工作流执行服务。 2 4 工作流模型 工作流模型是对工作流的抽象表示,也就是对经营过程的抽象表示“。工 作流管理系统建立阶段( b u i l d - t i m e ) 的功能主要是完成经营过程的计算机化的定 义,也就是完成过程建模的任务。在这个阶段,利用一个或者多个建模方法及其 相应的建模工具,完成实际的经营过程到计算机可处理的形式化定义的转化。所 得到的定义通常可称为过程模型、过程模板或者过程定义。由于需要在计算机环 境下运行,所以工作流模型不仅仅要让人读懂,更要让计算机能够理解所定义的 工作流过程。也正是因为如此,简单的业务过程通过语言或者文字就可以表达完 全,无需建立明确的模型,而描述企业经营过程的工作流则必须建立相应的工作 流模型,才能实现企业业务流程的工作流管理,尤其是对那些实现许多复杂并行 执行流程的业务流程,只有建立它们的计算机化的模型才能对流程的执行情况进 行有效的监控。 基于构件的动态工作流建模方法研究 工作流模型包含了描述一个能够由工作流执行服务软件系统执行的过程的 所有信息。这些信息包括过程的开始和完成条件、构成过程的活动以及进行活动 间导航的规则、用户所需完成的任务、可能被调用的应用、工作流引擎的引用关 系、以及所有与工作流相关数据的定义。过程定义可能引用组织角色模型中的 相关组织结构、组织中的角色等信息。这样在进行过程中活动或信息对象的定义 时,不仅可以指定某个特定的人是这个活动,而且可以将活动或信息对象与组织 实体或角色功能进行关联。过程定义指定完成某项活动的组织实体或角色,而不 是具体的人员。在工作流执行环境中,工作流执行服务负责将组织实体或角色功 能与特定的参与者进行连接。这样做的好处是不仅可以增加过程定义的方便性, 而且还可以提高工作流执行服务的灵活性。 在工作流建模上,工作流管理联盟开展了两个方面的工作: 图2 基本实体 定义了一个元模型:所谓元模型一般是指描述模型的模型。这里的 工作流模型的元模型是用来描述工作流模型内在联系的模型。它用 于描述工作流模型内部包含的各个对象、对象之间的关系及对象的 属性,这个元模型有利于建立可以在多个工作流产品之间交换信息 的模型。 定义了一套可以在工作流管理系统之间、管理系统于建模工具之间 交互过程模型定义的a p i ( 应用编程接口) 。 4 为工作流管理联盟定义的过程元模型。在该模型中包含了以下几个 基于构件的动态工作流建模方法研究 图2 4 过程定义元模型 ( 1 ) 工作流定义( 过程模型) :它一般包含诸如工作流模型名称、版本号、 过程启动和终止条件、系统安全、监控和控制信息等一系列基本属性。这个过程 模型反映了企业中一个经营过程的目的,即这个过程要实现的目的和最终达到的 目标是什么。 ( 2 ) 活动:主要属性有活动的名称、活动的类型( 原子级活动、子流程等) 、 活动的前、后条件、调度约束参数( 如最长处理时间、排队等待时间) 等。活动 相应于企业经营过程中的任务,主要反映完成企业经营过程需要执行那些功能操 作。 ( 3 ) 转换条件:主要负责为过程实例的推进提供导航依据,主要参数包括工 作流过程条件( 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 ,执行某个活动的条件) 和通知条 件( n o t i f i c a t i o nc o n d i t i o n ,通知不同用户的条件) 。转换条件对应于企业经营过 程中的业务规则和操作的顺序。 ( 4 ) 工作流相关数据:工作流引擎根据工作流相关数据和转换条件进行推 进,工作流相关数据的属性包括数据名称、数据类型和数据值等。它是工作流引 擎执行任务推进的依据。 ( 5 ) 角色:角色属性主要包括角色的名称、组织实体( o r g a n i z a t i o ne n t i t y ) 、 角色的能力等。角色或组织实体决定了参与某个活动的人员或组织单元。它主要 描述企业经营过程中参与操作的人员和组织单位。 ( 6 ) 需要激活的应用程序:主要属性包括应用程序的类型、名称、路径及运 行参数等。应用主要描述了用于完成企业经营过程所采取的工具或手段。 工作流模型除了应该支持完整的工作流概念定义,为建模用户提供定义工 作流所需要的组件或元素等主要特点外,理想的工作流模型还应该能够清楚地描 述任意业务情况下的工作流,适应用户在建模过程中提出的各种要求,即工作流 描述能力要强,可以描述几乎所有的业务流程类型。然而,到目前为止,人们虽 然提出了不少有意义、有见解的工作流模型,但是从模型的能力上看,距离这一 理想情况尚很遥远。 基于构件的动态工作流建模方法研究 2 5 工作流执行服务与工作流引擎 工作流执行服务是工作流管理系统的核心,实际上它是企业经营过程的任务 调度,并且还在某种程度上是企业资源分配器。在采用工作流管理系统支持其经 营过程运行的企业,工作流执行服务可以看成是企业的业务操作系统。企业的业 务过程在它的管理、监控和调度下运行,因此工作流执行服务系统的性能和可靠 性就直接决定了企业经营过程的运行效率和安全性。工作流执行服务由一个或多 个工作流引擎( w o r k f l o we n g i n e ) 组成,它提供了过程实例执行的运行环境,主 要完成以下功能: ( 1 )实例化及执行过程模型 解释企业经营过程的过程定义,根据过程执行需要的初始条件和执行参数 生成过程实例,运行过程实例并管理其运行过程。一个过程模型实际是企业经营 过程的一个模板,它可以被执行多次,也可以有多个有关这个过程模型的实例在 同时运行。 ( 2 ) 为过程和活动的执行进行导航 根据过程定义和工作流相关数据,为过程实例的运行进行导航,如根据过 程的进入和退出的条件启动和终止一个过程实例;根据活动之间的关联和活动的 执行条件,决定并行或串行执行后续活动;给用户提供需要操作的工作流任务项 信息;或者根据所需激活的应用程序信息启动相应的应用程序等等。 ( 3 ) 与外部资源交互完成各项活动 工作流执行服务通过两种途径完成与外部资源和用户的交互:客户应用接 口和直接调用应用接口方式。对于客户应用方式,工作流引擎通过任务项列表管 理器对应用的执行进行管理。任务项列表管理器提供任务项列表供用户进行选 择,并记录监督工作项的完成情况。由用户完成从任务项列表管理器提供的任务 项列表中选择的相应的任务项,并在需要的时候调用应用工具完成相应任务的执 行,在任务执行完成后,用户需要修改相关任务项的状态,如设置完成标志,供 任务项列表管理器使用。这些通过任务项列表管理器分发并管理的需要用户操作 的活动对应于工作流管理系统中用户手工完成的活动( 非自动化活动) 。 对于直接由: 作流引擎启动的活动,由工作流引擎直接调用相应的应用来 基于构件的动态工作流建模方法研究 完成,这些自动执行的应用同样需要将合适的预先定义好的应用执行完成情况反 馈给工作流引擎。工作流引擎自动调用应用主要是针对基于服务器的无需用户参 与的应用,即自动化活动。 ( 4 ) 维护工作流控制数据和工作流相关数据 工作流在执行过程中要维护不同过程和活动实例的内部状态信息,以及用 于协调和恢复的各种检查数据和恢复重起信息,还包括用户传送的必要相关数 据。 工作流引擎是一个为工作流实例的执行提供服务环境的软件。它是工作流 执行服务的核心,是执行企业经营过程的“业务操作系统”的内核。从提供的功 能上看,它主要完成以下任务: ( 1 ) 对过程定义进行解释: ( 2 ) 控制过程实例的创建、激活、挂起、终止等; ( 3 ) 控制活动实例间的转换,包括串行或并行的操作、工作流相关数据的解释等。 ( 4 ) 提供支持用户操作的接口: ( 5 ) 维护工作流控制数据和工作流相关数据,在应用

温馨提示

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

评论

0/150

提交评论