(计算机软件与理论专业论文)基于j2ee平台的工作流建模工具的研究.pdf_第1页
(计算机软件与理论专业论文)基于j2ee平台的工作流建模工具的研究.pdf_第2页
(计算机软件与理论专业论文)基于j2ee平台的工作流建模工具的研究.pdf_第3页
(计算机软件与理论专业论文)基于j2ee平台的工作流建模工具的研究.pdf_第4页
(计算机软件与理论专业论文)基于j2ee平台的工作流建模工具的研究.pdf_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

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

文档简介

基于j 2 既平台的工作流建横工具的研究 摘要 二十世纪九十年代后,工作流技术成为计算机应用领域的一个研究热点。 很多大学、研究机构和公司对工作流理论和产品进行了广泛的研究。本文以e 3 ( e e n t e r p r i s ee n v i r o n m e n t ) 电子商务平台为背景,对工作流管理系统的基 础理论和工作流建模工具进行了研究。 工作流建模工具以工作流过程模型为基础,向用户提供图形化的过程定义 界面,用户只需通过简单的拖拉就可以定制复杂的流程,免去了繁琐的编码工 作,大大提高了企业业务过程的建模效率。 本文对工作流管理联盟w f m c 的参考模型和过程定义语言( x p d l ) 进行了探 讨。对现有工作流建模工具不能跨平台、不能自适应不同操作系统观感的缺点 进行了分析研究。提出了一个描述能力比较完善、易于用户理解、易于实现的、 基于活动网络图的过程模型。最后,基于此模型,设计并实现了一个遵循w f m c 标准规范、跨平台的、可自适应不同操作系统观感的图形化工作流建模工具e 3 p r o c e s sb u i l d e r 。 关键词:工作流管理系统过程模型x p d l 工作流建模工具 基于j 2 旺平台的工作流建模工具的研究 a b s t r a c t s i n c e1 9 9 0 s ,w o r k f l o wt e c h n i q u eh a sa t t r a c t e dm o r ea n dm o r e a t t e n t i o nf r o mm a n yu n i v e r s i t i e s ,r e s e a r c hc o m m u n i t i e sa n de n t e r p r i s e s t h i se s s a yr e s e a r c h e st h eb a s i st h e o r yo ft h ew o r k f l o wm a n a g e m e n ts y s t e m a n dt h ew o r k f l o wm o d e l i n gt o o lb a s e do ne 3 ( e e n t e r p r i s ee n v i r o n m e n t ) b u s i n e s sp l a t f o r m w o r k f l o wm o d e l i n gt o o lp r o v i d e st h ec o n s u m e r sw i t hav i s u a lp r o c e s s d e f i n i t i o ni n t e r f a c eb a s e do nt h ew o r k f l o wp r o c e s sm o d e l t h ec o n s u m e r s c a np r o d u c et h ec o m p l i c a t e dp r o c e s sd e f i n i t i o no n l yb yd r a ga n dd r a w , a v o i d i n gt h et e d i o u sc o d i n g t h i sr a i s e st h em o d e i i n ge f f i c i e n c yo f e n t e r p r i s eb u s i n e s sp r o c e s s t h i se s s a yd o e sad e e pr e s e a r c ho nt h ew f m cr e f e r e n tm o d e la n dx p d l i ta l s oa n a l y s e sa n dr e s e a r c h e st h ed i s a d v a n t a g e st h a tt h ep r e s e n t w o r k f l o wp r o c e s s - m o d e l i n gt o o lc a n n o tcrossp l a t f o r m sa n dc a b o ta d a p t t ot h el o o k & f e e lo fd i f f e r e n to s t h e nt h i se s s a yp r o p o s e sa n a c t i v i t y - n e t b a s e dp r o c e s sm o d e l ,w h i c hh a sas t r o n ga h i l i t yt o i n t e r p r e tp r o c e s sa n dc a r lb ee a s i l yi m p l e m e n t e d f i n a l l y ,b a s e do nt h i s m o d e l ,t h i se s s a yd e s i g n sa n di m p l e m e n t sav i s u a lw o r k f l o wp r o c e s s m o d e i i n gt o o l e 3p r o c e s sb u i i d e r ,w h i c ho b e y st h ec r i t e r i ao f j w f m c , c a nc r o s sp l a t f o r m sa n dcana d a p tt od i f f e r e n to s k e yw o r d s :w f m sp r o c e s s m o d e lx p d lp r o c e s s m o d e l i n g t o o l 基于j 2 髓平台的工作漉建模工具的研究 第1 章引言 1 1 课题研究背景 1 1 1 工作流技术的起源和发展 在八十年代初期,在各行各业的日常业务活动中表单、文件、信函、技术资 料等都还是以纸张的形式存在。而在计算机网络与数据库广泛使用的时代,这种 方式在信息的处理、检索、协同工作中效率太低、成本过大,难于管理和控制。 于是一些企业建立了自己专用的或者可商品化的表单传递应用系统 ( f o r m s r o u t i n ga p p l i c a t i o n s ) ,使各种电子表单按预先定义好的流程在各操作 者之间传递。这种系统可以看成是现代工作流管理系统w f m s ( w o r k f l o w m a n a g e m e n ts y s t e m ) 的一个雏型。 在八十年代中期,v i e w s t a r 等公司率先开拓了工作流产品市场,成为最早 的工作流产品供应商。他们把图像扫描、复合文档、结构化路由( s t r u c t u r e d r o u t i n g ) 、实例跟踪、关键字索引以及光盘存储等功能结合在一起,形成了一种 全过程支持某些业务流程的集成化的软件,这就是早期的工作流管理系统。比较 典型的有v i e w s t a r 于1 9 8 8 年推出的v i e w s t a r 。 到了九卜年代,企业的信息资源越来越表现出一种异构、分布、松散耦合的 特点。企业物理位置的分散性、决策制定的分散性、对日常业务活动详尽信息的 需求以及c l l e n t s e r v e r 体系结构、分布式处理技术的r 益成熟,企业要求实现 大规模的异构分布式执行环境,使相互关联的任务能够协同高效地执行。工作流 管理系统是统一企业信息环境、实现业务流程自动执行的必要工具。作为计算机 支持的协同工作( c o m p u t e rs u p p o r t e dc o o p e r a t i v ew o r k 1 】【2 】) 的一个重要分支, 工作流管理系统w f m s ( w o r k f l o wm a n a g e m e n ts y s t e m ) 的主要目标是通过调用 各种相关资源协调业务过程中的各个环节,使他们按照一定的顺序、协作完成某 基于j 2 e e 平台的工作流建模工具的研究 项任务。此时工作流技术进入了一个崭新的发展阶段。人们开始从更深的层次、 更广的领域上对工作流进行研究【3 】【4 l o 1 9 9 3 年工作流管理联盟( w f m c i s ) 的成立标志着工作流技术的相对成熟。为 了实现不同工作流产品之间的互操作,它制定了工作流管理系统体系结构和a p i 等一系列工作流相关技术的规范,大大加速了工作流产品的商业化。w f m c 定义 的工作流( w o r k f l o w ) f 回是:根据一套过程规则,把文档、信息或者任务从 一个参与者传递到另一个参与者执行的全部或部分业务过程自动化。工作流管 理系统( w f m s ) 【田是:运行着一个或多个可以解释过程定义的工作流引擎 ( w o r k f l o we n g i n e ) ,通过软件定义、创建和管理工作流执行的系统;工作流引 擎可以和工作流参与者交互,需要的时候可以调用i t 工具和应用程序。一个工 作流管理系统包括的软件组件: 存储和解释流程定义的软件组件。 工作流实例运行时创建管理工作流实例的组件。 控制和流程参与者或应用程序交互的组件。 1 1 2 国外研究状况 国外对工作流进行研究得比较早,工作流技术的研究在国外已经成为一个重 要的领域。国外已经对: 怍漉鼓求的梧关理沦进行了广泛的研究,3 - 5 - 发比较 成熟的工作流产品。下面介绍2 种比较典型的工作流产品并对其建模工具特点进 行分析:i b m 的m q s e r i e sw o r k f l o w 聊a c t i o nt e c h n o l o g i e s 的m e t r o 8 】。 m q s e r i e sw e r k f l o w m o s e r i e sw o r k f o w 以i b m 的消息服务产品m q s e r i e s 为基础,可以将分布 在异构平台的不同活动、应用程序有机地集成起来,实现i n t e r n e t 环境下的电 子商务平台。m o s e r i e sw o r k f l o w 将业务流程从应用逻辑中分离出来,使企业可 以快速地集成复杂的应用,从而降低成本、提高生产率,达到随需应变的目的。 基于j 2 e e 平台的工作流建模工具的研究 m q s e r i e sw o r k f l o w 的建模工具非常强大。除了具备一般图形化建模工具的 特点外,m q s e r i e sw o r k f l o w 支持复杂的组织与角色建模,允许柔性地指派参与 者,可以在建模期闯将活动分配给参与者,也可以在工作流实例运行期间动态分 配给参与者。 m e t r o a c t i o n 技术公司的m e t r o 是基于对话行为的模型,在活动的请求者和活动 的执行者之间要对需要完成的活动达成协议。基于对话机制的模型强调用户满意 度。 m e t r o 提供强大的过程建模工具a c t i o nw o r k sp r o c e s sb u i l d e r ,用户可以 根据企业需求很方便地定义任何类型的过程模型,包括可预知的结构化过程和需 要协作的过程,甚至不确定的过程。m e t r o 建模工具还提供代理执行器,为用户 自动执行任务。m e t r o 还向用户提供工作流模板和协议向导,帮助用户快速生成 过程模型。用户使用工作流模板可以生成简单的过程模型。使用协议向导,用户 只需回答几个简单问题就可以自动生成底层应用、工作流实例和相应数据库。 1 1 3 国内研究状况 近几年,国内市场上出现了很多工作流产品,很多公司也在加紧研发有自主 知识产权的工作流产品。比较成熟的产品有上海东兰的d l f l o g l 和西安协伺数码 的s y n c h r o f l o w ! 圳。 夺f ? l o 上海东兰的d l f i ow o r k f l o w 是参照w f m c 所提供的工作流模型,完全按照 m sd n a 基于组件的多层结构技术要求进行设计开发的一个基于w e b 的工作流系 统。其中核心的工作流引擎以组件形式封装,与数据库和用户界面分_ 丌,便于系 统维护和与企业内部其他系统的接l j 。 东兰d l f i o 的建模工具提供可视化的过程建模界面,支持基本的工作流模式 和流程回退、按条件暂停。还可以同时基于用户、角色、工作关系和条件流转, 进行外出代理人设置。但是只能在w i n d o w s 操作系统下运行。 3 基于j 2 f _ j 平台的工作辩渔模工具的研究 s y n c h r o f l o w s y n c h r o f l o w 的模型的表达能力比较强。实现了分布式工作流管理系统,解 决了大型系统的工作流的分布问题。s y n c h r o f l o w 在系统设计之初,采用了开放 以及跨平台的j a v a 技术,从而使系统的适应能力大大增强,可以运行在各种流 行的操作系统、数据库以及应用服务器上。通过对业界标准,( 如w f m c ) 的支持, 较好的解决了多个工作流系统的交互问题。 s y n c h r o f l o w 建模工具功能强大,具有以下几个主要特点:图形化拖拉方式 建立工作流模型,人性化的选项设置,多窗口的用户界面,丰富的过程图形元素, 过程元素拷贝、粘贴、删除操作,支持同时打开多个模型文件进行编辑,快速定 位过程元素,支持图形的分层显示,丰富多样的活动类型,支持多种流程逻辑关 系,支持子过程设计,支持用户自定义类型数据,工作流过程的参与者支持各种 表达式,支持内置块设计可设定工作流过程时限,支持工作流程的权限管理,模 型的合法性检查,模型文件的图形输出等。 1 - 2 课题目的和意义 工作流建模工具是工作流产品提供给用户使用的一个重要工具。用户使用工 作流建模工具定义能被工作流运行服务器执行的业务过程。建模工具是否简单、 o 方便、易用、灵活、高效直接影响用户对工作流产品的满意度。现在市场上有很 多工作流产品都提供图形化的工作流建模工具。但是它们很多都是为某个专门应 ,h 领域量身订做的。很多工作流产:品的建模工具或者只能在w i n d o w s 下运行,不 能跨平台运行,或者采用j a v a 默认的g u i 开发包a w t s w i n g 开发图形界面,速 度慢、不能自适应不同操作系统的观感。这些工具输出的过程定义很多都不完全 支持w f m c ( 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 ) 参考模型接口1 规范,不利于工作 流过程定义的交换。 良好的工作流建模工具可以大大地提高过程定义的效率,方便业务过程的修 改,方便过程定义的仿真、验证等。用户使用友好的建模工具只需通过简单的拖 拉就可以定制出符合需求的过程定义,同时生成工作流执行服务( w o r k f l o w 4 基于j 2 髓平台的工作流建模工具的研究 e n a c t m e n ts e r v i c e ) 可以理解执行的过程定义。未来电子政务建设也将采用基 于l i n u x 和j 2 e e 架构的跨平台方案。研究一种遵循标准规范、简单、跨平台、 支持复杂流程、可自适应不同操作系统观感的过程定义工具是非常有市场价值 的。 1 3 论文的主要内容 本文以e 3 电子商务平台为背景,讨论了工作流管理系统的基本概念,对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 ) 进行了研究。提出了一个基于活动网络图的过程模型。最后,基于此 模型,设计实现一个遵循w f m c 标准规范、跨平台的、可自适应不同操作系统观 感的图形化工作流过程建模工具e 3p r o c e s sb u i l d e r 。 第一章论述工作流技术的起源和发展,国内外工作流建模工具的研究现状 和不足,以及论文的目的和意义。 第二章探讨工作流管理系统的基本概念,研究w f m c 提出的工作流管理系 统的体系结构和参考模型。 第三章讨论用过程定义描述语言x p d l 对业务过程进行定义。 第四章介绍w f m c 提出的过程定义元模型,讨论几种重要的过程模型建模 方法。并提出一个基于活动网络图,支持串行、并行、分叉、合并、子流程的、 易于用户理解、易于在计算机上实现的过程模型。 第五章受计并实现了个崩s w t j h 。i 包开发图形界面,遵循w i h ! c 标 准规范、跨平台的、可自适应不同操作系统观感的图形化工作流过程建模工具 e 3p r o c e s sb i , ii 】d e r 。 基于j 2 髓平台的工作流建模工具的研究 1 4 本章总结 本章首先介绍了工作流技术的背景,对国内外比较成熟的工作流产品进行了 分析,重点分析了建模工具的特点和不足。然后指出现有工作流过程建模工具存 在不能跨平台、不能自适应不同操作系统观感的缺点。引出本文的目的是对工作 流建模工具的基础理论和关键技术进行研究,提出一个描述能力比较强、易于用 户理解、易于在计算机上实现的基于活动网络图的过程模型,然后再以这个模型 为基础,分析设计一个能自适应不同操作系统观感的、跨平台的工作流过程建模 工具e 3p r o c e s sb u i l d e r 。最后简单介绍一下论文的主要内容。 基于j 2 e e 平台的工作漉建模工具的研究 第2 章工作流管理系统 2 1企业信息化与工作流管理系统 很多企业的生产经营活动是由各种业务流程交织在一起组成的,流程无处不 在,和企业的生产经营息息相关。以前,很多流程隐含在日常的操作中,没有受 到人们的重视,不能进行有效的管理。这使得企业不能很好地跟踪业务流程的执 行。在市场竞争日趋激烈的时代,企业所处的商业环境发生巨大的变化,客户需 求瞬息万变,产品生命周期不断缩短,技术不断创新,企业要在这样一个竞争激 烈和瞬息万变的外部环境下生存,必须随需应变,不断调整、优化各种业务流程, 对流程进行重构。利用信息技术可以加速企业流程重构,实现有效有序的管理和 高度的灵活性。 在企业信息化的浪潮下,很多有一定规模的企业都进行了信息化建设,如销 售系统、财务系统、办公自动化等。各种信息系统的大量使用提高了企业的生产 工作效率,但是这些信息系统基本上都是独立的,形成了一个一个的信息孤岛。 它们的开发模式通常是将业务流程硬编码到应用系统的整体结构中,每次业务流 程的修改都可能引起程序结构的大幅变动。其僵硬的体系结构增加系统维护的复 杂性,大大降低了系统灵活性。对于最终用户来说,业务流程的变更需要大量的 时间,严重地影响了企业对市场的响应速度,失去了市场机会;对于系统集成商 和软件开发商来既,业务流程不断变更,使之史陷入系统开发和维护的泥沼中。 这种情况下,企业迫切需要一种能够支持业务流程自动化的软件工具来满足 企业流程管理的需要。工作流管理系统顺应这需求孕育而生,它是用于实现工 作流建模、执行、监控、分析、度量和优化的基础中间件平台。j 作流建模工具 是工作流产品提供给用户建模的工具。它直接影响用户建模的工作效率和对工作 流产品的评价。 7 基于j 2 雎平台的工作流建模工具的研究 2 2 工作流基本概念 w f m c7 - 作流基本概念关系图,图2 一i ,直观地展示了工作流核心的几个基本 概念,以及它们之间的关系。从图上我们可以知道,工作流建模工具产生的工作 流过程定义是工作流管理系统的基础,是工作流运行服务器运行时执行的对象。 下面讨论几个工作流技术相关的重要概念f 6 j : 业务过程( b u s i n e s sp r o c e s s ) 共同实现一个业务目标的一 个或者多个相关的过程、活动的集合。活动可以是自动完成的活动也可以是手工 完成的活动。一个业务过程通常和一个或者多个定义了功能角色、关系的组织结 构相关。每个业务过程有开始的触发条件和完成后的输出,可以和参与者进行交 互。 过程定义( p r o c e s sd e f i n i t i o n ) 过程定义包括了过程被工 作流管理系统执行时的全部必要信息。包括:过程启动、中止条件,后继活动和 活动之间的导航规则,参与者,应用程序,工作流相关数据的。通常过程定义要 参考组织模型和组织模型内部的角色模型。这样过程定义就可以根据组织模型和 参与活动的角色来定义参与者,而不是根据具体参与者定义。过程定义与运行时 期的工作流相关数据一起控制过程中活动的导航、不同活动的并行执行、顺序执 行选项、用户任务、与每个活动相关的i t 应用程序等。如果过程定义包括组织模 型角色实体类型,那么完成以上任务,需要访问组织角色模型数据。 活动( a c l i v i t y ) 活动是过程的一个逻辑步骤。 个过程包 括一个或者多个活动。活动分手工活动和自动活动。活动是过程执行时工作流引 擎调度的最小单位。活动的主要属性有:活动名称、活动类型、活动的前后条件、 调度的约束参数等。 过程实例( p r o c e s si n s t a n c e ) 是有自己相关数据的一个过 程执行时的表示,它可以被独立地控制,有自己对内对外的独立性。过程实例由 工作流管理系统根据过程定义创建。 8 基于j 2 e e 平台的工作流建模工具的研究 活动实例( a c t i v i t yi n s t a n c e ) 是一个活动的运行时的表示。 一个活动实例表示一个活动被调用。 工作流参与者( w o r k f l o wp a r t i c i p a n t ) 是执行工作流活动 实例的资源。 工作项( w o r ki t e m ) 表示流程实例中一个活动要做的工作。 个活动可以产生一个或者多个工作项。 图2 一lw f m c 工作流基本概念关系图f 5 】 2 3w f m s 的参考模型 市场中有非常多的工作流产品,都针对不同方面的应用。制定协同工作标准, 基于j 2 旺平台的工作流建模工具的研究 我们可以更好地选择工作流产品,最大限度地满足需求。我们可以向一个供应商 买过程分析、定义产品,而向另一个供应商买工作流引擎,然后向第三个供应商 购买客户端任务表处理程序与前两个产品集成。一个工作流可以方便的拆分为几 个子过程,每一个子过程由适合特定数据类型、平台、网络环境的专门工具执行。 通过协同工作流标准,可以把几个专门的工具的集成在一起满足过程的精确需 求。为了满足这些需求,w f 眦对通用工作流应用结构进行分析提出了工作流参考 模型。 w f m c i 作流参考模型定义了工作流产品的主要组件和接口。遵循这些标准接 口,各种工作流产品可以在不i 司层次下协同工作。用户可以从多个满足w f m c 标准 的工作流产品中根据自己的需求选择其中一个过程定义工具或工作流引擎。 图2 2 是w f m c 提出的工作流参考模型,下面对参考模型的各主要组成部分、 各部分的功能和各接口的定义进行探讨。 图22w f m c 工作流参考模型【1 2 基于j 2 髓平台的工作流建模工具的研究 2 3 1 工作流执行服务器 工作流执行服务器( w o r k f l o we n a c t m e n ts e r v i c e s ) 使用一个或多个工作流 引擎,为过程实例和活动实例提供运行环境,负责解释和激活过程定义,与过程 所需的外部资源进行交互。在参考模型中,过程与活动控制逻辑间有一个逻辑上 的分离,活动控制逻辑就构成了工作流执行服务器。 在分布式的工作流执行服务器中,每个工作流引擎控制过程执行的一部分, 并与这部分过程中的活动所要用到的用户、应用工具进行交互。在分布式的执行 服务器中有公共的名称空间与管理范围,过程定义、用户应用程序的名称在一 致的标准下被处理。分布式工作流系统,通过在工作流引擎之问采用特殊的协议 和信息转换格式来同步工作流引擎的操作、过程交换和活动控制信息。工作流相 关数据也可能要在工作流引擎间进行传递。 在工作流引擎之间需要一个标准的交换格式,来实现异构产品间的调用,接 口4 定义了这个标准。使用接口4 ,执行服务器可以把活动或者子过程转移到另 外一个执行服务器中执行。在工作流参考模型中,这就是“工作流引擎交互”。 2 3 2 工作流引擎 工作流引擎负责一个运行服务器的部分或者全部运行时控制环境。工作流引 擎可以控制过琏秒f 过程执行,也可以控剖对象类魁的范围、及其属性定义好运 行范围的实例的执行。工作流引擎的主要功能: 解释1 作流建模:i 具产生的过程定义。 控制过程实例( 包括创建、激活、挂起、中止过程等) 。 为过程的活动导航,可能包含顺序或者平行的操作、最后时间期限、 对工作流相关数据进行解释。 参与者签名和退出。 基于j 2 e e 平台的工作流建模工具的研究 确定工作项以实现用户意图,提供接口支持用户交互。 维护工作流控制数据和工作流相关数据,在应用程序间或者用户间 传递工作流相关数据。 提供调用外部程序的接口,连接所有工作流相关数据。 控制、管理和审查功能。 在一个由多个工作流引擎构成的工作流执行服务器中,要把过程进行划分,分配 给工作流引擎。可以按照过程类型来划分,每个工作流引擎负责控制相应类型过 程;也可以按照功能进行划分,每个工作流引擎负责控制过程的一些部分,这些 部分所需要的用户或者资源,都在此工作流引擎的控制范围内。还可以按照其他 的一些机制来划分工作流引擎的职责。 2 3 3 过程定义工具 过程定义工具( p r o c e s sd e f i n i t i o nt 0 0 1 ) 用于创建计算机可以处理的工 作流过程定义。图形化的过程定义工具以过程模型为基础,产出为x l v i l 格式的 过程定义。本文的e 3p r o c e s sb u l i l d e r 以基于活动网络图的过程模型为基础,产 出为x p d l 格式的过程定义。 j 2 3 4 l :作流客户端功能 任务表处理器是在需要调用人资源的活动中,用柬与终端用户进行交互的组 件。任务表处理器可以作为工作流产品的一部分提供给用户,也可以由用户自己 开发。在一些情况下,【:作流可能要与普通的办公系统进行集成,例如e m a i l , 来为终端用户提供一个统一的任务管理系统。这就要求在工作流执行服务器与工 作流客户端应用程序间有一个非常灵活的通信机制。 1 2 基于j 2 e e 平台的工作流建模工具的研究 在工作流模型中,客户端应用程序与工作流引擎通过定义好的接口( 接d 2 ) 进行交互。这个接口包含任务表一工作流引擎分配给用户的工作项序列。工作 流引擎通过访问任务表来把工作项分配给用户,任务表处理器访问任务表取得工 作项分给用户处理。 任务表中任务项的激活可以由工作流客户端应用程序或者终端用户控制。在 工作流客户端应用程序与工作流执行服务器间定义了一系列的方法,用来向任务 表中添加、删除、激活工作项等。任务表处理器可以直接地或者在终端用户控制 下调用应用程序。与任务表相关的部分活动的数据,是任务表处理器用来调用应 用程序所必须的信息。工作流客户端应用程序可能会实现一部分接1 :3 3 的功能。 任务表中可能包含一个过程中的几个不同活动实例的工作项,或者包含几个 不同过程中的活动项。一个任务表处理器可能要与几个不同的工作流引擎、工作 流执行服务器进行交互。图2 - 3 是w f m c 定义的客户端应用程序接口,即接口 2 。 图2 - 3 客户端应用程序接口( 接口2 ) f 1 2 】 1 3 命令集 过秽活动控制函数 过程状态函数 任务列表操作命令。 基于j 2 e e 平台的工作流建模工具的研究 2 3 5 应用程序调用功能 工作流引擎在本地处理应用程序调用,使用过程定义中的信息来确定活动的 性质、要调用的应用程序的类型和所需的数据。被调用的应用程序对工作流引擎 来说可能是本地调用,或者与工作流引擎在相同的平台下,或者在一个独立的网 络访问的平台中。过程定义中有足够的应用程序类型和寻址信息来实现应用程序 调用。图2 4 是w f m c 定义的应用程序调用接口,即,接口3 。 标 图2 4 应用程序调用接口( 接口3 ) 1 2 1 2 3 6 工作流协同工作流能力 w f m c 的一个主要目标是为不同工作流产品协同工作定义标准。w f m c 定义了4 个协同工作模型,包含多种级别的协同1 作能力。下边就来描述这几个模型。图 中正方形来表示任务或者活动。 基于j 2 e e 平台的工作流建模工具的研究 模型1 一链型 图2 5 中,过程a 的一个活动连接到过程b 的一个活动。这个模型支持在两个 工作流环境之间传递任务( f f 程实例或者活动) ,然后在第二个环境中独立执行, 不需要同步。 过程a过程b 一一 图2 - 5 模型2 子过程嵌套 图2 - 6 中,过程a 的一个任务是一个子过程b ,子过程b 在另外一个不同的 执行服务器中执行。如图2 - 6 ,子过程b 结束后开始执行父过程的a 3 活动,并 把控制返回给执行服务器a 。 图2 - 6 模型3 一p 2 p ( p e e rtop e e r ) 这个模型提供一个完全的混合环境;图2 7 中一个复合过程c 中的活动需要在 多工作流引擎执行服务器形成的共享域中执行。活动c 1 、c 2 和c 5 由执行服务器a 执行,活动c 3 、c 4 5 f f c 6 由执行服务器b 执行。这个模型中,过程是透明地由任务 基于j 2 e e 平台的工作流建模工具的研究 到任务来推进的,不需要用户或管理员参与,交互只在工作流引擎问发生。 过程c h 运行 弋 7 工作流引擎a 砟u _ j 图2 7 模型4 一并行同步( p a r a l l e ls y n c h r o n i z e d ) 这个模型中过程可以在不同的执行服务器上执行,但是两个过程有同步点。 当过程执行到同步点的时候激发一个公共事件。这种机制可以在多个并行执行的 进程中进行过程调度,数据恢复或不同流程实例相关数据的传递。图2 8 活动 a 3 和b 4 同步执行。 过程a过程b 基于j 2 e e 平台的工作流建模工具的研究 2 3 7 管理工具 w f m c 规范为管理和监视功能开发公共的标准接口( 接n 5 ) ,这样,一个开 发商的产品就可以用来管理其他工作流引擎的运行。通过公共的接口,可以使用 相同的管理工具对几个不同的工作流执行服务器管理和监视。 w f m c 提出的接口,是要让用户能够得到工作流运行状态的完整视图;同时, 也希望能提供一套全面的功能集,进行系统管理,包括安全性、控制和权限。 接口中包含w a p i ( w o r k f l o wa p i ) 集中的一些具体命令,用来进行操作管理 和监视。 2 4w f m s 的体系结构参考模型 2 4 1w f m s 系统特性 从图2 - 9 w f m s 系统特性图来看,工作流管理系统主要分三部分: 构造期( b u i l dt i m e ) 。主要是对业务流程进行分析、并用过程定义 工具定义工作流过程。通过对i o 接口的支持,过程定义由工作流过程定义工具 输出,由工作流执行服务输入执行。工作流定义工具可以是工作流管理系统自带 的,也可以是遵循规范的第三方过程定义工具。 运行期控制的功能( r u nt i m ep r o c e s sc o n t r 0 1 ) 。主要是在一个可操 作的环境下创建、删除、控制工作流过程实例,调度各个步骤的活动,调用i t 应用和二【= 具。这些功能主要是由工作流引擎实现。 运行期和人或者i t 应用工具交互处理流程的各个活动( r u nt i m e a c t i v i t yi n t e r a c t i o n s ) 。一个工作流过程的活动通常与人的操作相关、由某 个特定的i t 工具实现或需要特定的应用程序来完成,交互是必需的。 1 7 基于j 2 e e 平台的工作流建模工具的研究 图2 - 9 工作流管理系统的特性酬1 2 】 2 4 2w f m s 体系结构参考模型 图2 1 0 是w f m c 提出的工作流管理系统体系结构参考模型,为不同企业研发 作流产品提供了一个参:;| ;_ 。有利j j 以后异构t 作流管理系统的西同工作。 18 基于j 2 e e 平台的工作流建模工具的研究 t 、一 趸 用户 图2 1 0w f m c 工作流管理系统体系结构参考模型f 1 2 】 工作流管理系统中存储的数据可以分成: 工作流控制数据( w o r k f l o wc o n t r o ld a t a ) ,是工作流执行服务器 管理的系统数据,如:过程实例状态信息、活动实例状态信息,它们分别用丁对 过程实例和活动实例进行控制。工作流执行服务器通过维护工作流控制数据,来 确定过程实例或活动实例的状态。 基于j 2 髓平台的工作流建模工具的研究 工作流相关数据( w o r k f l o wr e l e v a n td a t a ) ,是工作流执行服务 器用来判断过程实例状态转移条件的数据。工作流管理系统用工作流相关数据来 判断变迁条件是否满足,并选择下一个要执行的活动。工作流相关数据可以被工 作流应用程序访问。 应用程序数据( a p p l i c a t i o n sd a t a ) ,是应用程序操作的具体数据, 反映的是具体业务的实际内容信息,不能被工作流执行服务器访问。 实际上,工作流控制数据和工作流相关数据是工作流管理系统中本身需要 的数据,应用程序数据是其他系统中的业务数据。 2 4 3 过程和活动状态变迁 2 4 3 1 过程状态的变迁 工作流执行服务可以看作是一个状态变迁器,过程或者活动的实例在响应外 部事件和工作流引擎负责的控制判断后,其状态发生改变。图2 1 1 描述了过程实 例的基本状态变迁方案,箭头表示w a p i ( w o r k f l o wa p i ) 作用下的状态变迁,过 程定义中的变迁条件满足也能发生状态转移。 图2 一l l 过程实例状态基本变迁图 基于j 2 髓平台的工作流建模工具的研究 过程实例的基本状态: i n i t i a t e d ( 初始化) 过程实例已经被创建,包括相关的过 程状态数据和工作流相关数据,但是过程还没有满足开始执行的条件。 r u n n i n g ( 运行) 过程实例已经开始执行,过程中的活动如 果开始条件满足就可以执行。 a c t i v e ( 激活) 过程中的一个或者多个活动已经开始执行。 s u s p e n d e d ( 挂起) 过程实例被静止,在过程返回运行状态 之前没有活动执行。 c o m p l e t e d ( 结束) 过程实例满足结束条件,执行所有过程 结束后的善后操作( 例如记录日志、或者统计信息) ,并且销毁过程实例。 t e r m i n a t e d ( 终止) 过程实例在正常结束前被终止;执行必 要的操作( 例如记录错误信息、或者恢复数据) ,并且销毁过程实例。 2 4 3 2 活动状态的变迁 简单活动实例的基本状态和转移如图2 1 2 。 图2 一1 2 活动实例状态变迁图 阴个基本的活动实例状态: i n a c t i v e ( 非激活) 过程实例中的活动实例已经被创建,但 是还没有激活( 例如,活动的进入条件没有满足) ,并且没有工作项要处理。 a c ti v e ( 激活) 工作项被创建并指派给活动实例处理。 2l 基于j 2 e e 平台的工作流建模工具的研究 s u s p e n d e d ( 挂起) 活动实例被静止,并直到活动返回到运行 状态或非激活状态,才能为其分配任务。 c o m p l e t e d ( 结束) 活动实例执行结束。 一个工作流产品可以根据需求支持更多的状态类型,或者使用不同基本状态 和变迁来替代上图中的状态和变迁。1 】| f m c 参考模型没有指定工作流系统的标准内 部行为。 2 5 关于工作流管理系统的主要研究问题 经过工作流产品供应商和研究人员不懈的努力,工作流技术的研究取得了显 著的成果。但是从工作流系统的实际应用情况来看,工作流产品还远远没有达到 人们的所期望的水平。在工作流管理系统开发的最初阶段,由于缺乏统一的标准, 不同公司的工作流管理系统在功能上、采用的支撑技术、开发技术和接口有很大 的不同。不同工作流管理系统之间缺乏互操作性的接口,一旦选择了一个产品就 很难向其它工作流产品过渡。虽然w f m c 制定了一系列标准改善了这种情况,但 是还不够完善。工作流管理系统要像关系数据库一样成熟还需对很多问题进行研 究。下面是工作流管理技术的几个主要研究问题【4 】: j ( 1 ) 过程建模理论与建模方法。研究如何清晰、准确地表示实际应用中的 过程。研究希i 发展能够支持事务的工f 乍流模型可以从根本上提高:l 佑流系统的: 确性和可靠性,现在关于事务工作流模型的研究也得到了充分的重视。 ( 2 ) 模型验证和模型仿真方法。研究从理论上如何验证所建立的过程模型 不存在死锁问题,研究如何评价模型的性能和优化的模型的方法,对企业业务过 程重组问题的研究和实施企业业务过程重组都有重要的意义。 ( 3 ) 分布式环境下的资源协调和任务优化调度策略。研究大范围的分布环 境下,在资源有限和任务完成时问约束的情况下,如何优化系统中任务执行的顺 序和资源的分配方法,这个问题的研究对工作流技术在大规模生产和调度中有非 基于j 2 髓平台的工作流建模工具的研究 常重要的意义。 ( 4 ) 过程模型和其它模型的集成方法:在描述一个企业和应用领域时,仅 有过程模型是不够的,还需要有功能模型、信息模型、资源模型、组织模型、决 策模型等的配合。这些模型描述了一个应用领域的不同侧面,它们的集成能够对 企业和应用领域进行更全面的描述。如何集成这些模型目前还没有很好的解决方 法。 2 6 本章总结 本章给出了工作流管理系统和过程定义工具的相关概念,研究了工作流管理 系统的参考模型和体系结构。指出了工作流过程建模工具在整个工作流系统中的 基础地位。最后指出工作流技术还不够成熟,实际应用中与人们期望的水平还有 差距。然后介绍了工作流管理技术的几个主要研究问题,包括工作流过程建模理 论和建模方法、过程模型验证和仿真方法、分布式环境下资源协调和任务优化调 度策略、过程模型和其它模型的集成方法。 2 3 基于j 2 f 2 平台的工作流建模工具的研究 第3 章x p d l 过程定义语言 3 1x m l 起源和特点 x m l l l 3 】(e x t e n s i b l em a r k u pl a n g u a g e)是从 s g m l ( s t a n d a r dg e n e r a l i z e dm a r k u pl a n g u a g e ) 发展来的,s g m l 作为一种通用的 文档结构描述语言非常复杂和难以使用。1 9 8 9 年t i mb e r n e r s l e e 依据s g m l 开 发出一种非常简单的超文本格式h t 皿( h y p e r t e x tm a r k u pl a n g u a g e ) 。随后太 简单的h t m l 越来越不能满足用户的要求。为了让h t m l 解决更多的问题,人们对 h t m l 进行修改、升级,从1 - 0 一直升到4 0 的版本,扩展了许多的命令。到了 4 0 版本,h t m l 变得很复杂、难以理解。h t m l 本身也存在很多缺陷,如,把数 据和显示格式一起存放的,如果只想使用数据而不需要格式,分离这些数据和格 式很困难。为了彻底解决这些问题,更好地进行数据交换,1 9 9 8 年1 月w 3 c 公 布了x m l l 0 版本,成为计算机史上一个重要的里程碑。删l 特点: 电子数据交换。) ( m l 以本文的格式对数据进行描述,由于其在数据 。 交换过程中表现出的高效率,x m l 已经广泛用于各种数据交换平台。 灵活开发。x m l 是数据和格式分离设计的,高级用户可以根据自己 的需要设计格式。由于x m ,支持u n i c o d e ,标记还可以中文的。 面向对象特性。x m l 以树状方式存储,有自己的属性,体现了对象 方式的存储,大大方便了而向对象编程。 2 4 基于j 2 髓平台的工作流建模工具的研究 3 2x p d l 的介绍 w f m c 提出的参考模型定义了5 个接口。有关过程定义的导入导出构成了接 口1 的主要功能。在实际应用中,人们会使用各种不同的工具来对业务过程进行 建模、分析。接口1 定义了一个公共的过程定义交换格式,使得不同产品的工作 流过程定义可以实现模型交换。接口1 实现了工作流定义与执行的分离,使得工 作流的定义工具与执行工具相互独立,从某个定义工具中建立的工作流模型可以 作为多个不同工作流执行服务器的输入。这一特性使得用户可以选择配置自己的 工作流管理系统,他们可以依据自身业务的特点选择符合w f m c 标准的、不同厂 商的工作流工具来组成一个完整的工作流管理系统。 为了实现这个接口,w f m c 定义了一个工作流过程元模型,元模型给出了一 般的模型实体和相关属性。x p d “1 4 1 ( x 札p r o c e s sd e f i n i t i o nl a n g u a g e ) 就是基 于这个元模型定义的文本描述语言。x p d l 是基于潮l 的一种过程定义语言,具 有x m l 简单、传输效率高的优点。x p d l 定义了一个最小的工作流建模实体和属 性集,提供了一种公共数据交换格式。遵循接口l 标准

温馨提示

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

评论

0/150

提交评论