(计算机应用技术专业论文)通用管理信息系统中的工作流技术研究.pdf_第1页
(计算机应用技术专业论文)通用管理信息系统中的工作流技术研究.pdf_第2页
(计算机应用技术专业论文)通用管理信息系统中的工作流技术研究.pdf_第3页
(计算机应用技术专业论文)通用管理信息系统中的工作流技术研究.pdf_第4页
(计算机应用技术专业论文)通用管理信息系统中的工作流技术研究.pdf_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

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

文档简介

摘要 作为近年来发展最为迅速的几项新技术之一,工作流技术是实现企业业务过程建 模、仿真分析、优化、管理与集成,从而最终实现其自动化的核心技术。采用工作流 管理将使企业按照要实现的主要业务流程而不是传统的按照功能来配置人员的组织结 构,从而大大缩短主要业务过程的处理时间,提高对市场的响应能力。 但是,工作流系统建立在不同的开发环境上,其实现方式会有很大的区别。我们 在实践的过程中发现,如果基础环境很好,工作流可以利用已有环境上的机制简化系 统的实现。 本文首先对工作流技术起源及其定义和工作流管理系统w f m s 做了简单介绍,然后 介绍了工作流建模方法,并提出了一种通过建立不同角度的视图来说明信息系统中业 务过程功能的建模方法。随后描述了工作流技术在我们自己开发的一个通用管理信息 系统体系结构侧i s a 中的嵌入方式和应用以及对该体系结构的权限机制的改进。与 市场上通常的基于分布式的w f m s 产品不同,本文所讨论的工作流机制在g m i s a 中更加 简易实用。文章最后提供了该模型在大连市环保局中山分局业务系统中的应用实例。 关键字:工作流;工作流管理系统;管理信息系统;过程建模 a b s t r a c t a so n eo ft h en e wt e c h n o l o g i e st h a td e v e l o pm o s tr a p i d l yr e c e n ty e a r s ,w o r k f l o w t e c h n o l o g yi s t h ek e yt e c h n o l o g yt h a ta s s i s t se n t e r p r i s eb u s i n e s sp r o c e s sr e a l i z em o d e l i n g , s i m u l a t i o n ,a n a l y s i s ,o p t i m i z a t i o n ,m a n a g e m e n t a n di n t e g r a t i o n ,a n d f i n a l l y a u t o m a t i o n a d o p t i n g w o r k f l o w m a n a g e m e n t f a c i l k a t e s e n t e r p r i s ec o n f i g u r ep e r s o n n e lo r g a n i z a t i o n a c c o r d i n gt o m a i nb u s i n e s sp r o c e s si n s t e a do ff u n c t i o n st r a d i t i o n a l l y , s e q u e n t i a l l ys h o r t e n m a i nb u s i n e s sp r o c e s st i m eg r e a t l ya n d i m p r o v er e s p o n s ec a p a b i l i t yt om a r k e tc h a n g e h o w e v e 5t h er e a l i z a t i o ns o l u t i o no f w o r k f l o ws y s t e mw i l lb eq u “ed i f i e r e n ta c c o r d i n g t od i v e r s ed e v e l o p i n ge n v i r o n m e n ti np r a c t i c e ,w ed i s c o v e rt h a tu t i l i z i n ge x i t i n gm e c h a n i s m r e a l i z ew o r k :f l o wc a r ls i m p l i f yw h o l e s y s t e m l i t h ei n f r a s t r u c t u r ei sg o o de n o u g h t h i sp a p e rf i r s ti n t r o d u c e st h eo r i g i na n dd e f i n i t i o no fw o r k f l o wt e c h n o l o g ya n d w o r k f l o wm a n a g e m e n ts y s t e m ( w f m s ) t h e ni tc o m e st ow o r k f l o wm o d e l i n gm e t h o d sa n d p r e s e n t s o u ro w nw o r k f l o wm o d e l i n gm e t h o di nw h i c hb u s i n e s s p r o c e s s f u n c t i o n si n i n f o r m a t i o ns y s t e ma r ed e s c r i b e db yc r e a t i n gv i e w sf r o md i f f e r e n ta n g l e sl a t e rt h i sp a p e r d e s c r i b e st h e a p p l i c a t i o n o fw o r k f l o w t e c h n o l o g y i n g m i s a ( g e n e r a lm a n a g e m e n t i n f o r m a t i o ns y s t e ma r c h i t e c t u r e ,as o f t w a r ea r c h i t e c t u r eo f m a n a g e m e n ti n f o r m a t i o ns y s t e m d e v e l o p e db yu s ) a n d t h ei m p r o v e m e n tm a d et og m i s a sa u t h o r i t ym e c h a n i s m u n l i k eo t h e r d i s t r i b u t i o n - b a s e dw f m s p r o d u c t s , t h ew o r k i n gm e c h a n i s mo f w o r k f l o wd i s c u s s e di nt h i s p a p e ri se a s i e ra n dm o r ep r a c t i c a l ,i nt h el a s tp a r to f t h i sp a p e r , a l li n s t a n c eo fo u rw o r k f l o w m o d e li sp r o v i d e d k e yw o r d s :w o r k f l o w ;w f m s ;m i s ;p r o c e s sm o d e l i n g 通用管理信息系统中的工作流技术研究 引言 工作流管理技术是近年来在计算机应用领域中发展最为迅速的几项新技术之一,已 经引起研究机构和企业的普遍关注。虽然工作流的概念最早起源于生产组织和办公自动 化领域,但是,随着对工作流管理技术研究的展开和深入,以及计算机网络技术和分布 式数据库技术等辅助信息技术的迅速发展和成熟,人们越来越意识到,工作流管理是 种能够有效控制和协调复杂活动的执行,以及人与应用软件之间交互的信息技术手段。 工作流管理技术的主要特征是实现人与计算机交互事件结合过程中的自动化。它的 出现是当今企业业务发展的产物。伴随着企业的联营与合并,企业的规模日益增长、经 营范围日益扩大、地域范围日益扩张,客观上要求以计算机为核心的信息管理系统克服 原有信息系统的限制,适应新情况与新发展。工作流管理系统同传统的信息系统相比, 具有很大的优势。首先,通过跟踪工作流各活动的状态,自动协调由人或应用的软件完 成的任务以实现业务的流转特性:其次,工作流管理通过分隔过程逻辑和业务逻辑来提 高系统的灵活性,提高软件重用和异构软件的集成 ”。对企业利用工作流方法进行业务 过程的建模和深入分析不仅可以规范企业的业务流程,发现业务流程中不合理的环节, 进而对企业的业务过程进行优化重组,而且所建立的业务过程模型本身就是企业非常重 要的知识库和规则库,可以成为指导企业实旌计算机管理系统的模型。 工作流管理技术 乍为一种过程建模和过程管理的核心技术,可以与其他应用系统有 效地结合,生成符合企业需求的各种业务管理系统,如办公自动化系统、项目管理软件、 e r p 系统等。我们在实践的过程中发现,工作流系统建立在不同的开发环境上,其实现 方式会有很大的区别。如果基础环境很好,工作流可以利用已有环境上的机制简化系统 的实现。本文所介绍的工作流机制,即是工作流技术在我们自己开发的一个通用管理信 息系统体系结构( g e n e r a lm a n a g e m e n ti n f o r m a t i o ns y s t e ms o f t w a r ea r c h i t e c t u r e ) g m i s a 肛1 中的嵌入方式及应用。 本文共分五章,第一章简单介绍了工作流技术起源及其定义和工作流管理系统;第 二章介绍了工作流建模方法,并提出了一种通过建立不同角度的视图来说明信息系统中 业务过程功能的建模方法;第三章阐述了工作流技术在通用管理信息系统体系结构 g m i s a 中的嵌入方式及应用;第四章描述了该模式在大连市环保局中山分局业务系统中 的应用实例;第五章总结全文并提出了我们下步的研究方向。 通用管理信息系统中的工作流技术研究 1 工作流管理系统技术概述 “工作流管理系统是支持企业经营过程高效执行并监控其执行过程的计算机软件系 统。”p j 由于信息技术的发展和目趋激烈的商业竞争,人们不再满足于独立、零散的办 公自动化和计算机应用,而是需要综合的、集成化的解决方案。于是为了支持商业过程 的执行、相互间协作和便于管理,工作流管理系统( w o r k f l o wm a n a g e m e n ts y s t e m , w f m s ) 作为一种新的计算体系结构便应运而生了。 1 1 工作流问题的起源 8 0 年代初期,在p c 机尚未作为信息处理工具而出现的时候,纸张是各行各业中进 行日常业务活动所不可替代的载体,包括表单、文件、信函、技术资料等在内的各类与 企业密切相关的文档都是以纸张的形式在各个部门之间进行传递的。这种古老的载体在 信息的处理、组织、存储以及查询检索方面都是低效的。因此,人们希望出现一种无纸 化的、计算机使能的工作环境,用于实现日常表单处理的电子化与自动化。这种系统可 以看成是现代工作流管理系统的个雏型。 8 0 年代中期,f i l e n e t 和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 ) 、 实例跟踪、关键字索引以及光盘存储等功能结合在一起,形成了一种全过程支持某些业 务流程的集成化的软件( 包) ,这便是早期的工作流管理系统。很显然,这种增值性质 的集成化软件系统为企业简化与重组自己的关键业务流程提供了一种非常合适的方案: 而且,由此我们还可以看出,工作流从最初的诞生之日起就是作为一种面向过程的系统 集成技术而出现的,只不过限于当时的计算机发展水平,它所集成的功能较为简单而己。 进入9 0 年代,随着计算机的普及、网络的延伸,现代企业的信息资源越来越表现出 一种异构、分布、松散耦合的特点,企业的分散性、决策制定的分散性、对日常业务活 动详尽信息的需求以及c l i e n t s e r v e r 体系结构、分布式处理技术( c o r b a 、w w w 、 o l e 、j a v a ) 的曰益成熟,说明了这样一个事实:集中式信息处理的时代已经过去,实 现大规模的异构分布式执行环境,使得相互关联的任务能够高效运转并接受密切监控己 成为一种趋势。在这种不可抗拒的技术背景下,工作流管理系统也由最初的创建无纸办 公环境转而成为同化企业复杂信息环境、实现业务流程自动执行的必要工具。这样的一 个转变,把工作流技术带入了一个崭新的发展阶段,使得人们从更深的层次、更广的领 域上对工作流展开了研究。 工作流技术的标准化组织“工作流管理联盟( w o r k f l o wm a l l a g e m e mc o a l i t i o n , w f m c ) ”于1 9 9 3 年成立,它提出了工作流领域相应的概念和术语。在全球范围内,对 工作流的技术研究以及相关的产品开发进入了更为繁荣的阶段,文件管理系统、数据库、 电子邮件、移动式计算、i _ n t e m e t 服务等都已被容纳n i 作流管理系统之中。 工作流软件产品从8 0 年代的萌芽到9 0 年代的繁荣,可以总结为3 个阶段:第1 阶 段,主要为应用于某些特定领域的、相对独立的应用系统,比如图像、文档管理系统: 第2 阶段,主要表现为具有底层的通信基础结构、能够实现任务协作的应用系统,比如 2 望旦笪望堕皇墨堕主墼三堡亟茎查! 塞 具有消息传递功能的工作流系统;第3 阶段,具有图形用户界面的过程定义工具、用户 定义与任务执行完全分离的工作流系统。其体系结构基本上符合工作流管理联盟所提出 的标准结构,经历了这三个阶段的发展,工作流产品基本上确定了它在计算机应用软件 市场上的独立位置。 1 2 工作流的定义 工作流管理联盟的定义工作流是一类能够完全或者部分自动执行的经营过程, 根据一系列过程规则,文档、信息或任务能够在不同的执行者之间传递、执行【4 】。 m ma l m a d e nr e s e a r c hc e n t e r 的定义工作流是经营过程中的一种计算机化的表 示模型,定义了完成整个过程所需用的各种参数。这些参数包括对过程中每一个单 独步骤的定义、步骤间的执行顺序、条件以及数据流的建立、每一步骤由谁负责以 及每个活动所需要的应用程序p 】。 a m i ts h e t h 的定义工作流是涉及到多任务协调执行的活动,这些任务分别由不 同的处理实体来完成。一项任务定义了需要做的某些工作,它可用各种形式来进行 定义,包括在文件或电子邮件中的文本描述、一张表格、条消息以及一个计算机 程序。用来执行任务的处理实体可以是人,也可以是计算机系统( 比如一个应用程 序、一个数据库管理系统) 1 6 。 w m p v a nd e ra a l s t 的定义工作流是一系列工作的偏序集。工作的序列可以有 多种方式,比如工作x 与y 满足) 汀当且仅当x 在y 开始之前就已经就绪【7 1 。 工作流技术是实现企业业务过程建模、业务过程优化、业务过程管理与集成,最终 实现业务过程自动化的核心技术,应该说它是企业资源管理、电子商务等应用的核心技 术之一。利用工作流技术,并与其它的应用系统有效地集成,可以生成符合企业需求的 各种业务管理系统,如办公自动化系统、客户关系管理系统、供应链管理系统、e k p 系 统、项目管理系统、电子商务系统等。这些采用工作流技术为核心的业务管理的最大特 点是他们具有良好的灵活性,可以依据各单位的具体需求,快速灵活的生成应用系统, 并能够快速适应业务过程的变化、机构体制的改革,迅速地进行重组来满足客户的需求。 根据这些定义,我们可以认为工作流是工作任务在多个人或单位之间的流转。在计 算机网络环境下,这种流转实际上将表现为信息或数据在多个人之间的传送。那么许多 业务过程,如公文处理、论文、报告及书籍的撰写、项目的申请、贷款的申请、联机销 售或购物、旅游产品的预订等等都可以当成工作流加以处理。除了在上述办公、科研、 商业、娱乐等领域的应用外,在工业制造行业如c d 讧s 等领域中也涉及到大量的工作流 管理问题,如产品图纸的设计过程、产品的生产过程等,都是工作流应用的典型例子。 1 3 工作流管理系统 “工作流管理系统是支持企业经营过程高效执行并监控其执行过程的计算机软件系 统。” 。 通常,工作流管理系统指运行在一个或多个称为工作流机的软件上的用于定义、实 现和管理工作流运行的一套软件系统,它和工作流执行者( 人、应用) 交互,推进工作 流实例的执行,并脏控工作流的运行状态。在这里需要强调指出的是工作流管理系统不 是企业的业务系统。在很大程度上,工作流管理系统为企业的业务系统运行提供一个软 望旦笪里笪星墨堕主塑三笪堕垫查堕壅 件支撑环境,非常类似于在单个计算机上的操作系统。只不过工作流管理系统支撑的范 围比较大、环境比较复杂而己,所以也有人称工作流管理系统是业务操作系统( b o s b u s i n e s so p e r a t i n gs y s t e m ) 3 1 。在工作流管理系统的支撑下,通过集成具体的业务应用 软件和操作人员的界面操作,才能够良好地完成对企业经营过程运行的支持。所以,工 作流管理系统在一个企业或部门的经营过程中的应用过程是一个业务应用软件系统的 集成与实施过程。 工作流管理系统可以用来定义与执行不同覆盖范围( 单个工作者、部门、全企业、 企业间) 、不同时间跨度( 分钟、小时、天、月) 的经营过程。这完全取决于实际应用 背景的需求。按照经营过程以及组成活动的复杂程度的不同,工作流管理系统可以采取 许多种实施方式,在不同的实施方式中,所应用的信息技术、通信技术和支撑系统结构 会有很大的差别。工作流管理系统的实际运行环境可以是在一个工作组内部或者在全企 业的所有业务部门。 n m 城1 蛳e p i l ,c 鞠罐i k $ 氇牡 d e 掘l 姒懒 由- 射_ 嶂 p t h 撵聃陆箕神岍m 幻“ c k 咖1丧二1 ,。a w 诎n a 咿袖哺秣m 咖瞳釉件i 艚 u赢。ets a r c , l i e a a o t 、t o o 辅l s 三一 l m e m c t l 埘电_ 7 茛耵卜 v i i ;o 柏哦o wc 洲晰id a l a 图l 工作流管理系统主要功能 f i g u r e1w o r k i l o ws y s t e m c h a r a c t e r i s t i c s 一般而言,所有的w f m s 都将包含三大功能模块:建立时功能、运行时控制功能、 同用户及应用程序的交互功能( 如图1 所示) 。 建立时功能主要目标是通过某种分析、建模及系统定义手段将现实世界的业务过 程转化成某种能够被计算机处理的形式化表示。这种形式化表示,我们就称之为过程定 义( 也称过程模型、过程模板、过程元数据等) 。过程定义中一般都包含有对业务过程中 的各个活动步骤的描述、同这些活动相关的各种计算机或人工操作、以及在各活动之间 进行切换的各种控制规则。过程定义所定义的,实际上就是控制工作流过程执行的各种 参数。 运行时实例控制功能主要进行在某个计算环境中工作流过程的管理及各活动步骤 之间的状态转换。运行时控制系统将解释过程定义,完成过程的可操作实例的创建及控 制,调度过程中各活动步骤,为所涉及到的用户生成待其处理的任务,并在合适的时机 4 * 圈 望旦笪墨堡墨墨竺! 塑三堡堡垫查婴窒 调用有关的应用程序资源,等等。这些服务我们一般就称之为“工作流执行服务”,有些 系统可能是通过一个工作流引擎提供这些服务,而在另外一些系统则可能会用到多个协 作的工作流引擎。工作流引擎是工作流运行时控制系统的核心部分,各种过程实例的执 行都是由它负责完成的。 运行时同用户及应用的交互功能主要完成对工作流实例执行过程中各种活动的 处理。在过程实例的执行过程中,经常需要用户通过某种应用程序来完成过程定义所要 求完成的处理或操作,例如填写一个表单,或使用某个应用程序( 如字处理软件、绘图 软件等) 生成新的文档或处理其他活动传递过来的文档等。另外工作流执行服务也可能 需要自动的调用有关的应用对数据进行处理,如将某些数据写入到某个数据库系统中、 调用某个应用程序对数据进行某种转换等。在不同的w f l v i s 中,工作流执行服务所能访 问的应用或资源可能是不一样的,如有些w f l v i s 可能不提供此种能力,有些可能只能访 问本地的应用或资源,有些则可能通过某种远程调用机制( 如r p c 或对象代理等) 去访问 其他机器上的资源。所有这些构成了运行时交互功能的主要内容。 1 4w f m s 的体系结构 一个工作流管理系统可以看作是一个集成的工作流运行平台,它负责工作流的定义、 分析、解释和执行等一系列的操作。整个工作流管理系统包含三个主要的层次吲( 如下 页图2 所示) :过程定义,工作流执行机构,工作流客户应用。 1 4 1 过程定义工具 过程定义工具在一个工作流管理系统中处于很重要的地位。它可以分析现实世界的 业务过程,建立该过程的模型;这种定义工具可以是一个单独的产品,也可以是嵌入在 整个工作流管理系统中的一个模块;过程定义工具通常采用图形化的方法表示业务过 程,它的最终输出是过程定义,它可以在运行时被工作流引擎解释。 1 4 2 工作流执行机构 工作流执行机构( w o r l d l o w e n a c t m e n ts e i c e ) 一个软件设备,它由个或多个工 作流引擎组成,用来创建、管理、监督工作流实例。应用可以通过一个标准接口w a p i ( 9 1 ( w o r l d l o wa p p l i c a t i o np r o g r a m m i n gi n t e r f a c e ,w f l v i c 制定) 与该机构进行交互。 通用管理信息系统中的工作流技术研究 圈s 咖”嗍蛳眦 冒冒嚣 图2w m c 工作流管理系统的一般体系结构 f i g u r e2 g e n e t i cw o r k f l o wp r o d u c ts t r u c t u r e 工作流执行软件解释过程描述、控制过程的实例化和活动发生的顺序、将工作任务 加入到工作列表中,这些任务可以有一个工作流引擎或多个工作流引擎协作完成。该机 构维护内部控制数据( 这些数据可以是集中式的,也可以是分布式的) 。这些控制数据 包括处于执行状态下的各个过程的内部状态信息、检验点和为了从错误状态中恢复的恢 复重新启动信息。 过程定义和运行时的工作流相关数据是用来导航业务过程的活动,提供每个活动的 开始条件和结束条件,以及执行该活动要涉及的人力和i t 资源信息;如果过程定义包 含以上限制,执行机构就需要访问工作流组织角色模型。 工作流执行机构可以根据其支持的工作流引擎的不同分为两类p o : 1 同构工作流执行机构;包含一个或多个相容的工作流引擎,提供了一个工作流 的执行环境和一个专用的过程定义属性集合。这种工作流的执行方式以及用来 支持这种机制的通讯协议和数据格式通常是专用的。 2 异构工作流执行机构:包含两个或两个以上的工作流引擎,他们遵循通用的标 准,支持在一定层次上的互操作性。这些互操作性标准包括:通用的过程和 活动的命名规则;通用的过程定义规则;支持工作流相关数据在工作流域 间传递;支持工作过程子过程在异构工作流引擎之间传递;通用的工作流 里旦笪里堡皇墨竺! 塑三生垫垫查堡壅一 管理和监控机制。 王往速呈l 墼型q 地q 蔓量坠譬i 坠虹一一个为工作流实例提供运行时执行环境的软件设 备( 引擎) 。工作流引擎可以在执行某个活动时激活相关应用。引擎的能力差别很大, 一些工作流引擎仅能支持某个特定的应用,而一些引擎可以支持大量的本地或远程应 用。个典型的工作流引擎会提供以下一些功能: i 解释工作流的定义; 2 过程实例控制创建、激活、挂起、终止等: 3 工作流过程的导航咆括活动的顺序、并发操作、活动的完成期限、工作流 相关数据等; 4客户的登录和退出管理; 5 识别工作条目,提供用户交互接口; 6 维护工作流控制数据和工作流相关数据,在用户或客户应用之间传递工作流相 关数据; 7 出于控制、管理和授权目的的一些监视活动。 王佳近控制数据o 幽q 翌q 琶l 盟! 壁垒! g 卜一工作流管理系统的内部数据。这些数 据是工作流执行机构维护的,用来标识个单独工作流过程或活动的状态信息,这些数 据是私有的、不可交换的;但在一些同构的工作流执行机构中,这些信息可以通过一个 专用的对话机制在工作流引擎之间进行交换。 王佳逾担羞数据理竖趔q 曼旦;璺! 幽型坠幽r 工作流管理系统使用的、用来决定工 作流过程实例状态转移的数据信息。工作流相关数据被用来决定活动的转移条件,它影 响了将要执行的下一个活动的选择。工作流应用通常需要访问这些数据,因此执行机构 必须在各个活动之间传递这些数据。 王佳速虞盈堑握【卫世i 墨8 主i 塑墅! 璺) 客户应用专用的不能被工作流管理系统所访 问的数据。这些数据是各个应用特有的,工作流模型必须进行相应的处理,在不同的活 动之间交换这些实例数据( 必要时进行数据的格式转换) 。 王佳焦整列鑫盘尘然l 堑! 】指定给某个特定用户或用户组的一个工作队列。工作 列表是工作流引擎和工作处理器之间的一个交互通道,引擎向工作列表中添加工作项目 ( 活动) ,工作处理器取出工作项目,激活相应的应用。对于一些系统来说,工作列表 对用户是不可见的;而对于另外一些系统来说,是可见的,它要求用户从列表中选择并 执行项工作,这时工作列表用来显示工作的完成情况。 工佳处理墨塑盈庄墨厘圆也选邑煎塾g 坠疽! 曼蠡墅s 些! 坠主璺也卜一一个软组件,用来 管理工作流参与者和工作流执行机构之间的交互。它要提醒用户开始一项新的工作、在 一些系统中它还可能具有在一组用户中分配工作、平衡工作负载、激活一个客户应用的 功能。上面的图示中,用户界面是一个独立的组件,在一些系统中工作处理器和用户界 面可以合二为一,而且可以同时与多个工作流执行机构同时交互,将这些执行机构指派 的工作合并成一个工作列表,使用统一的界面提供给用户。 1 4 3 工作流客户应用 工作流客户应用是工作任务的具体执行者,它可能是一个通用的文档处理软件,或 者是个m i s 应用程序。客户应用与w f i v i s 用户界面交互,执行分配的任务。访问工 7 一翌旦笪里堡星墨竺主堕三堡亟垫查堑塞 一 作流应用数据和相关数据。客户应用程序与工作流交互的方式可以有以下几种“】: 邮件传递;通过数据交互;过程调用或消息传递;共享文件。 1 5 工作流管理系统的分类 根据工作流过程本身的特点、系统建模的方式、所使用的底层支撑技术以及工作流 过程的执行方式的不同,可以将现有的具有工作流管理功能的商品化软件产品及原型系 统进行相应的分类f i 2 】: 嵌入式工作流管理系统和自治式工作流管理系统 嵌入式工作流管理系统只有在外围系统( 如企业资源计划系统,e r p ) 的配合下才 能发挥它的作用;它是功能上不完善的,仅仅是信息管理系统的一个组件,它的作用通 过外围系统来表现出来,此时w f m s 用来控制外围系统的工作顺序、进行异常处理。 应该区分那些基于规则的、通常由数据库触发器激活的组件和基于工作流引擎的组 件,前者通常是由应用软件的开发者编写的专用系统,支持一些简单业务处理过程,而 后者通常是具有通用性的组件,可以支持多个应用,而且可以支持更复杂的业务过程。 自治式工作流管理系统是一个在功能上完善的,除了数据库管理系统和消息队列中 间件之外不需要其它辅助应用软件的个自治系统。自治式系统是一个独立的软件,具 有自己的用户界面,可以访问其它应用程序的数据,通常可以支持多个应用【1 3 】。图3 显示了嵌入式工作流管理系统和自治式工作流管理系统的区别。 图3 自治式嵌入式工作流管理系统比较 f i g u r e3c o n r a i lb e t w e e na u t o n o m o u sa n de m b e d d e dw f m s 面向文档的w f l v i s 与面向过程的w f m s 前者的侧重点在于将电子形式的文档、图像等在有关人员之间进行分发,以便能够 得到不同人的处理与审阅。现有的文档管理系统均属此类。在面向过程的w f m s 中,工 作流被描述成一系列执行环节,各环节都有相应的待处理数据对象。各环节的数据对象 可以按不同的方式分发到其它环节中去,如可以将数据对象的值作为控制条件、或者将 此数据对象组装成其它的数据对象等。大型的w f m s 一般都属此类系统。 基于邮件的w f m s 和基于数据库的w f m s 前者使用电子邮件来完成过程实例执行过程中消息的传递、数据的分发与事件的通 知。低端系统所使用的经常就是此种方法,它可以充分发挥电子邮件系统在广域环境下 通用管理信息系统中的工作流技术研究 的数据分发功能,整个系统将运行于一种松散耦合的模式下。在基于数据库的w t m s 中,所有的数据都保存在某种类型的d b m s 中,过程的执行实际上就是对这些数据的 查询与处理。高端的大规模系统所使用的一般都是此种方法。 任务推动w t m s 与目标拉动w f m s 前者指的是过程一个环节、一个环节逐步地执行,当某个活动实例被处理完之后, 后续的有关活动将被创建并被激活,由此直至整个工作流程的完成。这是目前大多数面 向过程的w f m s 所使用的执行方式。而在目标拉动的w f m s 中,一个业务流程被看成 是一个目标。过程实例执行时,该目标将被分解得到多个相互之间按一定约束条件关联 起来的可执行的多个环节,其中各环节还可以当成是子目标而进一步进行分解。在各环 节均执行完毕之后,整个过程也就完成了。 1 6 工作流管理系统的互操作性 工作流管理系统互操作的目标是实现工作任务在不同的系统之间能够无缝的传递; 从而实现一个复杂的互操作场景:几个不同开发商的工作流引擎互相操作,实现一个工 作流执行机构。目前,业界姑缺乏一种行业标准,所以实现这个目标在短期内还是不现 实的。一个现实的目标就是在不同的工作流执行机构之间传递工作任务。 下面将介绍四种不同的互操作模型,这几种模型包含了大多数的互操作等级。图表 中矩形表示工作任务( 活动) ,矩形的颜色表示不同的工作流执行机构 8 1 f 1 4 】【1 5 】: 场景1 链式模型( c o n n e c t e d d i s c r e t e ( c h a i n e d ) ) 该模型允许过程a 的一个联接点a 5 与过程b 的一个联接点b l 相连结;联接点可 以是过程的起始点、终点,也可以是其他点( 活动) ,如图4 所示。该模型支持单个条 目( 可以是一个过程实例,也可以是一个活动) 在两个工作流执行环境中传递,除了联 接点之外,其他的点没有进一步的同步关系。 h # a张嘴獬r 图4 链式模型 f i g u r e4 c h a i n e ds e r v i c e sm o d e l 场景2 :嵌套子过程模型( h i e r a r c h i c a l ( n e s t e d8 u b p r o c o s s e s ) ) 该模型也可以称作等级模型,它允许了一个工作流域b 的工作过程p r o c e s sb 作为 另外一个工作流域a 中的一个工作过程p r o c e s sa 的一个活动,如图5 所示。p r o c e s s a 称作主过程,p r o c e s s b 称作子过程。这种等级关系可以嵌套多个层次。 通用管理信息系统中的工作流技术研究 n 湖蝴o r w 甜n w s 削嫩ar h 嘞# 抽 f w “ n n w 鬟州“牲r 图5 嵌套子过程模型 f i g u r e5 n e s t e ds u b p r o c e s s e sm o d e l 场景3 :对等模型( c o n n e c t e di n d i s c r e t e ( p e e r - t o - p e e r ) ) 该模型描述了一个更加复杂的场景:一个工作过程c 跨越了多个工作流域,形成了 一个共享的工作流域,在该图中,活动c 1 ,c 2 ,c 5 隶属于工作流域a ,而活动c 3 , c 4 ,c 6 隶属于工作流域b ,工作流域相互合作,共同完成一个工作流过程。这种模型 要求不同的工作流域要有一种通用定义语言和交互接口,如图6 所示。 p r 鼬雠c c ; c ,蕊 c l c 5 2 1 一 4 或 卜 2 3 - i 一 2 2 一 3 1 一 4 等多种可能执行。当然实际的系统比这要复杂的多,我们用这种 方式使得工作流描述得更清晰,并且有助于与用户交流。 4 2 3 工作流过程定义 在g m i s a 中,我们用易于理解的层次性好的树状结构表现实际业务。功能树的节 点体现了工作流中的某一任务( 前边我们根据“三同时”窗口业务划分的业务任务在这 里体现为相应节点上的应用) ,节点的层次反映了任务之间的关系。在这里我们根据分 析好的业务中的过程和规则,通过功能树构件( 图1 5 所示) 进行工作流定制就成为非 常方便而简单的方式。 图1 5 功能构件的树状结构 f i g u r e1 5t r e es t r u c t u r eo f t h ef u n c t i o nc o m p o n e n t 4 2 4 权限的控制与分配 在g m i s a 中,权限分成三个级别:应用程序级的权限,数据表级的权限以及记录 级的权限。但对工作流的分析过程中,我们发现这三个级别的权限均体现在数据的横向 控制上,而对数据的纵向控制做的还不够完善。实际应用中,用户对于这种权限控制的 需求还是很明显的。所以我们在原有的权限“人员一岗位( 角色) 一权限”机制的基础 通用管理信息系统中的工作流技术研究 上,又增加了一级控制。这样,工作流程级的权限控制已经到了字段级。图1 6 和图1 7 分别是权限配置功能构件和人员角色视图的显示。 人员角色视图 图1 6 设定数据集相关字段 f i g u r e1 6s e t t i n gc o n c e r n e df i e l d so f d a t a 图1 7 人员角色部门视图 f i g u r e17v i e wo f m e m b e ra n dr o l ea n d d e p a r t m e n t 4 2 5 工作流实例 通用管理信息系统中的工作流技术研究 图1 8z h b v l i s 流程实现 f i g u r e18t h er e a l i z a t i o no f z h b m i sw o r k f l o w 图1 8 显示了中山环保分局管理信息系统中的流程实现。在这里,我们可以看出, 该系统中工作流应用是结构化的而不是即席的。因为在实际工作过程中反复重复、严格 按照某个固定的步骤执行业务过程。在定义工作流的过程中所需要的各种类型的信息可 以通过对业务过程进行详细的分析而得到,然后我们得到完整的过程定义,并且这种定 义在以后的应用过程中可以反复使用。 系统中工作流的运行受数据驱动,当数据改变时,任务的状态也会相应发生改变, 同时触发条件满足驱动下一个任务开始。实例中,“三同时”窗口建设单位申报登记录 入的数据激活整个“三同时”申报办理流程;开发科按建设单位的情况去进行审批过程; 审批后的如果同意建设则进行下一个验收任务,如果不同意,则不允许建设单位继续运 营,该流程暂停或停止。整个工作流,工作流控制数据、工作流相关数据、应用数据都 保存在d b m s 中,过程的执行实际上就是对这些数据的查询与处理。 系统中存在一些业务操作,它们的执行对其他的业务流程没有影响,业务的发生 也是随机的,属于孤立的客户应用,如数据查询等。我们在实现时将这些应用挂在功能 树上,没有对这些节点进行工作流控制。 4 2 6 工作流在w e b 上的应用 排污申报业务是整个环保业务中重要的一个环节,建设单位应该在每月5 号之前 将该单位排污数据申报到环保局,但因其管辖面广、数据量大,一直是环保工作中的一 个难点。考虑到i n t e m e t 现在非常普及,大多数单位具备上网条件,我们正尝试通过w e b 方式来实现该业务。与以往数据由环保局业务人员输入不同,数据通过w e b 方式提交, 进入业务数据库,即可进入整个工作流的处理过程中。这与以往数据从分局管理系统内 部提交不同,因申报人对环保业务理解不同,教育程度不同,保证数据的有效性和合理 性成为需要关心的问题。图1 9 是排污申报w e b 界面的显示。 望星竺翌堕星墨竺! 塑三堡塑垫查里壅一 图1 9 排污数据申报w e b 界面显示 f i g u r e1 9w e bl n m f f a c eo f p o l l u t i o nd a t ad e c l a r a t i o n 4 3 应用效果和系统评价 在中山环保分局信息管理系统中,将工作流技术嵌入到一个相对成熟具有层次结 构风格的软件体系结构中,为理解系统、实现系统以及系统运行提供了良好的保障,也 使得工作流技术的实现在该系统中简易可行。具体表现为:信息系统更加灵活,系统 的可适应性增强;分局的业务流程发生变化仅需要修改业务流程就可以满足新的需求; 系统的可复用性增强。在一个通用管理信息系统的基础上引入了工作流技术,使业务 过程复用变得更加简便,一个企业的工作流模型稍加修改就可以移植到同一领域的其他 企业。降低业务过程的整个处理时间,通过更好地规划工作流程、并行执行相互独立 的活动、减少文档传递过程中不必要的中间状态等方法来显著降低文档的传递和临时存 储的时间,提高了分局的工作效率;提高分局管理的规范化程度和内部的监督管理。 该系统中还有很多不足之处有待我们继续完善。首先,因为市场上还缺乏支持工 作流的客户应用,这些应用遵循的标准也各不相同,所以开发的工作流应用只适应特定 领域:其次,没有提供一种图形化的流程定义工具,使得管理人员进行业务流程修改、 定义时的工作复杂度增加,一定程度上影响了系统的使用效果。另外,在实例跟踪、异 常处理方面做的还不够,很多还是放在了g m i s a 的业务逻辑层,今后在这方面还需做 进一步的工作,并且可以考虑将工作流技术从业务逻辑层中更大程度上分离,成为相对 独立的工作流层。 通用管理信息系统中的工作流技术研究 5 总结与展望 本文所提出的工作流实现模型,是将工作流技术嵌入到个相对成熟的软件体系 结构中,利用其良好的层次性,在不改变其业务管理逻辑的基础上,加入了工作流机制, 并根据工作流实现的特点改进了原有的安全机制。这样做有以下几点好处:规范了企 业的业务流程,降低了业务过程的处理时间,使企业工作效率得到提高;系统灵活 性提高,可适应性和可复用性增强,企业业务流程发生变化仅需用相应工具进行流程配 置就可满足新的需求,而无需修改应用程序;工作流技术的实现在该系统中简易可行, 操作简单易学,用户评价很好。 但是,我们的解决方案也存在很多不足。由于我们的工作流技术主要应用于特定 领域的、相对独立的应用系统,使得整个工作流技术状况更多凸现出“集中式”的特点。 而从工作流技术所要解决的问题来看,它必然要以分布式的方式存在。随着计算机与网 络技术的迅速发展,特别是i n t e r n e t 日益普及的情况下,现代企业的信息系统的分布 性、异构性和自治性的特征越来越显著,相应的企业信息资源也分布在异构的计算机环 境中,信息源之间的连接表现出松散耦合的特点。在这样的环境下要完成不同应用系统 的集成、不同组织人员的协作并最终达到实现经营过程运作自动化与高效率,所采用的 工作流管理必然要具有分布式的特点。以下两个方面是需要我们进一步研究的领域: 工作流技术在w e b 中的应用w w w 是i n t e r n e t 最普遍的一个应用,通过w e b 浏览 的方式可以使人们访问到世界各地的信息,而且使用十分方便,只需要安装前端的一个 浏览器即可。随着w e b 技术的不断发展,特别是动态网页技术的成熟,w e b 不仅能够提 供静态信息,而且能够实现与后台数据库的集成,使得w e b 成为一种很有力的分布式交 互方式。在企业的工作流系统中,w e b 可以用来代替传统的面向执行者的客户端应用, 使用户无需安装特定的软件,通过浏览器就可以获得自己的任务表,并能够进行任务的 提交等功能。尽管我们现在已经在这方面迈出了一步,但是将整个工作流转到w e b 应用 上还需要做很多工作。 分布事务处理技术事务的概念来自于数据库研究领域,主要是为了实现数据在 操作中的一致性。与此相类似,工作流也需要引入相应的事务概念,来保证工作流数据 在工作流分布执行过程中的正确性。从实际应用的角度来看,具有分布事务处理功能对 于工作流系统而言是必不可少的。人们希望通过研究工作流的事务特性,将高级事务模 型与工作流管理技术相结合,用良好定义的模型语义与恢复机制来更好地支持企业的经 营过程,从而提高工作流系统的可靠性与实用性。从目前的工作流产品与研究成果来看, 在这方面尚待进一步研究。 望旦笪望堕星墨堕主塑三堡堕垫查里塞 致谢 在很多人的关心和帮助下论文终于成稿,在此向他( 她) 们表示感谓f 。 首先向我的导师郭禾副教授致以最衷心的感谢。在论文的选题、书写和审阅过程 中,始终得到了郭老师的关心、指正和鼓励。在我的硕士研究生学习中,他渊博的知识、 深刻的思想和潇洒平和的生活态度都深深的影响了我,令我受益匪浅。同时也要感谢陈 锋老师,他忘我的工作热情和对新知识孜孜不倦的追求都值得我学习。 实验室里与王宇新、何然、罗文华、单慧英、代莉、李锐、李军波和其他师弟师 妹共同学习、工作的日子令人愉快而难忘的。在此向他们表示感谢。 感谢家人一直以来的的关,b 和支持。感谢外祖母二十多年来的养育,她对我的爱 护和期望让

温馨提示

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

评论

0/150

提交评论