(系统工程专业论文)分布式工作流研究及其在网上银行中的应用.pdf_第1页
(系统工程专业论文)分布式工作流研究及其在网上银行中的应用.pdf_第2页
(系统工程专业论文)分布式工作流研究及其在网上银行中的应用.pdf_第3页
(系统工程专业论文)分布式工作流研究及其在网上银行中的应用.pdf_第4页
(系统工程专业论文)分布式工作流研究及其在网上银行中的应用.pdf_第5页
已阅读5页,还剩52页未读 继续免费阅读

(系统工程专业论文)分布式工作流研究及其在网上银行中的应用.pdf.pdf 免费下载

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

文档简介

华中科技大学硕士学位论文 摘要 、, 、怔作流管理技术作为一种过程建模和过程管理的核心技术,实现了应用逻 辑与过程逻辑的分离及过程建模与具体数据、功能的分离,在不修改具体功能 的情况下,通过修改过程模型改变系统功能,从而大大的提高企业灵活性和反 应能力。分布式工作流通过一组分布在不同节点上的工作流机共同协作来完成 整个工作流实例的执行,可以更好地满足大规模地异构分布式信息处理与应用 执行环境的需要。、 文章介绍了几种有代表性的工作流模型,并着重讨论了基于状态图和活动 图的分布式工作流建模方法,这种方法的关键在于如何将集中式的工作流模型 进行正交化分解,使之成为可供分布式执行的工作流模型。状态图和活动图已 被o m g 组织接纳为u m l 描述系统动态行为的建模方法,这种模型比p e 砸网 模型容易学习和理解,而在模型正确性方面它又比流行的图形化模型便于验证。 在系统技术实现方面,文章讨论了分布式工作流管理系统技术实现所面临 的问题,并介绍了分布式对象技术c o r b a 和x m l 技术。文章以三峡财务公 司网上银行为应用背景,对银行业务流程进行了分析,并给出了基于c o l 也a 和x m l 技术的分布式工作流管理系统的设计方案。三峡网上银行系统将原有 系统无缝集成起来,消除了信息冗余,而且能够通过修改过程模型改变系统功 能,从而大大的提高企业灵活性和反应能力。 关键词:业务流程再造工作流分布式系统 c o r b ax m l 华中科技大学硕士学位论文 ! ! ! ! ! ! ! = ! ! ! ! = ! ! = ! ! = ! = ! 墨= 苎= 烹烹= ! 寰! ! ! 詈! = 暑苎! 竺= 詈! = ! 兽皇= = = ! ! ! = = ! ! ! ! ! ! = = = ! = ! = ! = = = ! = ! :! = a b s t r a c t t h ed i s s e r t a t i o nd i s c u s s e sb a s i ct h e o r ya n dm e t h o do fw o r k f l o wm a n a g e m e n t s y s t e m ,a n da n a l y s e sm o d e l i n g m e t h o da n dc r i t i c a l t e c h n i q u e s o fd i s t r i b u t e d w o r k f l o w n l ed i s s e r t a t i o ni n t r o d u c e sd i s t r i b u t e do b j e c tt e c h n i q u e ( c o r b a 、a n d e x t e n s i b l em a r k u pl a n g u a g e ( x m l ) ,t h e ni t p r e s e n t san e wm e t h o dt oc o n s t r u c t d i s t r i b u t e dw o r k _ f l o wm a n a g e m e n ts y s t e mw i t ht h e m , a n dp r o v i d e sa i l e x a m p l e a p p l i e d i nt h r e eg o r g ef i n a n c ec o m p a n y , f i r s t ,t h ed i s s e r t a t i o ni n t r o d u c e st h ew o r k f l o wr e f e r e n c em o d e lr e c o m m e n d e d b yt h ew 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 下m c ) ,a n dd e s c r i b e st h ea r c h i t e c t u r e , s y s t e mc o m p o n e n t s a n di n t e r f a c e so f t h em o d e l n l ed i s s e r t a t i o ni n t r o d u c e ss e v e r a l r e p r e s e n t a t i v em o d e l i n g m e t h o d so f w o r k f l o w , a n dp o i n to u ta d v a n t a g e sa n ds h o r t c o m i n go ft h e m t h e ni tp r e s e n t sa m o d e l i n gm e t h o do f d i s t r i b u t e dw o r k f l o w , w h i c hi sb a s e do na c t i v i t yc h a r ta n ds t a t e c h a r t a f t e r w a r d s ,t h e d i s s e r t a t i o nd i s c o s s e st h ed i s t r i b u t e dn e t w o r kr e s o b l e e n v i r o n m e n t ,c o n c l u d e st h e c h a r a c t e r i s t i c so fs y s t e mt h a ti su s e di nd i s t r i b u t e d n e t w o r kr e s o u r c ee n v i r o n m e n ta n di n t r o d u c e sc o r b aa n dx m 巴 f i n a l l y , t h ed i s s e r t a t i o na n a l y s e st h eb u s i n e s sp r o c e s s e so f t h r e e g o r g e f i n a n c e c o m p a n y , a n dp r e s e n t st h ed e s i g no f t h ed i s t r i b u t e dw o r k f l o wm a n a g e m e n ts y s t e m b a s e d0 1 1c o r b aa n dx m 匝 k e y w o r d s :b u s i n e s sp r o c e s s e sr e e n g i n e e r i n gw o r k _ f l o w d i s t r i b u t e ds y s t e mc o r b ax m l 0 华中科技大学硕士学位论文 1 1 选题的意义及目的 1绪论 三峡财务公司是和三峡开发总公司紧密联系在一起的非银行金融机构,其 主要业务是办理成员单位的存款、贷款,通过吸收成员单位存款方式聚集资金, 向成员单位发放贷款,统一调剂集团内单位的资金余缺,加速资金周转,合理 引导资金流向。亚洲金融危机之后,特别是中国加入世界贸易组织之后,国家 大大加大了金融市场和机构改革开放的力度,金融市场已经由传统的相对稳定 逐步演变成动态多变的市场,企业之间的竞争也由过去的局部竞争演变成全球 范围内的竞争。同行业之间、跨企业之间相互渗透、相互竞争日趋激烈,旧的 运行机制和组织体制受到了强烈的冲击。为了在未来的市场中占据一席之地, 公司领导层决定加快金融产品创新,拓宽业务范围,重建与业务过程相匹配的 企业运行机制和组织结构,而金融电子化和网络化是公司这次变革的重点之 一o 在金融电子化方面,三峡财务公司在2 0 0 0 年确立两个重点。一是通过建立 网上银行系统,以低成本形成不分时间、不论所处地域的高质量服务。网上银 行可以简化和方便用户办理有关业务的手续、集中处理单一业务、实时地发布 金融服务信息,从而极大地提高了自身的竞争和服务能力。 自1 9 9 7 年建行以来,为了满足业务需要,三峡财务公司已经建立一系列信 息系统。它们包括各支行营业部建立的成员单位结算系统,财务部建立的内部 核算系统,投资银行部建立的证券行情与交易系统,以及综合管理部的合同管 理系统和固定资产管理系统等。由于任务紧迫,时间仓促,各部门在规划设计 各自的信息系统时候缺乏沟通,因而信息系统建立在不同的操作系统、数据库 系统和网络协议之上,相互之间又没有通信接口,使得公司信息既高度分散又 华中科技大学硕士学位论文 ! ! = ! ! ! = ! ! 鼍竺竺! ! 竺! = ! ! = ! ! ! = = 竺! = ! ! ! ! 竺! = 皇! ! ! ! = 皇篁= ! ! ! 詈= ! ! ! ! ! = 鼍竺竺= ! ! = 暑! 竺! ! ! = ! = 具有较大冗余,为跨支行、跨部门的业务运行带来了很多不便。从三峡财务公 司的信息系统建设的现状出发,我们的这个系统不可能从头开始,平地起高楼, 而是应该一面要保护原有投资将各个系统集成起来,同时也要逐步改造原有的 信息系统,消除信息冗余,重组原有的业务流程。 三峡财务公司的这次变革是在业务流程重组的理论和方法f “刁指导下进行 的。业务流程重组思想在9 0 年代初被提出以来,受到了全球的广泛关注,大量 的企业进行了相应实践,但是实施的效果却差强人意,成功率不高。我认为, 失败的原因有以下两个很重要的方面。在理论方面,企业业务流程重组涉及大 量的人力、过程和技术等各方面的因素,企业系统表现出很强的动态性、随机 性,很多企业没有对流程进行细致的分析研究就进行流程的大规模变动,从而 导致成功率不高。另一方面,企业业务流程的不断变化调整为信息系统的提出 了两个需求:一,集成性,新系统应与现有应用紧密集成,保护企业过去在信 息系统在投资;二,灵活性,信息系统要能够灵活方便地扩展、升级与维护。 虽然市场上存在比较成熟的群件、p d m 、e r p 产品,但是它们相对来说支持其 他应用软件的集成能力较弱,而且它们通常缺乏灵活性,把一些规则和过程强 加给组织,成功实施这些系统通常相当困难。 工作流是指整个或部分经营过程在计算机支持下的全自动或半自动化。 1 9 9 3 年,国际工作流管理联盟( w o r k f l o w m a n a g e m e n t c o a l i t i o n ,w f m c ) 的成 立标志着工作流技术开始进入相对成熟的阶段。工作流技术的优点是使企业处 于主动地位,可以按照企业的需求定制过程,再按照过程来组织功能和工作组; 另外,它实现了应用逻辑与过程逻辑的分离及过程建模与具体数据、功能的分 离,在不修改具体功能的情况下,通过修改过程模型改变系统功能,从而大大 的提高企业灵活性和反应能力。近年来,w f m c 积极参加c o 砌认、j a v a 、d m a 、 e d i x m l 等i n t e m e t 相关标准的制定,充分发挥工作流技术在过程集成的灵活 性方面的优势和i n t e r a c t 相关技术在信息集成方面的优势,将这两种技术进行有 机结合,为以工作流管理为基础、以i n t e r a c t 技术为实现方式的应用集成平台的 建立打下了牢固的基础。从技术发展来看,随着工作流这一集成框架下所容纳 2 华中科技大学硕士学位论文 技术的不断拓展与成熟,工作流管理系统将成为企业信息环境中不可缺少的软 件平台f l 。1 ”。 根据三峡财务公司的实际需求以及当前工作流技术的发展趋势,我们和三 峡财务公司信息系统建设部门经过研究探讨之后,决定在现有企业应用的基础 之上,设计、开发一个基于分布式工作流的网上银行内部业务管理系统。 1 2 国内外研究概况 目前工作流技术的研究正日益受到人们的重视,许多大学和研究机构都开 展了许多研究工作,取得了众多的研究成果,为工作流技术的发展作出了贡献。 在世纪范围内,较著名的研究机构和相应的研究方向主要包括: 1 ) m m 的a l m a d e n 研究中心 a l m a d e n 研究中心提出的基于持久消息队列的分布式系统e x o t i c a f m q m , 一种完全分布的工作流管理系统。它基于i b m 的原有工作流管理系统 f l o w m a r k ,通过扩展其功能而实现的一个能够支持大规模复杂应用的高性能 分布式工作流管理系统。整个工作流管理系统由许多具有自治能力的节点组 成,每一个执行节点都是相互独立的,工作流过程的执行不以某一个节点为中 心,实现了完全分布【1 “。 2 ) 美国佐治亚大学计算机系 m e t e o r 是由佐治亚大学计算机系的l s d i s 实验室开发的套工作流管理原 型系统,该系统采用了完全分布的体系结构,在系统中设计并实现了分布式调 度模块来完成工作流任务的最优调度。它能够支持多种操作系统,并采用了w e b 和c o r b a 技术,为分布式环境下的互操作提供了良好的支持睁”。 3 ) 基于分布式主动数据库技术的工作流管理系统w i d e w i d e 是来自西班牙、意大利和荷兰的五个合作伙伴联合开发的工作流管 理系统。它提供了功能强大的组织模型,并且对正常活动流动过程中出现的异 常情况提出了自己独到的见解,使得系统可以灵活实现不同类型异常情况的处 理。它还通过采用主动数据库技术和事务管理技术为分布环境下的工作流管理 华中科技大学硕士学位论文 = = = = = = = = = = ! ! = 竺! = = = = = = = = = = 兰! ! ! ! ! = 竺= = = = ! 竺! = = ! = = = = ! ! = ! = = = = = = = = = = = 系统提供了先进的支持【7 8 1 。 4 ) 瑞士苏黎士大学 瑞士苏黎士大学计算机系的研究人员提出了一种基于事件的工作流执行服 务中间件平台体系结构,成为e v e ( e v e n t e n g i n e ) ,用于集成工作流执行过程中 松散耦合的分布式功能组件。在e v e 体系结构中,工作流的执行是由分布在网 络上的代理( b r o k e r ) 通过响应由e v e 服务器上检测到的事件来完成的【1 0 。】。 5 ) 美国达特茅斯大学计算机系 d a r t f l o w 是达特茅斯大学计算机系开发的一种基于可移动代理的工作流系 统。所谓“可移动代理”是一段可以在自身的控制下由异构网络系统中的一台 机器转移到另外一台机器上运行的程序,它较好地解决了一般工作流系统所欠 缺的柔性、自适应性、规范性等问趔1 0 1 2 1 。 在建立工作流地相关规范和标准方面,国际上成立了一个称为“工作流管 理联盟”( 简称w f m c ) 国际组织。它提出了有关工作流管理系统的一些规 范,其主要目的是为了实现工作流技术的标准化和开放性,从而支持异构工作 流管理系统与产品之间的互操作,并且使得其他的应用可以使用该结构和帝国 内衣好的通用a p i 访问不同的工作流管理系统提供的服务,实现与其他应用的 快速有效集成。 除了上面介绍的几个主要项目之外,多年来,在工作流管理技术的理论基 础、实现技术与应用三个方面还取得了许多研究成果。这些研究成果推动了工 作流管理技术的研究、发展与应用。下面从工作流建模方法、工作流实现技术 等几个方面介绍当今国际上一些研究情况。 1 ) 工作流建模理论与方法 在工作流建模方面,主要研究的建模方法有以下几种: ( 1 ) 基于活动网络的建模方法:这是指以活动和活动之间的关系为基础建 立的工作流模型。这是大多数工作流管理系统采用的工作流建模方法,其特点 是用户界面友好,易于理解,但是它缺乏严格的形式化语义,不便于模型验证。 ( 2 ) 基于形式化表示的建模方法:如基于p e t r i 网的建模方法。在扩展p e t r i 4 华中科技大学硕士学位论文 网的基础上,a a l s t 提出了工作流网的概念,并对应用中的许多问题,如结构特 性以及如何将工作流映射到p e t r i 网等进行了研究 1 9 1 。a a l s t 还研究了使用p e t r i 网支持企业经营过程重组的问题,提出了“w h a t ,h o w ,a n db yw h o m ”的三 阶段方法。w h a t 阶段研究分析公司和业务单元的主要功能,“h o w ”阶段研究 这些功能如何实现,“b yw h o m ”阶段分配这些活动需要的资源。 ( 4 ) 基于对话模型的建模方法:w i n o g r a d 与f l o r e s 在语言行为理论的基础 上提出了一种基于对话的模型。这种工作流模型是从客户方与服务方这两个角 色之间的语言行为交互上对工作流过程进行了定义1 2 “。a c t i o nt e c h n o l o g i e s 的 工作流产品a c t i o nf l o w 就采用了这种建模方法。 ( 5 ) 基于事务模型的建模方法:在数据库事务模型方面的基础上,研究人 员提出了多种高级书屋模型( a d v a n c e d t r a n s a c t i o n m o d e l ) 用来描述工作流过程, 包括嵌套事务模型、多层事务模型、s a g a s 、分支汇合模型等【2 0 1 。a m i ts h e t c h 在这些高级事务模型进行研究的基础上则提出了事务工作流( t r a n s a c t i o n w o r k f l o w ) 的概念,他完全从工作流的角度提出了任务的结构化以及基于任务 间依赖关系的工作流定义,还对系统的实现方法提出了有用的见解。 ( 6 ) 基于状态图和活动图的建模方法:它介于p e t r i 网和图形化模型之间, 比p e t r i 网容易学习和理解,在模型正确性方面,它比图形化模型便于验证。状 态图和活动图已被o m g 组织u m l 中接纳为描述系统动态行为的建模方法【2 4 】。 2 ) 工作流实现技术 工作流实现技术主要考虑的问题是采用什么样的底层通信技术,如何提高 工作流管理系统的可靠性、柔性以及大规模复杂应用的分布性问题,这里从基 础技术角度介绍一些这方面的研究情况: ( 1 ) 基于l o t u sn o t e s 软件:许多工作流产品采用了i b m 的l o t u sn o t e s 作 为其底层支持系统。因为n o t e s 本身就可以看成是支持群组工作的简单的工作 流管理系统,所以,它尤其适合于那些开发支持群组协同工作的工作流管理系 统。 ( 2 ) 基于c o r b a :许多工作流管理系统采用c o r b a 作为底层支持技术, 华中科技大学硕士学位论文 = = ! 竺= ! ! ! = ! ! = = 竺! = ! ! = = 竺:= ! ! ! ! 竺! ! ! ! ! = ! ! 皇! ! ! = ! 詈= 霉= = ! = 竺= = 竺詈! = = = = ! = = = 尤其是要实现分布式工作流管理系统的软件,c o r b a 更是首选的支持软件。 ( 3 ) 基于w e b :基于w e b 技术实现工作流管理系统有非常明显的优势,它 具有良好的灵活性,用户界面友好。 ( 4 ) 基于持久消息队列:持久消息队列为上层应用系统提供了可靠的消息 通信和维护机制,为工作流管理系统的可靠执行和故障恢复提供了良好的保证, 例如m m 的e x o t i c a f m q m 项目就采用了这种技术。 ( 5 ) 基于主动式数据库技术:基于主动实现的工作流产品有本章介绍的 w i d e 。 3 ) 现有工作流研究及产品的不足 尽管经由工作流产品供应商与工作流技术研究人员十几年的不懈努力,工 作流技术由最初的萌芽逐步发展起来,并取得了相当的成果,但是,从工作流 系统的实际应用状况来看,还远未达到人们所期待的水平。目前在经营过程中 采用工作流管理系统的企业仍只是一小部分,而且这些系统的应用范围也很有 限。出现这种状况的原因主要有以下几点: ( 1 ) 标准化程度差:不同厂商所提供的工作流产品具有自己独立的一套工 作流模型、工作流定义语言以及a p i 函数。在缺乏标准的情况下,用户一旦选 用一种产品之后,就很难再过渡到其他同类产品上了:而且不同系统之间缺乏 互操作的接口,使得用户有很多后顾之忧。尽管工作流管理联盟的成立有助于 改善这种局面,但若想实现类似于关系型数据库这样的同一标准( 如关系数据 模型、s q l 语言、o d b c 接口等) ,仍有很长的路要走。 ( 2 ) 实现的复杂性:工作流管理系统在企业的应用是一个复杂的实施过程: 对外部应用系统进行包装以便工作流机能够在必要的时候激活它,建立工作流 机运行所必须的分布式计算环境,设计开发相应的用户界面,还要制定相应的 管理规程和用户操作规范等。目前的工作流产品为这些任务的完成提供的帮助 有限,所有的工作流应用都需要供应商与应用开发人员进行很长时间的合作才 能最终完成。另外,工作流管理系统的实施给企业带来的不仅是技术上的变化, 同时对企业原有的管理制度造成一定的影响,因此,企业还需要完善相应的管 6 华中科技大学硕士学位论文 理体系。 ( 3 ) 系统的安全性:目前的工作流管理系统对系统运行中出现的并发访问 和异常错误缺乏正确和可靠的支持。 ( 4 ) 性能问题:目前大多数工作流产品无法满足企业对每天处理上万个, 甚至每小时几千个业务的需求。 总的来说,工作流技术并不成熟,目前尚没有一种产品或原型系统能够在 过程执行的可靠性、一致性和性能方面达到与关系型数据库管理系统同一水平, 还有大量的工作值得去做。 1 3 本文的工作 本文将工作流管理系统的基本理论方法与i n t e r a c t 相关新技术相结合,探讨 了分布式工作流的建模方法及关键技术,并以三峡财务公司网上银行为应用背 景和对象,介绍了基于c o r b a 和x m l 技术的分布式工作流管理系统的设计。 第1 章( 本章) 阐述了本论文的提出,明确了研究的目的和意义,对国内 外相关的研究工作做了综述; 第2 二章介绍了w f m c 提出的工作流管理系统参考模型,阐述了这个参考 模型的体系结构、系统功能组成部件和接口。 第3 章首先介绍了几种有代表性的工作流模型,然后着重讨论了基于状态 图和活动图的分布式工作流建模方法,这种方法的关键在于如何将集中式的工 作流模型进行正交化分解,使之成为可供分布式执行的工作流模型,最后,还 讨论了多个工作流机服务器之间的消息同步问题。 第4 章首先从系统实现的角度介绍了分布式工作流管理系统所面临的问 题,然后讨论了工作流实现技术中较先进的c o r b a 和x m l 技术。 第5 章以三峡财务公司网上银行为应用背景,对银行业务流程进行了分析, 并介绍了基于c o r b a 和x m l 技术的分布式工作流管理系统设计和实现。 7 华中科技大学硕士学位论文 竺! 竺! = = = = = = ! ! ! 竺竺= 竺! = = = ! ! ! ! 竺竺! ! ! ! = = = = ! ! ! ! 竺竺! ! = ! 兰! ! ! = 竺! ! 竺= = = = ! 竺= ! ! 竺= ! ! = 皇= 2 工作流管理系统参考模型 2 。l 工作流管理系统体系结构 为了能够更好地支持企业经营过程建模、分析何实施,适应世界市场的多 元化趋势,需要建立工作流管理系统的相关标准,从系统结构、术语使用、接 口实施方面提供标准化与规范化的定义,并以此为基础实现不同工作流产品之 间的互操作,便于与其他应用系统的集成。 璃玎专笋 孟刊兰竺 管理上 i 任耋擎 工作流相 关数据 r 更新i 上 工作流应 用数据 驰员畦曜 贫 图2 工作流管理系统的体系结构图 图2 0 l 为、砸m c 提出的工作流参考模型的体系结构图【1 3 1 。从图2 1 可以看 华中科技大学硕士学位论文 出,工作流管理系统主要由三类构件著称: 软件构件:完成工作流管理系统不同组成部分功能的实现; 系统控制数据:工作流管理系统中的一个或多个软件构件使用的数据; 应用与应用数据:对于工作流管理系统来说,它们被工作流系统调用来 完成整个和部分工作流管理的功能。 2 2 工作流参考模型 图2 2 给出了w f m c 提出的工作流参考模型【1 3 l 。本节首先介绍工作流参考 模型中涉及到的几种数据,在以后的各节对系统中的各个部分和参考模型中的 五类接口进行描述【1 3 + 1 4 1 。 图2 - 2 工作流参考模型 工作流控制数据( w o r k f l o wc o n 仃o ld a m ) :工作流执行服务i 作流机通 过内部的工作流控制数据来辨别每个过程和活动实例的状态。这些数据由工作 流执行服务i 作流机进行控制。用户、应用程序或其他的工作流栅工作流执行 服务不能对其真接进行读写操作,它们可以通过向工作流执行服务i 作流机发 消息请求来获得工作流控制数据的内容。 9 华中科技大学硕士学位论文 = 竺! ! ! ! ! 竺= = ! ! 竺! ! 詈! ! 竺! ! ! ! 兰! = = ! ! ! ! = = 竺= ! = ! ! ! = 竺! ! = 兰! = = ! ! = 篡! ! = ! ! = = ! ! = ! 竺= ! 竺! = ! ! ! ! ! 工作流相关数据( w o r k f l o wr e l e v a n td a t a ) :工作流管理系统通过工作流 相关数据来确定过程实例状态转换的条件,并选择下一个将执行的活动。这些 数据可以被工作流应用程序访问并修改。因此,工作流管理软件需要在活动实 例之间传递工作流相关数据。 工作流应用数据( w o r k f l o wa p p l i c a t i o nd a t a ) :这种数据是指那些由应用 程序操作的数据。它们是针对应用程序的,是企业完成具体的业务功能所需要 的数据。工作流管理系统无法也不需要对它们进行访问。 2 3 工作流模型与建模工具 工作流模型包含了描述一个能够由工作流执行服务软件系统执行的过程所 需要的所有信息。这些信息包括过程的开始和完成条件、构成过程的活动以及 进行活动间导航的规则、用户所需要完成的任务、可能被调用的应用、工作流 机的引用关系,以及所有与工作流相关数据的定义。过程定义可能引用组织 角色模型中关于组织结构、组织中角色等信息。这样在进行过程中活动或信息 对象的定义时,不仅可以指定某个特定的人是这个活动或信息对象的参与者, 而且可以将活动或信息对象与组织实体或角色功能进行关联。 过程建模工具以计算机能够处理的形式进行过程的定义。它可以基于形式 化的过程定义语言、对象一关系模型来进行过程模型定义。工作流建模工具应 输出一个能被工作流机解释并执行的过程。不同的工作流产品的建模工具输出 馍型的存储格式是不同的,图2 2 参考模型中接口l 的定义不仅是为了实现工 作流的定义阶段和运行阶段的分离,使用户就可以选择建模和工作流执行的软 件产品,而且是为了使不同的工作流产品能够实现协作运行,从而为过程定义 的执行提供良好的运行服务环境。 在工作流建模上,w f m c 开展了两个方面的工作: 1 ) 定义了一个元模型:所谓元模型一般是指描述模型的模型。这里的工作 宛模型的元模型是用来描述工作流模型内在联系的模型。它用于描述工作流模 型内部包含的各个对象、对象之间的关系及对象的属性。这个元模型有利与建 1 0 华中科技大学硕士学位论文 立可以在多个工作流产品之间交换信息的模型。 2 ) 定义了一套可以在工作流管理系统之间、管理系统与建模工具之间交互 过程模型定义的a p i ( 应用编程接口) ( 接口1 ) 。 图2 - 3 过程定义元模型 图2 - 3 为工作流管理联盟定义的过程元模型【1 5 】。该模型包含以下各基本实 体: 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 ) 工作流相关数据:工作流机根据相关数据和转换条件进行推进。工作流 相关数据的属性包括数据名称、数据类型和数据值等。它是工作流执行任务推 进的依据,如在银行贷款申请表处理候,根据申请贷款的值( 如是否大于l o 万 元) 决定下一个执行的活动是什么,比如,大于1 0 万元的申请交业务经理处理, 华中科技大学硕士学位论文 小于1 0 万元的申请交给业务员处理。 5 ) 角色:角色属性主要包括角色的名称、组织实体、角色的能力等。角色 或组织实体决定了参与某个活动的人员或组织单元。 6 ) 需要激活的应用程序:主要属性包括应用程序的类型、名称、路径及运 行参数等。应用主要描述用于完成企业经营过程所采用的工具或手段,如采用 e r p 软件或决策支持软件完成某个操作的具体企业业务功能。 图2 3 中给出的过程定义元模型的组成核心是活动。工作流定义与活动、工 作流相关数据之间是一对多的关系。活动、角色、工作流相关数据、需要激活 的应用程序、转换条件之间都是多对多的对应关系。 2 4 工作流执行服务与工作流机 工作流执行服务是工作流管理系统的核心。实际上它是企业经营过程的任 务调度器,在某种程度上还是企业资源分配器。在采用工作流管理系统支持经 营过程运行的企业中,工作流执行服务可以看成是企业的业务操作系统。企业 的业务过程在它的管理、监控和调度下运行,因此,工作流执行服务系统的性 能和可靠性就决定了企业经营过程的运行效率和安全性。工作流执行服务由一 个或多个工作流机( w o r k f l o we n g i n e ) 组成( 在分布式环境下由多个工作流机 组成) ,它提供了过程实例执行的运行环境,主要完成以下功能: 1 ) 实例化及执行过程模型:解释企业经营过程的过程定义,根据过程执行 需要的初始条件和执行能够参数生成过程实例,运行过程实例并管理其运行过 程。这里要指出的是,一个过程模型实际上是企业经营过程的一个模板,它可 以被执行多次,也可以有多个有关这个过程模型的实例在同时运行。 2 ) 为过程和活动的执行导航:根据过程定义和工作流相关数据,为过程实 例的运行进行导航,如根据过程的进入和退出条件启动和终止一个过程实例; 根据活动之间的关联和活动的执行条件,决定并行或串行执行后续活动等。 3 ) 与外部资源交互完成各项活动:工作流执行服务通过两种途径完成与外 华中科技大学硕士学位论文 部资源和用户的交互:客户应用接口和直接调用应用接口方式。对于客户应用 方式,工作流机通过任务项列表管理器对应用的执行进行管理。任务项列表管 理器提供任务项列表供用户进行选择,并记录监督工作流的完成情况。对于直 接由工作流机启动的活动,由工作流机直接调用相应的应用来完成,这些自动 执行的应用将合适的预先定好的应用执行完成情况反馈给工作流机。 4 ) 维护工作流控制数据和工作流相关数据:工作流在执行过程中要维护不 同过程和活动实例的内部状态,以及用于协调和恢复的各种检查数据和恢复, 重启信息,还包括用户传送的必要的相关数据。 在分布式的工作流执行服务中,一般由多个工作流机协同工作来推进工作 流实例的执行。每一个工作流机负责控制和管理一个过程中的一部分活动,使 用相关的资源和应用工具来完成这些活动的执行。不同的工作流机之间能够分 工和协作,在一个工作流机完成其负责的一部分活动后,需要将相应的完成信 息传递给其他工作流机【1 3 】。 工作流机是一个为工作流实例的执行提供运行服务环境的软件和“引擎”。 它是工作流执行服务的核心,是执行企业经营过程的“业务操作系统”的内核。 从提供的功能来看,它主要完成以下任务: 1 ) 对过程定义进行解释,控制过程实例的创建、激活、挂起、终止等。 2 ) 控制活动实例间的转换,包括串行或并行的操作、工作流相关数据的解 释等。 3 ) 提供支持用户操作的接口。 4 ) 维护工作流控制数据和工作流相关数据,在应用或用户间传递工作流相 关数据。 5 ) 提供用于激活外部应用程序和访问工作流相关数据的接口。 6 ) 提供控制、管理和监督工作流过程实例执行情况的功能。 华中科技大学硕士学位论文 ! = = ! = = ! ! ! ! ! ! = = = = ! ! ! = = = ! = ! ! ! ! = = ! ! ! = = ! ! = = ! = = = ! ! = ! ! ! = ! = ! ! ! ! = 初 图2 4过程实例状态转换图 图2 - 5活动实例状态转换图 工作流的一个重要功能就是控制过程实例和活动实例的状态转换。工作流 管理联盟提出的参考模型中对过程实例运行状态和活动实例状态进行了定义, 并给出了状态转换的条件【1 3 15 1 。图2 4 和图2 5 分别描述了过程实例和活动实 例各个状态之间的转换。 2 5 客户端功能 工作流管理系统的客户端功能是指用户操作工作流管理系统分配的任务或 者活动的功能。它由工作流任务管理器和用户操作共同完成。工作流任务表是 指分配给特定用户( 或一组用户) 处理的由任务项组成的队列。工作流任务表 1 4 华中科技大学硕士学位论文 管理器是一个软件模块,负责管理工作流任务表,并完成与最终用户的操作的 交互。 在实际应用中,经常需要将工作流管理系统集成到用户的其他桌面应用( 如 办公自动化系统、电子邮件系统) 环境中,从而为最终用户提供一个集成化的 统一任务管理系统。在一般应用环境中,计算机操作系统的异构性是比较普遍 盼f 青况,这对工作流执行服务与工作流客户端应用之间的通信机制提出了较高 的要求,如要求通信机制具有比较好的柔性能够适应不同的操作系统环境。 在工作流模型中,客户端应用与工作流机的交互通过定义良好的接口完成。 这个接口就是工作流任务表。在最简单的情况下,工作流机通过存取工作流任 务表来完成特定任务到特定用户的分发过程,而工作流任务管理器存取工作流 任务表是为了获取任务项,将它们提供给用户进行处理,并得到处理结果。 通过任务表管理器来进行任务处理的方式适用于需要人员参与的活动。在 这种情况下,工作流机通过任务表管理器对活动进行控制。工作流管理联盟提 供了四种可能的通过任务表来实现工作流客户与工作流机之间的通信方式 i “, 。其中第一种适用于支持集中式的工作流管理系统结构,另外三 种适合于分布式工作流管理系统结构。 1 ) 基于主机方式的模型( h o s tb a s e dm o d e l ) 2 ) 共享的文件库模型( s h a r e df i l es t o r em o d e l ) 3 ) 电子邮件模型( e l e c t r o n i cm a i lm o d e l ) 4 ) 过程调用或消息传递模型( p r o c e d u r e c a l lo rm e s s a g e p a s s i n g m o d e l ) 激活工作流任务表中任务项的过程可以由工作流客户应用或最终用户来纪 行控制,激活的过程涉及启动应用程序、连接工作流相关数据等操作。为了完 成新的任务项的加入、已经完成执行的任务执行的任务项删除、未完成活动的 r 挂起等操作,w f m c 定义了一系列过程规则来实现工作流执行服务和客户端应 用程序的协作l l “”j 。 华中科技大学硕士学位论文 竺:! ! 竺! ! ! 竺竺! ! 苎竺! ! 詈烹! ! ! 詈= ! ! = = = ! 竺! = ! ! ! = 竺= = ! = = = = = ! 皇= ! 苎= = = ! ! ! = ! ! ! = ! = 3 基于状态图与活动图的工作流建模 3 1 工作流建模理论与方法概览 模型是用文字、图表、符号、关系式以及实体模样等描述所认识到的客观 对象的一种简化表示形式。它是人们为了研究和解决客观世界存在的各种问题 而对客观现实经过思维抽象后得到的。工作流模型是对工作流的抽象表示,也 就是对经营过程的抽象表示。文献【1 8 1 中给出了对概念模型进行评价的四条 标准为: 表达能力丰富:模型要提供丰富的建模概念,使得由大量约束集合而成 的元素能够在模型中被直接表达出来。 容易理解:不论是领域专家还是普通用户,都能够比较容易地理解模型 含义。 最小化:模型中的概念不重叠,对每一个基本概念都有它特定的意义。 形式化:模型定义能够作为现实对象的形式化描述。 在第1 章中我们对主要的建模方法进行了介绍,这里我们要指出这些方法 各自的优缺点,并给出在本系统中选择状态图和活动图作为建模方法的原因: 1 ) 基于活动网络的建模方法:这是大多数工作流管理系统采用的工作流建 模方法,其特点是用户界面友好,易于理解,但是它缺乏严格的形式化语义, 细节描述具有歧义性和模糊性,不便于模型验证。 2 ) 基于p e t r i 网的建模方法:p e t r i 网具有严格的形式化定义,便于计算机 进行模型验证,在描述并发与冲突活动方面具有很大优势,但是它的建模过程 非常繁琐,而且难于被用户所理解。 3 ) 基于对话模型的建模方法:对话模型在描述以人的交互行为为特征的经 营过程有独到之处,但是它支持层次化建模的能力不足,不适合于比较固定的 1 6 华中科技大学硕士学位论文 企业经营过程,建模人员很难完整明确地列出对方所有可能地语言行为等。 4 ) 基于事务模型的建模方法:事务模型在并发控制、死锁预防、出错恢复 等方面具有优势,但是事务模型所注重地是保护数据地一致性,而对于执行不 同任务的相互独立的系统之间的协调则并不擅长【2 们。 5 ) 基于状态图和活动图的建模方法:它介于p e t r i 网和图形化模型之间, 比p e t r i 网容易学习和理解,在模型正确性方面,它比图形化模型便于验证。状 态图和活动图还被o m g 组织接纳为u m l ( u n i f i e dm o d e l i n gl a n g u a g e ) 描述 系统动态行为的建模方法 2 4 】,u m l 是近年来软件工程领域取得的重大突破之 一,它代表了一种积极的方向多种方法相互借鉴、相互融合、趋于一致、 走向标准化。 3 2 状态图和活动图 3 2 1 集中式的状态图和活动图 状态图和活动图最初是为了反应式系统( r e a c t i v es y s t e m ,例如汽车中的 嵌入式控制系统) 建模而提出来的 2 2 矧,并在该领域取得了很大的成功。在德 国的萨尔兰大学和苏黎世工程研究院合作研究的工作流管理系统平台中就应用 了此方法,取得了良好的效果【2 5 】。 可视化、详述、构造和文档化一个软件密集型系统,要求我们从几个角度 去观察系统。状态图和活动图从特定的方面对系统的组织和结构进行投影,它 们都可单独使用,使得不同的人员能专注于他们最为关心的问题,它们也可相 互作用而共同描述系统的体系结构。 活动( a c t i v i t y ) 直接对应于工作流参考模型中的活动概念,反映了系统功 能上的分解。活动图是一种有向图,它用标有数据信息的有向弧来表示活动间 的数据流。图3 1 给出了一个活动图的简单例子,它描述了冲咖啡的过程( 我 们可以把它看成一个“微工作流”) 。它只包含三个活动,冲咖啡之前首先要往 1 7 华中科技大学硕士学位论文 = = = = = = ! = ! ! = ! 皇芒= = = = ! 兰= = ! = = = = ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! = ! ! ! ! ! ! ! = = = ! 竺! 竺! ! = ! ! ! ! ! 竺苎! 詈! ! ! ! 竺竺苎 壶里添水,然后点燃煤气灶烧水,等水开了之后将开水倒入咖啡杯中。标有“水” 的有向弧描述了三个活动之间的“数据流”。 图3 1 冲咖啡过程的活动圈 状态图则反映了系统的动态行为,因而适于描述工作流中各活动间的控制 流程。状态图本质上讲是一个有限状态机( f i n i t es t a t em a c h i n e ) ,它有明确的起 始和终止状态,而状态间的转移则是通过e c a 规则( e v e n t c o n d i t i o n - a c t i o nr u l e s l 来驱动的。每个状态间的转换弧都标有相应的e c a 规则。一个标有e c 】a 的 从状态x 到状态y 的转换,将在事件e 发生并且条件c 满足时触发。转换的 结果则是流程离开状态x ,进入到状态y 中,同时动作a 会得以执行。条件和 动作都以表达式的形式表示,这些表达式中的变量则通过相应的活动图中数据 流来定义。条件和事件也可以引用特殊的谓词,例如玳( s ) 将在系统进入状态s 时为真。此外,动作a 可能会启动一个活动,我们表示为s t ! ( a c t i v i t y ) ,也可能 会产生一个事件或者将一个条件设为真。在某些情况下,e c a 中的每个组成 部分也可以是空的。我们把每一个状态图执行中的状态变化看作一个时步,这 样状态变化就引入了一个离散时间维度1 2 2 2 4 1 。 状态图的其他两个重要特点是嵌套状态和正交组件。状态的嵌套是状态本 身可以包含一个完全的状态图。当系统进入到高层次的状态时,低层次的嵌套 状态图会同时自动进入初始状态,同样,当系统离开高层次状态时,低层次状 态也会同时离开。状态图的嵌套特性对于设计中的逐步求精很有帮助。正交组 件则是指嵌套在同一高层次状态的两个状态图的并行执行。 图3 2 给出

温馨提示

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

评论

0/150

提交评论