(计算机应用技术专业论文)审批系统中柔性工作流引擎的研究与开发.pdf_第1页
(计算机应用技术专业论文)审批系统中柔性工作流引擎的研究与开发.pdf_第2页
(计算机应用技术专业论文)审批系统中柔性工作流引擎的研究与开发.pdf_第3页
(计算机应用技术专业论文)审批系统中柔性工作流引擎的研究与开发.pdf_第4页
(计算机应用技术专业论文)审批系统中柔性工作流引擎的研究与开发.pdf_第5页
已阅读5页,还剩55页未读 继续免费阅读

(计算机应用技术专业论文)审批系统中柔性工作流引擎的研究与开发.pdf.pdf 免费下载

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

文档简介

摘要 在电子政务系统的开发过程中,对审批业务流程的处理是要解决 的核心问题。所以,我们引进工作流管理的思想来构建电子政务中的 审批系统。 工作流引擎作为工作流管理系统的后台核心,其设计是工作流管 理系统设计与实现的关键所在。工作流引擎根据建模工具建立的过程 模型来推进过程的执行,从而达到提高工作效率的目的。 当前,不确定性和多变性已成为现代政企流程的内在特点。因而, 如何提高工作流系统应对流程变化的能力,即如何提高工作流的柔性 已经成为工作流领域研究的热点问题之一。 本文首先讨论了工作流技术的一些基本问题。在此基础上对工作 流的柔性问题作了相应研究;并探讨了电子政务及电子政务与工作流 技术相结合的问题。第二部分对工作流引擎进行了详细分析;并对工 作流管理系统的安全性展开了讨论,主要对工作流安全域层次结构模 型进行了深入研究。依据此模型,提出了流程模板定义与用户权限设 置相分离的设计思想。第三部分是全文的重点,根据工作流参考模型, 结合实际项目要求,使用面向对象的设计( o o d ) 方法,开发了一个 柔性工作流引擎,并在怀化市国土资源局的矿政管理系统开发中得到 了很好的应用。 关键词工作流管理系统,工作流引擎,柔性 a b s t r a c t i n t h ed e v e l o p m e n to fo as y s t e m ,t h ee x a m i n a t i o na n da p p r o v a l p r o c e s si s am a j o rp r o b l e mt h a ts h o u l db es o l v e dc a r e f u l l y f o rt h i s r e a s o n ,w ei n t r o d u c et h et h o u g h t so fw o r k f l o wm a n a g e m e n t w o r k f l o w e n g i n e i st h ec o r eo fb a c k g r o u n di nw o r k f l o w m a n a g e m e n ts y s t e m ( w f m s ) d e s i g n i n gaw e l lw o r k f l o we n g i n ei st h e k e yt or e a l i z eaw f m s a c c o r d i n gt ow o r k f l o wp r o c e s sm o d e l sb u i l tb y m o d e l i n gt o o l s ,w o r k f l o we n g i n ec a np r o m o t et h ee x e c u t i o no f w o r k f l o w p r o c e s s e s i nt h ec u r r e n tg o v e r n m e n ta n de n t e r p r i s e s ,t h ef l o wi sc h a r a c t e r i z e d b yv o l a t i l ea n du n c e r t a i n h o wt oi m p r o v et h ef l e x i b i l i t yo f w o r k f l o w ? i n r e s e a r c hf i e l do fw o r k f l o w , t h i sq u e s t i o nh a sb e c o m eo n eo ft h eh o t p r o b l e m s f i r s to fa l l ,t h i sp a p e rh a si n t r o d u c e dt h e b a s i cc o n c e p t i o na n d c h a r a c t e r i s t i co ft h ew o r k f l o w a c c o r d i n gt ot h ed i s c u s s i o n s ,t h e f l e x i b i l i t yo fw o r k f l o ww a sd i s c u s s i o ns e r i o u s l y t h e n ,t h i sp a p e r i n t r o d u c e st h ec o n c e p to fe - g o v e r n m e n t i nt h e2 n dp a r t ,w o r k f l o w e n g i n ew a sd e t a i l e da n a l y s i s ;a n ds a n q et i m e ,t h es e c u r i t yo fw f l v l si s d i s c u s s e dt h o r o u g h l y ;ah i e r a r c h i c a ls t r u c t u r em o d e lo f w o r k f l o ws e c u r i t y d o m a i n si ss t u d i e d b a s e do nt h e s e ,i tp u t sf o r w a r dt h et h o u g h tt h a t s e p a r a t e st h ed e s i g no f p r o c e s sd e f i n i t i o nf r o ms e tp a t t i e i p a n t s c h a p t e r t h r e ei saf o c a lp o i n to ft h ef u l lp a p e r a c c o r d i n gt ot h er e f e r e n c em o d e l , c o m b i n et h ea c t u a lp r o j e c td e m a n da n du s i n go o d ,i t sh a sd e v e l o p e d o n ef l e x i b l ew o r k f l o we n g i n e ,w h i c hh a sg o tg o o da p p l i c a t i o n ,i nt h e c o u r s eo f d e v e l o p i n ga c t u a l l y k e yw o r d s w f m s ,w o r ke n g i n e ,f l e x i b i l i t y 原创性声明 本人声明,所呈交的学位论文是本人在导师指导下进行的研究 工作及取得的研究成果。尽我所知,除了论文中特别加以标注和致谢 的地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不 包含为获得中南大学或其他单位的学位或证书而使用过的材料。与我 共同工作的同志对本研究所作的贡献均已在在论文中作了明确的说 明。 作者签名: 关于学位论文使用授权说明 本人了解中南大学有关保留、使用学位论文的规定,即:学校 有权保留学位论文,允许学位论文被查阅和借阅;学校可以公布学位 论文的全部或部分内容,可以采用复印、缩印或其它手段保存学位论 文;学校可根据国家或湖南省有关部门规定送交学位论文。 作者签名:监 导师签名日期:丛年三月竺日 硕士学位论文 第一章工作流及其柔性问题概述 第一章工作流及其柔性问题概述 1 1 工作流问题的起源 工作流是从英文单词w o r k f l o w 翻译得来的。w o r k f l o w 是由单词w o r k 和f l o w 组合得到的。w o r k 表示工作或者任务,f l o w 是流动、流程或者流量的意思。f l o w 反映了一种变化及变化的过程,本身的含义比较抽象。因词会意:用活动及活动 之间变化的过程表示的业务流程就是工作流。 工作流的概念起源于生产组织和办公自动化领域。它是针对日常工作中具有 固定程序的活动而提出的一个概念。提出的目的是通过将工作分解成良好的任 务、角色,按照一定的规则和过程来执行这些任务并对它们进行监控,达到提高 办事效率、降低生产成本、提高企业生产经营水平和企业竞争力的目标。实际上, 自从进入工业化时代以来,有关过程的组织管理与流程的优化工作就一直在进 行,它是企业管理的主要研究内容之一只不过在没有引入计算机信息管理系统 的支持以前,这些工作是由人工来完成的。随着计算机网络技术和分布式数据库 技术的迅速发展、多机协同工作技术日臻成熟。2 0 世纪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 dr o u t i n g ) 、实例跟踪、关键字索引以及光盘存储等功能结合在一起, 形成了一种全面支持某些业务流程的集成化的软件( 包) ,这便是早期的工作流管 理系统【l 】 进入2 0 世纪9 0 年代,随着计算机与网络技术的迅速发展,特别是在 i n t e r n e t 应用日益普及的情况下,现代企业的信息系统的分布性、异构性和自 治性的特征越来越显著,相应的企业信息资源也分布在异构的计算机环境中,信 息资源之日j 的连接表现出松散耦合的特点,这样的信息系统环境简称h a d 环境 ( 异构、自治、分布) 。在大规模的异构分布式信息处理与应用执行环境下,企业 物理位置的分散性和决策制定过程的分散性特征日益明显、对日常业务活动详细 信息的需求日益提高、c 1 i e n t s e r v e r 体系结构和分布式处理技术( c o r b a 、w w 、 o l e 、j a v a ) 得到广泛应用。在这种技术背景下,工作流管理系统也由最初的创建 无纸办公环境,转变成为同化企业复杂信息环境、实现业务流程自动执行的必要 工具。这样的一个转变,把工作流技术带入了一个崭新的发展阶段,使得人们从 硕十学位论文 第一章丁作流及其柔性问题概述 更深的层次、更广泛的领域上对工作流展开了研究。 目前,在全球范围内,对工作流的技术研究以及相关的产品开发进入了更为 繁荣的阶段,更多更新的技术被集成进来,文件管理系统、数据库、电子邮件、 移动式计算、i n t e r n e t 服务等都已被容纳到工作流管理系统之中。 1 2 工作流及工作流管理系统 1 2 1 工作流的基本概念和定义 多年来,不同的研究者从不同的角度出发,提出一些不同的定义,下面是一 些有代表性的定义: 工作流管理联盟的定义f 2 l 工作流是一类能够完全或者部分自动执行的经营过程,根据一系列过程规 则,文档、信息或任务能够在不同的执行者之间传递、执行。 g e o r g a k o p o u l o s 的定义p 1 工作流是将一组任务组织起来完成某个经营过程。在工作流中定义了任务的 触发顺序和触发条件。每个任务可以由一个或多个软件系统完成,也可以由 一个或一组人完成,还可以是由一个或多个人与软件系统协作完成。任务的 触发顺序和触发条件用来定义并实现任务的触发、任务的同步和信息流( 数 据流) 的传递。 p e o p l e s o f t 公司的定义【l 】 工作流是一个用来实施经营过程实践的机制。 i b ma l m a d e n 研究中心的定义【4 】 工作流是经营过程的一种计算机化的表示模型,定义了完成整个过程所需的 各种参数。这些参数包括对过程中每一个步骤的定义、步骤间的执行顺序、 条件以及数据流的建立、每一步骤由谁负责以及每个活动所需要的应用程 序。 综合上面的定义,笔者认为工作流就是工作流程的计算模型,即将工作流 程中的工作如何前后组织在一起的逻辑和规则在计算机中以恰当的模型进行表 示并对其实施计算。为实现某个业务目标,在多个参与者之间,利用计算机,按 某种预定规则自动传递文档、信息或者任务。 1 2 2 工作流参考模型 w f m c 提出了一个工作流参考模型该模型定义了工作流系统的体系结构、应 2 硕十学位论文 第一章丁作流及其柔性问题概述 用接口及特性。图卜1 为工作流参考模型【5 1 。 图i - i 工作流参考模型 接口1 :工作流服务和工作流建模工具间接口,包括工作流模型的解释 和读写访问; 接口2 :工作流服务和客户应用之问的接口,这是最主要的接口规范, 它约定所有客户方应用和工作流服务之间的功能访问方式; 接口3 :工作流机和应用间的直接接口; 接口4 :工作流管理系统之间的互操作接口: 接口5 :工作流服务和工作流管理工具之间的接口。 1 2 3 工作流管理系统体系结构 为了实现工作流技术的标准化和开放性,异构的工作流管理系统与其他应用 系统之间的集成,工作流管理联盟提出了工作流管理系统体系结构的参考模型, 该模型中规范了功能组成部件和接口【6 】【7 】。参考图如图卜2 。 从图卜2 的体系结构中,我们可以看出,工作流管理系统主要内容分三部分。 软件构件:完成相应功能的实现,包括流程过程定义,流程的发起、审 批、监控、结束等。 系统控制数据:存储本系统和其他系统进行逻辑处理、流程控制、规则、 约束条件、状态、结果等数据。 其他应用与应用数据:供工作流系统调用的外部应用和数据。 3 堡主堂垡堡奎 箜二兰三堡堕墨苎至丝塑里塑垄 1 2 4 工作流的实现方式 在一个工作流应用程序中,人们把一个工作主题分为几个部分实现,只有上 一个工作部分完成后,才能启动下一个工作部分。处理流程根据事先的定义,使 工作流引擎自动分发、传递和跟踪文档。工作流可以协调处理企业、客户、合作 伙伴、供应商之间关键的商务活动以及政府与人民群众之间的政务活动。 图卜2 工作流管理系统结构图 我们把实际的信息传递设计成工作流,首先要解决三个问题: “路由” ( r o u t e ) 、“规则”( r u l e ) 、“角色”( r o l e ) ,即通常所说的3 r 哺】。信息要 传递,一定要遵循一定的路径,传递到某一个人,该人就是一个角色,每个角色 对信息的处理需要制定一定的规则。 路由定义了将传送的信息,以及将要接受它的人员。路由可以是顺序的、 并行的、有条件的。也可以是以上任意条件的组合。 规则:规则是评定工作流状态并决定下一个步骤的条件逻辑。规则可以 以一些信息的属性或其它数据源为基础。 角色:角色是工作流( 如报告审批) 中人员或逻辑的表示。在系统中,需要 根据不同事物,如查询、编辑等产生与之相对应的操作,视图和对象的变化、 4 硕士学位论文第一章工作流及其柔性问题概述 创建、消失。这些变化均以3 r 准则为依据来约束。从而建立起以事务处理 为目的的工作流,对动态信息进行管理。 1 3 工作流柔性问题概述 1 3 1 问题由来 工作流概念的引入,其目的是通过将一个具体的工作分解成多个任务、角色。 然后通过一定的规则和过程,约束这些任务的执行。以此来提高企业或政府部门 经营管理水平。 然而,随着企业环境的持续变化,政府政治体制改革的不断深化,不确定性 和多变性已经成为现代政企流程的内在特点。因此,以信息处理和信息集成为中 心,很少考虑随政府企业业务流程变化而变化的传统的e r p ( e n t e r p r i s e r e s o u r c ep l a n n i n g ) 系统显得越来越不合时宣。因而,提高工作流系统应对流 程变化的能力,即提高工作流的柔性已经成为工作流领域研究的热点问题之一。 今天,工作流的柔性已经成为任何一个工作流软件推广应用的关键卖点和难点。 1 3 2 柔性工作流系统特性分析 工作流的柔性主要体现在两个方面网:流程实例的适应性,即一个流程定 义能够根据用户的不同要求实例化出不同的流程实例;活动任务的分配,每次 活动激活分配任务的时候能够根据当时的实际需要,分配合适的任务执行人。 “柔性”一词是针对目前系统在模型定义和执行中表现出的僵化、呆板而提 出的。对传统工作流模型进行分析和研究,可以发现有以下几方面的不足【1 0 l ; 工作流模型被集中定义,无法很好地支持工作流的柔性; 工作流模型路由固定,不能根据实际情况的变化动态变换路由; 工作流执行的任务在模型定义之初就已固定,不能根据企业经营任务的 变化及时更正: i 作流的任务不能动态划分,任务粒度尚不够细化; 相关资源在模型定义之初就被绑定,不能适应由于任务和环境变化而引 起的资源动态分配。 究其本质,工作流模型其实是企业业务流程的形式化表示,主要包括活动 节点和过程约束两部分。活动节点是构成工作流模型的细胞,过程约束则保证节 点之间的控制关系和信息流向预期的方向目标流动。因而,工作流的柔性来自于 其模型对柔性的描述能力。而要使工作流模型具有柔性,则要求活动节点和过程 硕七学位论文第一章t 作流及其柔性问题概述 约束具有动态性,即可变换的特性,以及相互关系的结构动态性。 1 3 3 继承机制对提高工作流柔性的意义 继承原是面向对象技术中的概念,允许子类继承父类中的特性。当工作流过, 程发生变更时,继承的概念可用来检测新过程( 相当于子类) 是否从旧过程( 相当 于父类) 继承了那些必要的特性。 在文献【l l 】中,分析了新、旧过程之间的协议继承( p r o t o c o li n h e r i t a n c e ) 、 弹出继承( p r o j e c t i o ni n h e r i t a n c e ) 、协议弹出继承和生命期继承( 1 i f e - c y c l ei n h e r i t a n c e ) 等4 种继承关系。分别提出与各种关系相对应的继承保持转 换规则,以保证在子、父类之间发生转换时避免动态变更错误。事实上,协议继 承转换相当于在过程执行的某个点上提供另一条执行选择,弹出继承转换相当于 在过程的某两个活动之间插入一个子过程,生命期继承相当于提供并行执行的分 支。这样,当一个过程发生如上变更时,可以通过执行迁移规则来实现,并且可 以由另一组相应的迁移规则来实现相反方向的变更。 继承机制的意义不仅在于解决上述工作流变更问题,更重要的是为柔性支持 问题提供了一种新的方法,但存在局限性。因此,过程中任务的重排序、活动属 性修改等问题就不能依靠这种方法来解决。 1 3 4 相关工作流系统及其柔性分析 目前,工作流产品或研究团体开发的原型系统种类非常多,无法在此一一介 绍。下介绍几个发展时间较长、产品相对成熟、影响比较广泛、具有一定代表性 的工作流系统。 ( 一) w e b s p h e r em q 工作弱f f f l o w m a r k w e b s p h e r em q 工作流【1 2 】t 1 3 1 是i b m 的最新工作流产品,是m qs e r i e s 商业集 成软件中的一部分,以前叫做m qs e r i e s 工作流。该系统采用3 层体系结构:数 据库层、运行服务器、建模部分层和客户端层。 该工作流在实现方而的特点是:使用i b m 的消息队列产品m qs e r i s e 为底 层支持,整个系统通过消息队列进行通讯。支持分布式的多服务器。基于标 准的面向服务体系便于与b p m 等解决方案进行集成。 该工作流在建模方而的特点是:不仅描述了控制流还描述了数据映射。 在层次结构方面,支持无限级的子过程嵌套。支持节点( 包括活动和过程) 的重 用库。提供过程仿真和可选路径分析手段,可以检查元素缺失、数据类型、条件 表达和流程死锁等。 6 硕士学位论文 第一章工作流及其柔性问题概述 ( 二) w i d e w i d e ( w o r k f l o wo n i n t e l l i g e m d i s t r i b u t e dd a t a b a s ee n v i r o m n e n t ) 【1 4 j 是基于 分布式主动数据库技术的工作流管理系统其体系结构由数据库层、基本访问层 和服务器层组成。 w i d e 在建模方而的特点是将工作流模型描述为组织模型、信急模型和过程 模型,概括了工作流的基本要素及相互关系。w l d f 在实现方而的特点是对异常 处理做了比较充分的研究,定义了警告、工作流执行异常和组织异常3 种不同的 异常情况,采用事件驱动的方法,根据e c a 规则进行异常处理。 ( 三) u l t i m u s 于1 9 9 4 年推出第一套跨行业工作流程自动化系统现在逐渐发展为提供全 方位的过程管理解决方案。其主要产品u l t i m a sw o r k f l o w s u i t e5 0 是通过采用 w e bs e r v i c e s 和n e t 技术实现的开放式平台,包含过程模型分析、过程构建、企 业组织图、过程管理和过程分析报表等模块提供对企业过程的生命周期管理。 u l t i m u s 的主要特点有:提供一定柔性的过程定制方式。提供异常处理 功能。具有过程监控功能和仿真分析功能。开放式整合环境提供与e r p 等 系统整合的接口。 ( 四)m e t e o r 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 ) 是佐治亚大学l s d i s 实验室开发 的工作流系统其日的是实现一个能够支持大规模复杂应用的自适应工作流管理 系统,并保证这些应用在异构环境下运行。 m e t e o r 的主要特点有:支持柔性执行路径,即当用户执行某个活动失败 时,可以按照预定义执行其他路径。提供w e b w o r k 和o r b w o r k 两种工作流引擎, 分别用于w e b 环境和通用对象请求代理体系结构( c o m m o no b j e c t r e q t m s t b r o k e r a r c h i t e e t u r e ,c o r b a ) 环境。具有异常处理功能。 ( 五) c o s a c o s a 是s o f t w a r e l e yg m b h 开发的工作流管理系统,其体系结构非常近似 w f m c 提出的参考模型。 c o s a 的主要特点有:支持过程版本控制、过程重用,但不支持活动重用。 支持动态性,能够在运行时修改过程。支持而向多服务器的分布式结构具有 较好的开放性。 表卜1 为上述内容的总结。从表卜1 可以看出,虽然在理论研究中发展了各 种柔性支持方法,但是在产品实现中还需要继续进行深入的探索和实践“5 1 。 7 硕士学位论文 第一章工作流及其柔性问题概述 1 3 5 柔性工作流技术研究的趋势和方向 工作流系统中的柔性研究是近年来的一个热点问题,但其中仍然存在着一些 问题,需要进一步进行研究、改进和发展。 ,。 表1 - 1 工作流产品的柔性比较 w e b s p h e r e m q w i d eu i i i m m e l l b o rc o s a 选择提供的 _ 灵活性 调整提供的 灵活性 异常处理 - 版本控制 - 活动多实例过程重用多 其他节点重用开发性引擎多样性样性 首先,柔性工作流过程的正确性是关乎系统成功运行和维护效率的重要条 件。文献【1 5 j 从考虑必要的柔性出发,提出了工作流系统的质量评价框架,将其 概括起来,即为系统的描述能力、可理解性和正确性3 个方面。可见,正确性要 求是评价柔性系统优劣的重要标准之一。工作流建模本身是一个复杂且易出错的 过程,特别是当工作流过程发生变更、进行再设计或动态调整时,会增加更多的 复杂性和出错可能性,其中包括:引入的变更本身是否有错,过程定义进行变更 的操作过程是否有错,运行中实例是否适合进行动态调整,以及实例的动态调整 过程是否有错等等。然而,目前相应的正确性保证方法还比较欠缺。因此,研究 标准一致的验证体系、探讨验证目标的完备集合以及发展实用的验证方法等,都 还有大量的工作要做。 其次柔性工作流的系统实现和产品化工作需要加强。理论研究成果并没有完 全成功地应用到产品实践中。当前。,在系统实现方面非常有限。仍然需要实用、 有效的方法,将柔性工作流技术的优势发挥出来。 另外,对工作流柔性需求的处理和控制,加之规模性和异质性等因素的影响, 将使工作流系统变得非常复杂。因此,减轻工作流引擎的控制负载以实现引擎控 制轻量,解决建模中的瓶颈,达到建模工作的轻量,以及以功能够用、灵活和低 成本为原则,使工作流引擎简单、小型化,实现引擎功能轻量等,都存在较大的 硕七学位论文第一章丁作流及其柔性问题概述 研究和发展空间。研究轻量工作流体现了工作流系统在控制和实现方面的柔性。 网格技术对工作流的发展也产生了很大影响。网格中提供了很多服务,有时 希望由工作流技术将这些服务控制和管理起来。网格环境下,跨域和动态两个特 性尤为突出,因此,需要的是柔性工作流技术。如何利用传统工作流在定义、执 行、调度等方面发展相对成熟的技术,结合柔性工作流的动态优势,使工作流发 挥其在网格新环境下的独特作用,有待于进一步细致的研究和实践l “。 1 4 工作流技术在电子政务中的应用 1 4 1 电子政务的简介 美国社会预测学家约翰奈斯彼特( j o h nn a i s b i t t ) 在大趋势一书中 认为,始于2 0 世纪4 0 年代末,一直延续到现在有两次大的信息浪潮:第一次是 2 0 世纪4 0 年代以来电子计算机和现代通信技术的发明和广泛应用;第二次是2 0 世纪9 0 年代“信息高速公路”的兴起,一场新的信息化浪潮迅速席卷全球。这 场新的信息革命就是以数字化多媒体集成和互联网络等技术综合而成的第二次 信息化浪潮,网络技术是其主要标志。电子政务就是在以网络技术为核心的信息 技术发展的基础上所产生的政府管理的改革【1 6 l 【”】。 ( 一) 电子政务的定义 电子政务,既政府在其管理和服务职能中运用现代信息和通信技术,实现政 府组织结构和工作流程的重组优化,超越时间、空间和部门分隔的制约,全方位 地向社会提供优质、规范、透明的服务,是政府管理手段的变革,事实上,电子 信息技术在公共管理中的应用实际上要远远超出政府系统的范围l l s 】1 1 9 l 。 电子政务主要包括三个组成部分: 政府部门内部的电子化和网络化办公 政府部门之间通过网络而进行的信息共享和实时通信 政府部门通过网络与民众之间进行的双向信息交流 一个完整的电子政务系统,应当是以上这三个部分的有机结合。电子政务系 统结构如图卜3 所示刚: ( 二) 电子政务的特征及实施 电子政务是从政府的角度出发,服务于社会、企业和个人的电子商务应用, 是一种基于网络,符合i n t e r n e t 标准,面向政府机关,企业以及社会公众的信 息服务和信息处理系统1 2 l l 。 9 硕十学位论文 第一章工作流及其柔性问题概述 1 ) 电子政务的特征 同传统的政府行为及其功能相比较,电子政务具有一些突出的特点阿: 目标用户具有明显的层次化。 比较复杂的公文( 收文、发文) 流程,对文字审核有严格要求。系统应 。, 保证公文文字、逻辑等方面的正确性。 图t - 3 电子政务系统结构图 对信息采编( 汇编) 有较高要求,保证信息上传的顺利进行。 系统提供办公数据备份支持。 系统提供移动办公,远程办公能力。 系统为广大用户提供相互交流的场所。 对系统数据安全、用户权限控制等有严格要求。 2 ) 电子政务的实施 一般来说,政府部门办公自动化系统应以公文处理和机关事务管理( 尤其以 领导办公) 为核心,同时提供信息通讯与服务等重要功能,因此,典型的办公自 动化应用包括公文管理、督查管理、政务信息采集与发布、内部请示报告管理、 档案管理、会议管理、领导活动管理,政策法规库,内部论坛等应用,另外鉴于 i n t e r n e t 在日常办公中占有日益重要的地位,办公自动化系统应该与i n t e r n e t 留有平滑的接 2 4 j 2 5 1 。 1 ) 提供电子邮件功能是办公自动化系统的基本需求; 2 ) 能处理大量的复合文档型数据信息; 3 ) 包含大量的工作流应用; 4 ) 支持协同工作和移动办公; 硕士学 7 = 论文 第一章工作流及其柔性问题概述 5 1 应有完整的安全性; 6 ) 能集成其他业务应用系统和i n t e r a c t 2 6 1 。 1 4 2 电子政务系统中运用柔性工作流技术的意义 事实上,流程的概念充斥于电子政务的各个应用领域。无论是内部办公系统 还是业务审批系统。每项工作都可以转变成为一个工作流模型。在电子政务中, 引入工作流技术,为电子政务领域协同问题的解决,提供了很好的方案 2 7 1 。 每个活动可以看成一个节点,而若干节点则构成整个工作流的躯干此外, 过程及节点的启动和终止条件、各节点问的先后顺序关系、对各个节点的描述( 如 活动的执行者、相关应用程序、需要和产生的数据) 则组成了工作流的血脉,与 节点一起,构成了一个完整的工作流程1 2 8 1 。 工作流技术在运用到电子政务的过程当中,随着工作流技术的发展,也经历 了一个静态到动态的过程。一个动态工作流环境将为建立电子政务系统提供如下 一些优势内容网: 1 ) 以流程化形式规范业务工作 业务工作流程的最大意义在于使得相关工作变得规范。这与管理上对业务工 作进行流程化的目的是一致的。通过设定标准工作环节,定义每个环节的工作内 容和职责,可以在管理上规范各个业务工作的内容。 2 ) 简化业务系统的实现 一个统一的工作流管理系统实现,可以将各个业务系统中有关流程控制的 公共职能分离出来,以中间件的形式提供。这样,大大提高了系统运行的稳定性 和业务系统实现的效率。 。 3 ) 降低流程调整带来的影响 随着管理制度的变更,相应的工作流程不可避免地要作出调整。传统情况下, 工作流程的调整可能意味着整个业务系统的重新设计实现。而通过功能分离,一 个独立的工作流管理中间件能够将单纯的流程调整以流程定义调整的简单方式 解决,而不会蔓延到要调整上端的应用程序。 4 )实现跨部门协同的业务内容 要实现多个业务部门系统间事务协同的功能,事实上也是一个工作流范畴内 的业务内容,比如网上的跨部门并联审批系统。通过构建一个服务于跨部门业务 衔接的公共协同平台,在平台上以工作流系统的模式,将可以实现一个分布式异 构环境下的协同业务系统。这大大加深了电子政务应用的深度。 硕士学位论文 第二章基于工作流的管理系统基本原理 1 5 本文研究内容及安排 本文主要研究工作流管理系统的柔性问题。在全文的开头,作了相关知识和 背景介绍,在此基础上,利用面向对象的设计方法( o o d ) ,开发了一个柔性工 作流引擎。值得一提的是,本文还提到了一个工作流安全层次结构模型。基于该 模型,提出了流程模板定义与用户权限设置相分离的设计思想。因此,在以该引 擎为内核的系统中,系统管理员不但可设置任意类型的流程,而且,可根据实际 需要,设置、修改各节点的用户。从而更进一步增强了柔性和可靠性 全文共分五个部分,组织如下: 第一章介绍并探讨了工作流及其柔性问题,如工作流起源、定义、参考模型、 主要产品及研究方向等;最后探讨了电子政务及电子政务与柔性工作流技术相结 合的问题。 第二章对工作流引擎进行了详细分析;对工作流引擎进行了仔细的需求分析 和总体设计。 第三章对系统的安全性进行了研究,并提出了一个基于层次结构的安全模型 及该模型对增强工作流柔性的意义。 第四章是全文的重点,在分析了工作流引擎结构、处理机制的基础上,提出、 了其设计原则并据此设计了一个柔性工作流引擎模型。 进而结合怀化市国土资源局的实际要求,开发了一个基于工作流的矿政审批 系统。并详细介绍了其功能特点。 最后,对全文进行了总结,并提出了进一步的研究内容和方向。 1 。6 小结 本章详细的探讨了工作流问题的起源、定义、参考模型及当今主要研究问题。 以此作为全文的开篇。 工作流的柔性问题是本文的研究重点。因此,在本章中,对柔性问题的由来、 柔性工作流系统的特性、继承机制等作了详细探讨。 工作流技术是电子政务中的一个重要应用。因此,本章还对电子政务、电子 政务中运用工作流技术作了相应的研究。 最后对本文的研究内容和安排作了具体介绍。 1 2 硕士学 市论文 第二章工作流引擎总体设计 第二章工作流引擎总体设计 工作流引擎是工作流管理系统的核心,工作流管理系统的好坏就在于是否有 一个功能强大的工作流引擎。 2 1 工作流引擎需求分析 依据w f m c 的工作流参考模型可知,工作流引擎是工作流管理系统的核心部 分。它由两部分组成:即工作流引擎核心和工作流引擎接口。工作流引擎核心作 为整个系统的控制中心,负责调度流程的运行,如创建过程实例、管理实例运行 ( 开始、停止、挂起) 、调度活动的运行并创建要处理的工作项、管理过程、活动 的状态、维护用户的工作列表、记录日志;引擎接口负责客户端的工作流应用, 工作表管理器以及工作流管理工具和工作流引擎核心通讯的接口。通过这些接 口,工作流应用程序可以访问引擎运行时的数据,工作表管理器可以取得当前用 户可以进行的任务列表、创建工作流实例和活动实例,取得工作流运行时数据; 工作流管理工具可以监控过程实例运行状态,进行系统中用户、角色及权限的管 理。 图2 - 1 是采用统一建模语言( u m l ) 表示的引擎用例图。 在用例图中的“用户”既可以是系统中的实际用户或角色,也可以是外部模 块,在工作流引擎的用例图中,“用户”相对工作流引擎来说是外部的模块,工 作流引用、任务管理器和工作流管理工具同引擎接口可直接通讯。 通过对审批工作流的分析,在审批业务中的流程大部分属于管理型工作流 ( a d m i n i s t r a n tw o r k f l o w ) ,即业务过程的重复性较强,过程中的参与者的任务较 明确,过程可以事先定义。部分流程有协作型工作流( c o l l a b o r a t i v ew o r k f l o w ) 的特征。 工作流引擎是整个流程的核心和枢纽。它主要提供以下具体功能: 对定制的过程模型进行解析,能够让信息按照预先设定的流向进行流动; 对过程模型相关的规则进行解析,并调用规则解析实现信息的正确流动; 能够按照预先定义的规则生成列表; 实现流程任务监控,使得所有流程实例均在可控下进行运转; 支持子流程的调用; 解析不同类型的步骤; 硕十学位论文 第二章工作流引擎总体设计 吴一9 过程定义软件( 系统) 图2 - i 工作流引擎用例图 员 系统管理员 解析不同的转换; 。 支持条件分支,工作流支持根据设定的条件自动进行判断,根据判断的 结果来决定流程的走向: 支持流程的并发与合作: 支持对流程的监控服务,监控流程实例的运转情况。 2 2 工作流引擎结构 由2 i 可知,工作流引擎由引擎核心和引擎接口两大部分组成,本节先介绍 工作流引擎的整体逻辑结构,然后再分别分析引擎核心和引擎接口的结构及功 能。 2 2 1 流引擎的逻辑结构 工作流引擎功能树如图2 2 所示1 3 0 】: 各功能模块的简单叙述如下: 1 ) 正向流程控制:采用多级授权方式进行处理,第一级授权是只读权,第 二级是审批权在流转过程中,按照系统定义的方式授予只读权,按照用户临时 指定的方式动态授予审批权。有三种流动方式: 只读式流动:审批人只有阅读权限( 用于公文流转) 。 审批式流动:审批人有审批和阅读权限( 可以进行审批) 。 复合式流动:同时有只读式流动和审批式流动。 1 4 占。一 硕+ 学伊论文 第二章工作流引擎总体设计 图2 - 2 工作流引擎功能树 同时,引擎在正向流程的控制上还提供了两种驱动方式: 单驱动模式:在系统的流转过程中,业务流程完全由工作流引擎驱动, 整个系统的每个参与者只需完成自己的工作就可以实现工作流业务的状 态变法。 ” 双驱动模式:在系统的流转过程中,在某些关键的复杂环节中,如果单 靠系统定义的路径,无法满足实际情况下的动态变法的要求,此时需要 用户的参与,对路径进行判断、选择。 2 ) 反向流程控制:这部分的设计目的是让流程回到原来的某个审批状态, 根据其性质,我们将其分为三类: 、 静态回流:中断当前流程,按定义回到前面流程的某一步骤。 动态回流( 取消流程) :取消当前流程,返回流程发起人,之后联系申办 人。 动态回流( 补件) :又分为上级补件和窗口补件。 夺上级补件是补件时工作流暂时中断目前流程,并返回到上一步骤, 经过新一轮的审批处理之后再次启动流程,继续目前的审批。 夺窗口补件是补件时工作流暂时停止目前流程,并返回到窗口状态, 经过申办人材料的重新整理或其他的处理之后,由窗口人员启动 “跳跃式”处理,跳过之前的审批步骤,回到流程中断点继续审批。 3 ) 前依赖条件检查:活动的前依赖条件指明相应的启动条件,启动条件是 通过相应的活动的直接前驱活动及相应的状态标志来表示的,前依赖有三个模 式:串行模式、同步模式和m 中选n 个合并模式。 4 ) 后依赖条件检查:主要是根据过程定义中所设定的,决定应该启动那些 后继的活动,后依赖条件同样有三个模式:串行模式、并行分叉模式和多路选择 硕+ 学伊论文第二章工作流引擎总体设计 模式。 前后依赖条件的检查都是通过引擎临时数据表中的规则以及活动模式表中 的某些条件来实现的。 5 ) 系统监控功能接口:定义查看删除修改角色的参与者,管理员可以通 过系统监控功能接口获得目前各个活动的运行情况报告,并干预实例的进行。 6 ) 流程跟踪:跟踪审批工作流业务状态和审批过程中各主要元素的详细内 容。 7 7 ) 工作表管理器:工作表列出了与业务过程的参与者相关的一系列工作项, 工作表处理程序则对用户和工作表之间的交互进行管理。工作表处理程序完成的 功能有:支持用户在工作表中选取一个工作项,重新分配工作项,通报工作项的 完成,在工作项被处理的过程中调用相应的应用程序等。 2 2 2 工作流引擎核心( 引擎控制器) 引擎控制器是工作流引擎运行时的控制中心,图2 3 给出了引擎控制器结构 图【3 1 1 。 。 1 ) 调度中心 调度中心接受从外部接口发送过来有关流程控制的请求( 如业务初始化、新 建流程实例、获取待办事宜列表以及结束任务等) ,然后根据不同的请求类型调 用相应的处理方法来完成与本次请求相关的操作并将结果返回。由于是在d b m s 内部实现工作流引擎的控制模型,因此有关请求的并发处理等问题完全可以交给 数据库管理系统来完成。因此,事实上可以将调度中心看成一个多线程的并发服 务器,它可以对多个外部请求提供并发服务对外部请求的处理过程中肯定会涉 及到对内部数据结构( 即工作流引擎的数据模型) 中有关数据的读写和更改操作, 这些数据的完整性和互斥操作则可以通过d b m s 提供的各种加锁机制来实现,从 而实现了多个外部请求之间的独立性1 3 2 1 1 3 3 1 。 2 ) 任务管理 任务管理主要根据调度中心的指示完成诸如任务创建、任务状态的转换、任 务的退回和追回以及相关数据的维护等工作。每次“结束任务”的外部请求将触 发调度中心调用“任务管理”为后续环节( 如果存在的话) 创建新的实例,其状 态为“待处理”;同时,其它不同的外部请求也将触发“任务管理”实施任务状 态的切换l 。 3 ) 任务授权 任务授权处理只是针对常规交互活动,即将自己具有权限的任务指派给其他 人。通常情况下,在任务状态为“待处理”时进行任务的授权工作,即处于“正 1 6 硕十学臂论文第二章工作流引擎总体设计 在处理状态”的任务在通常情况下都确定了其执行者。任务授权可以将不同的流 程的权限授权给其他不同的处理人,权限所有人在环节状态为“待处理”时可以 收回已授出的权限。 图2 - 3 引擎控制器结构图 4 ) 后续控制 当应用发出“结束任务”的外部请求时,该请求将触发调度中心启动“后续 控制”。后续控制的主要依据在工作流模型中定义的路由信息和环节的关系来确 定当前环节的后继环节,从而形成后续的环节实例信息。 2 2 3 工作流引擎接口 c o m 是面向对象的软件模型,接口就是c o m 与外界通信的唯一途径。他的定 义是c o m 规范的核心。接口是一组逻辑上相关的函数的集合,他自己可以看作是 指向该组函数集合的指针。接口的定义遵循m i d l ,它是m i c r o s o f t 针对o s f 的 d c e ( d i s t r i b u t e sc o m p u t i n ge n v i r o n m e n t s ) 规范中i d l 语言扩展。接口就是包 含了一组函数的数据结构,他只负责定义函数。在对象创建后,他就是包含了接 口指针和一个虚函数表,接口指针指向虚函数表( 该函数表就成了一组函数指针 的集合) ,每个函数指针指向“c o m 对象实现”里相应的函数的实现。接口规范 并不建立在任何编程语言基础上,任何具有足够数据表达能力的语言,都可以对 接口进行描述。 引擎接口给外部程序提供标准的调用方式。它也是本课题的主要研究问题之 1 7 硕士学位论文第二章下作流引擎总体设计 一本接口对应工作流参考模型的过程定义输入输出接口,过程定义输入输出 接口定义了过程定义和运行环境之间的一个分离点,从而使得通过一种建模工具 产生的过程定义可以被用作许多不同工作流产品的输入。图2 4 中图形化建模工 具是过程定义工具同用户的界面,用户输入的业务过程经过图形化建模工具转换 为工程定义工具的内部表示,并存放在关系数据库中 】, 图2 - 4 引擎同过程定义工具的接口 引擎与客户端程序的接口设计的原则是工作流引擎的内部运行机制对接口 调用者透明。使用户在设计含有审批工作流的系统时,不需要自己动手去重新开 发一套工作流引擎,而是可以通过接口函数的调用,使用己开发出来的工作流引 擎,达到软件重用的目的。 本文将在4 2 节给出1 0 个主要的可重用的接口函数。 2 3 工作流引擎的处理机制 2 3 1 环节状态的变换 环节实例的包括以

温馨提示

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

评论

0/150

提交评论