(计算机科学与技术专业论文)基于eca规则的柔性工作流技术研究.pdf_第1页
(计算机科学与技术专业论文)基于eca规则的柔性工作流技术研究.pdf_第2页
(计算机科学与技术专业论文)基于eca规则的柔性工作流技术研究.pdf_第3页
(计算机科学与技术专业论文)基于eca规则的柔性工作流技术研究.pdf_第4页
(计算机科学与技术专业论文)基于eca规则的柔性工作流技术研究.pdf_第5页
已阅读5页,还剩65页未读 继续免费阅读

(计算机科学与技术专业论文)基于eca规则的柔性工作流技术研究.pdf.pdf 免费下载

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

文档简介

国防科学技术人学研究生院学位论文摘要目前,工作流管理系统在实际应用中并没有取得预想的成功,原因之一是在目前绝大多数的工作流管理系统中,工作流模型对实际业务过程过分简化和过多限制,工作流模型大多是处理可预见的、事先给出完整定义的流程,影响了它在实际中的应用效果。然而现代企业流程所固有的多变性和灵活性要求其完整定义只有在流程实例运行过程中逐步得到完善而且要求工作流模型描述能力更强。这都要求在建模层面上给予一定的柔性支持。工作流的柔性( n e x i b i l t y ) 是指工作流适应需求变化和环境变化的能力。工作流建模工具描述能力的强弱是解决工作流系统柔性问题的关键。本文主要研究在传统图形化建模方法基础上,引入e c a 规则增强工作流系统的柔性。e c a 规则不但具有传统图形建模工具的建模能力,而且能够增强它的建模能力,更能满足企业复杂的流程建模需求。运行时刻动态生成工作流实例,在一定程度上解决了运行前某些流程定义不能完全确定的问题。通过e c a 规则动态修改模型定义,可以实现工作流程的动态部署。本文设计了相应的工作流管理系统架构,并实现了能够运行在分布式异构环境中的规则引擎,负责e c a 规则的解释执行。关键词:工作流e c a柔性动态建模规则引擎第1 页国防科学技术大学研究生院学位论文a b s t r a c tn o w a d a y s ,w o r k n o wm a n a g e m e n ts y s t e m ( w f m s ) h a sn o tg a i n e dt h ee x p e c t e ds u c c e s si nt h ec o m m e r c i a l 印p l i c a t i o n o n eo ft h er e a s o n si sm a ti na l m o s ta 1 1t h ew f m s w o r k n o wm o d e ls i m p l 讯e sa 1 1 dl i m i t st h ep e a lb l l s i n e s sp r o c e s s ,i to m yh a n d l e st h ec o m p l e t c l yp r e d e f i n e da n dp r e d i c t a b l ep r o c e s s t h i s “f e c t sm ee f f e c t si nt h er e a lw o r l d h o w e v e r ,b e c a u s em o d e me n t e r p r i s ep r o c e s s e sc h a n g e 舭q u e n t l y ,t h ew o r 如o wm o d e ls h o u l dh a v es 仃o n gd e s c 曲a b l ea b i l i t ya t l db e 曲l et o n s u n u n a 把s t c pb ys t 印i nt h c 删n gp h a s e w em u s ts u p p o nt 量l er e q u i r e m e n ti nt h em o d e l l i n gl a y e r t h ef l e x i b i l i t yo f w o r k n o wi sm ea b i l i t i e sm a t 血ew o r k n o wc a na d a p tm ec h a n g e so f r e q u i r e m e n ta l l de n v i r o 姗e n t t h ed e s c r i b a b l ea b i l h yo fw o r k n o wm o d e l l i n gt o o li st h ek e yo fr e s o l v i n g 出en e x i b l ep r o b l e mo f 、v o r k f l o ws y s t c m t h i sa n i c l em a i l l l ys t u d i e sh o wt os t r e n 垂ht h en e x i b i l i t yo fm ew o f k f l o wu s i n ge c am l e sb a s e do nt l l et r a d i t i o n a lg r a p l l i c a lm o d e l l i n gt o o l - e c am l 韶n o to n i yc a i ld e s c 曲et h ct m d i t i o n a lw 删l o wm 呔l e l ,b u ta l s oh w em o t cp o w c r 】f i l id c s c r i b a 埘ea b i l i t i e s i ns o m ec a s e s ,p a n l yd ) r i l 锄i cc r e ,址i o no f l cw o f k n o wi n s t a n c er e s o l v e s 协e1 1 芏1 p r c d i c 协b l ep r o b l e mo f m ew o r i m o wm o d c lk f o r en m i l l g d y l l a m i c a l l yc h 孤g i n gt l l em o d e lb ye c am k s ,w ec 髓d y n 籼砌l yd e p l o ym ew o r k n o wp m c e s s t l l e 枷c l eb u i l d st h ea r c h i t e c t u r co f 也ew o r k f l o wm a l l a g e m e n ts y s t e ma n di m p l e m e n t sar u l ee n g i n e 砌c hc a l lr u ni nm ed i s 城b u t e da n dh e t e r o g e n e o u se n v i r o 砌e ma n d m t e l _ p r e l :st h ee c a n j l c s k e yw o r d s :w o r k n “we c af k x n k 抑扣柚t 王cm 砌e 赫gr m ee n g i n e第1 i 页国防科学技术人学研究生院学位论文图目录图2 1 工作流参考模型体系结构6图2 2 工作流管理系统功能关系图8图2 3 描述过程模型的两种方式1 0图3 1 基于e c a 规则的工作流平台体系结构1 4图3 2 基于e c a 规则的工作流执行机制1 7图3 3 事件类图2 0图3 4 活动状态转换图一2 3图4 1 用p e t r i 网表示的六种逻辑关系图2 6图4 2 经费审批工作流程2 9图4 3m o d e la g e n t 工作过程3 1图4 4 病人就医流程图3 3图4 5 根据s a c s 规则建立的动态予流程3 5图4 6 修改后的经费审批流程。3 6图5 一l 集中式消息传送与点对点消息传送3 9图5 2 消息服务体系结构4 l图5 - 3 代理服务组件4 2图5 4 规则引擎体系结构4 4图5 5 规则引擎包图。4 6图5 6r u l e s e t 类图图5 7r u l e s e l m a n a g e r 类图图5 8w o r k m e m 类图图5 9a g e n d a 类图图5 】oi n f e r e n c e e n g i n e 类图一图5 1 li n f e r e n c e e n g 眦f a c t o r y 类图图5 1 2e c a 规则典型执行过程的 颐序图4 74 84 95 05 l5 2第i i i 页国防科学技术人学研究生院学何沦文表目录表5 1 主要代理服务组件及功能表5 2 任务执行i ; p r o c e s s a g e n t 中部分n v t 的内容表5 3s a 2 和s a 3 执行完以后p r o c e s s a g e n t 中部分n v t 的内容表5 4e c a 规则e l 条件的解释执行过程4 25 6一5 65 7第i v 页独创性声明本人声明所呈交的学位论文是我本人在导师指导下进行的研究工作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表和撰写过的研究成果,也不包含为获得国防科学技术大学或其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示谢意。学位论文题目:基士! 坠赶型盟耋世兰丝道垫盛叠衮学位论文作者签名:壑叁! 圭日期:二。f 年,二月y 日学位论文版权使用授权书本人完全了解国防科学技术大学有关保留、使用学位论文的规定。本人授权国防科学技术大学可以保留并向国家有关部门或机构送交论文的复印件和电子文档,允许沦文被查阅和借阅;可以将学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。( 保密学位论文在解密后适用本授权书。)学位论文题目:基王! 坠基型盐耋缝三堡速撞盔盈壅一学位论文作者签名作者指导教师签名起畚珲日期:2 口- r 年f 厶月7 日日期:2 。f 年1 2 月i 口日国防科学技术大学研究生院学位论文第一章绪论1 1 课题背景工作流概念最初起源于生产组织和办公自动化领域,目的是为了提高办公效率、降低办公成本,实现无纸化办公。工作流技术一开始在办公环境领域取得巨大成功,在商业f 银行、保险业) 、行政部门得到广泛使用。从工作流系统的实际应用状况来看,还远未达到人们所期待的水平。由于在工作流管理系统开发的最初阶段缺乏统一的标准以及限于当时软件支撑技术的水平,导致不同公司的工作流管理系统在功能上、所采用的支撑技术、开发技术和接口技术上都呈现出非常大的不同。这也是目前工作流管理系统存在问题的主要原因之一。目前在经营过程中采用工作流管理系统的企业仍只是一少部分,而且这些系统的应用范围也很有限,并不能全方位地支持企业的关键业务流程。造成工作流技术的现有不足的最根本原因是工作流技术的理论框架没有建立起来。从目前的需求来看,工作流技术的研究需要解决好下面的几个方面的闯题1 7 j :1 ) 工作流模型。需要找到一个形式化数学模型来描述工作流的本质特征,包括过程定义、工作流控制相关的数据结构、与其它应用交互涉及到的数据结构和模型。2 ) 工作流产品的性能问题。在工作流系统中怎样确保工作任务划分的合理性,确保任务划分是一个优化的、每个资源的利用率最大的过程。这需要一种技术对系统中的资源工作能力进行评估。需要确定业务流程的执行方式是流水线方式或是一次做完做好的方式。工作流引擎是一种集中式的控制模型,需要保证单点失效问题不会发生。3 ) 不同工作流产品之间的协作机制和集成框架。为充分利用现有的信息资源,应当创建一个工作流应用框架模型。该模型能够快速、有效地集成现有业务应用,实现对现有资源的无缝整合。4 ) 工作流技术的仿真、测试平台。该平台能够针对过程定义快速创建一个仿真的工作流应用环境,能够在平台上对产生的工作流进行测试。通过测试数据评估该过程定义的正确性、工作流的性能瓶颈以及新的优化方案。通过该平台支撑环境能够有效降低实施工作流技术的风险。抛开上面的问题,传统的工作流系统缺乏灵活性,业务流程不能适应运行中发生的各种变化,运行中的业务流程一旦碰到环境发生改变,往往无法继续执行下去,这个问题制约了工作流技术发挥更大的作用。第l 页国防科学技术大学研究生院学位论文工作流过程定义的制定,由用户根据业务需求完成。过程定义是按某种固定形式保存起来的业务流程的计算机化描述。过程定义制定,是在一定的业务环境基础上进行的,与实际执行遇到的环境不可能随时保持一致,主要问题有:一个工作流系统的使用周期可能很长。过程定义从制定发布以后,系统运行环境以至过程执行目标都可能发生变化,为使过程定义能适应这些变化的要求,修改是必须的。刚用户在过程定义建立时期有可能无法完整地制定一个过程定义,部分内容要在执行过程中根据实际运行情况才能确定下来。将这部分内容在运行时写进过程定义,以完成一个过程实例执行。在这种边执行,边定义的方式下,运行时改变过程定义的能力是必需的。l,异常处理的需求。在过程执行中出现错误,无法运行下去时,将向系统报告异常。按引起异常的错误特点,可以将异常分成两类,即偶然性异常和必然性异常。前者指因偶然性因素引发的异常,一般只需要回滚当前操作,重新执行引起异常的过程片段即可使工作流过程实例正常运行下去。后者指对非偶然因素引起的可重复出现异常,如谩用一个没有部署到系统中的业务组件等,重新执行异常会再次发生。对这样的异常,需要对过程定义或者实际工作环境进行调整以保证过程能够执行下去。1 2 闯题提出工作流的柔性是指工作流适应需求变化和环境变化的能力。工作流模型的建立从用户角度来讲,希望能提供很大的柔性;而从技术角度来讲,却要求能够有统一的形式化描述【3 ”。流程建立者无法准确或者无法在漉程运行前完全精确地制定好流程定义。还有一种情况,就是流程模型的可能路径太多,如果全部编辑到模型中,会使得模型复杂且难以理解,最关键的是,路径再多也可能无法囊括所有的情况。这都要求在建模层面上给予一定的柔性支持。目前,工作流管理系统在实际应用中并没有取得预想的成功,原因之一是在目前绝大多数的工作流管理系统中,工作流模型对实际业务过分简化和过多限制,工作流模型大多是处理可预见的、事先给出完整定义的流程,然而现代企业流程所固有的多变性和灵活性要求其完整定义只有在流程实例运行过程中逐步彳导到完善而且要求工作流模型描述能力更强【8 1 。第2 页国防科学技术大学硼f 宄生院学位论文1 3 相关研究在动态自适应工作流的研究中,研究者们已经探索了几种不同的技术手段【3 2 】。文献【1 】采用异常处理的方法,利用e c a ( e v e n t c o n d i t i o n a c t i o n ) 规则,针对出现变化要求时的不同情况采用不同的处理策略。文献2 1 采用集成外部工具的方法,通过将外部的群件系统集成到工作流执行环境中,以增加工作流系统的灵活性、玎放性和与外部交互的能力。文献【3 】【4 l 通过提供给用户原语或命令操作,使人们可以方便地干预工作流的执行。工作流系统通过原语获得这些操作时,经过一定的算法努力保证修改后的操作与原来的工作流保持连贯。文献f 5 】中的f e n e c t i o n 方法,采用工作流执行过程中人机不断交互来完成一个具有动态执行的工作流程。文献【6 l 中,提出了一种移交策略描述语言。在一个移交策略中定义了一些规则保证新旧工作流能够转换成功。以上各种研究方法从动态性和灵活性等角度出发,采用了各种具体的处理方法,试图使一个工作流系统具备动态白适应能力。1 4 主要工作当前利用e c a 规则研究工作流,主要集中在用e c a 规则处理异常,用e c a 规则表达工作流的路由等方面,在建模方法上引入e c a 规则增强工作流系统的柔性方面研究不多。本文主要研究在传统图形化建模方法基础上。引入e c a 规则增强工作流系统的柔性,以解决现有大多数工作流模型描述能力不足、只能处理事先给出完整定义的流程的问题;研究在分布式异构环境中,如何解释执行e c a 规则,设计并实现了处理e c a 规则的规则引擎。工作流的执行是事件驱动,并以e c a 规则的执行为核心的。主要做了如下工作:i 、构建基于e c a 规则的工作流管理系统体系结构。2 、分析工作流系统中用到的事件类型、原子事件的复合、复合事件的检测方法。制定了e c a 规则的定义方式,并给出了e c a 规则的语法一致性检查原理。3 、e c a 规则不但具有传统图形建模工具的建模能力,而且能够增强它的建模能力,更能满足企业复杂的流程建模需求。4 、运行时刻动态生成工作流实例,在一定程度上解决了运行前某些流程定义不能完全确定的问题l 通过e c a 规则动态修改模型定义,e c a 规则表达的知识能够重用,也可以实现工作流程的动态部署。5 、设计并实现了能够运行在分布式异构环境中的规则引擎,负责e c a 规则的解释执行。1 5 论文结构本文共包括六章。第3 页国防科。浮技术人学研究生院学傅论文第一章:第二章:第三章:第四章第五章:第六章:绪论。介绍工作流管理系统的相关概念及产品。介绍基于e c a 规则的柔性工作流系统设计。给出了基于e c a 规则的工作流平台的基本体系结构,并对各个模块的基本功能做了简单描述。对工作流系统中的事件进行分类,将原子事件进行复合,研究复合事件的检测方法;给出了e c a 规则和工作流模型的定义,并描述了e c a 规则的语法一致性检查原理。为下一章介绍的基于e c a 规则的工作流建模奠定基础。证明e c a 规则不但具有工作流管理联盟给出的参考模型的描述能力,而且具有更强的描述能力,可以解决工作流模型对实际业务过分简化和过多限制的问题。采用e c a 规则动态选取和组合预定义活动节点的方式,在工作流运行的过程中动态建立工作流实例,在一定程度上解决了工作流模型大多是处理可预见的、事先给出完整定义的流程的问题。使用e c a 规则动态配置工作流模型定义,使过程逻辑可以独立于执行逻辑动态变化。设计和实现了解释执行e c a 规则的规则引擎。给出了规则引擎的工作原理和设计类图。介绍了e c a 规则的条件计算过程,在制定工作流定义时定义的字符串形式的e c a 规则是如何在工作流上下文环境中被解释执行的。总结与将来工作展望。再f 页一国防科学技术大学研究生院学位论文第二章工作流管理系统2 i 1 工作流定义2 1 工作流管理系统相关概念工作流是针对工作中具有固定程序的常规活动而提出的一个概念。通过将工作活动分解成定义良好的任务、角色、规则和过程来完成执行和监控,达到提高生产组织水平和工作效率的目的。工作流管理联盟( w f m c ) 的确切定义是工作流是一类能够完全或者部分自动执行的经营过程,它根据一系列过程规则,使文档、信息或任务能够在不同的执行者之间进行传递与执行。川2 1 2 工作流管理系统定义w f m c 给出的工作流管理系统( 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 ) 的定义忉是:工作流管理系统是一个软件系统,它完成对工作流的定义和管理,并按照预先定义好的工作流逻辑推进工作流实例的执行。通常,工作流管理系统指运行在一个或多个称为工作流机的软件上的用于定义、实现和管理工作流运行的一套软件系统,它和工作流执行者( 人、应用) 交互,推进工作流实例的执行,并监控工作流的运行状态。在工作流管理系统的支撑下,通过集成具体的业务应用软件和操作人员的界面操作,才能够良好地完成对企业经营过程的支持。所以,工作流管理系统在一个企业或部门的经营过程中的应用过程是一个业务应用软件系统的集成与实施过程。2 2 工作流管理系统的体系结构随着企业对工作流产品的需求不断扩大,许多公司纷纷推出不同的工作流产品,这些产品大多数运用了不同的方法,尽管实现的方法多种多样,但是所有的w 删s 都表现出了某种共同的特性,这为不同产品间的集成及协同工作提供了基础【2 ”。w f m c 提出了个工作流参考模型的体系结构,这个参考模型的体系结构给出了抽象的w f m s 功能组成部件和接口,它能够满足工作流管理系统和产品应具有的主要功能。w f m c 工作流参考模型结构如下:i7 j第5 页国防科学技术大学研究生院学位论文普通用户图争1 工作流参考模型体系结构一过程定义和过程定义工具。过程定义是一个计算机化表示的业务流程描述。一个过程定义包含工作流执行软件运行一个业务过程所需的过程详细信息,包括过程的开始和结束条件、组成活动、在活动问进行导航的规则、需执行的用户任务、可能会被调用的应用程序、所有工作流相关数据的定义等。在工作流系统中,一个过程定义可以存在多种具体表现形式,各种形式之间可以互相转化。 过程定义实例:在工作流系统中,一个过程定义一次运行所执行的业务流程,就是过程定义实例。 过程参与者:过程定义中包括需要人工完成的任务,在实际执行中完成这个任务的人,称为过程实例的过程参与者。工作流过程定义工具是用以定制过程定义的客户端工具,作为工作流产品的一部分或业务过程分析产品的一部分提供给用户。第6 页国防科学技术大学研究生院学位论文工作流相关数据和应用数据。在工作流过程执行中产生,用来完成工作流过程执行中,执行路径导航判断或其它控制操作的数据,称为工作流相关数据。这部分数据可以被工作流执行服务器( 见本页定义) 直接访问。工作流应用数据则是指工作流系统调用完成具体业务功能的软件组件所操作的数据。它们是针对业务应用的,是企业完成具体业务功能需要的数据。尽管工作流执行服务器可能在这些软件组件间传递应用数据,但工作流应用数据直接由被调用的业务组件操作,工作流执行服务器不应该对这部分数据进行修改。工作流执行服务器与工作流引擎。工作流执行服务器负责解释过程定义、控制过程实例、安排活动的执行顺序、向用户的任务表中添加工作项目、调用应用程序。这些职责需要一个或者多个协同工作的工作流引擎和其它模块共同完成。工作流引擎是是工作流执行服务器的核心部分,为工作流实例执行提供运行服务,主要完成以下功能:对过程定义读取并解释。控制过程实例的创建、激活、挂起、终止等。控制节点实例问的导航,包括工作流相关数据的解释、路径判断等。提供支持用户操作的接口。维护工作流控制数据和工作流相关数据。 调用业务组件和提供外部访问的接口。提供控制、管理和监督工作流实例执行情况的功能。工作流引擎维护工作流控制数据,工作流控制数据包括各过程实例的内部状态信息,也包括工作流引擎的状态信息。如果过程定义涉及组织模型、角色等企业实体信息,那么为了完成以上任务,工作流引擎还需要访问组织与角色模型数据。任务表和任务表处理器。任务表记录系统分配给用户,等待用户执行的任务。工作流执行服务器把甩户需要执行的任务添加到任务表中。用户通过访问任务表得到要执行的任务。任务表处理器是一个软件组件,负责管理任务表数据,并在任务表的数据改变时进行相应的操作,包括响应工作流执行服务器的要求修改用户任务数据、向用户发送任务表改变通知,提供用户访问任务表支持等。工作流系统与企业的应用组件发生交互,需要实现与应用之间的接口。工作流引擎按照过程定义调用这些接口完成特定的任务,应用通过这些接口获得访问工作流执行服务的能力。以模块构成了工作流模型的基本内容。这些模块通过以下方式协同完成工作流系统的功能:用户使用过程定义工具制定过程定义来描述业务流程,并在过程定义库中保存。国防科学技术人学研究生院学能论文当执行服务器接蓟执行某过程定义的申请时,读取并解释过程定义,启动一个过程定义实例来完成该过程定义的执行。在过程实例执行中,工作流引擎产生和维护工作流相关数据和控制数据,支持工作流应用数据的传送,调用相关软件组件执行过程定义中的各种业务操作,并通过任务表处理器处理与用户的人工交互。工作流管理系统是工作流模型的实现,具体完成工作流业务过程的定义和管理,按照在计算机中预先定义好的工作流逻辑推进工作流实例的执行。传统工作流中,工作流管理系统的工作过程分两个阶段:过程定义建立期和过程定义运行期。在整个工作过程中,主要提供以下三个方面的支持。建立时期功能:负责根据业务流程产生工作流过程定义。用户通过使用过程定义工具,把实际中的业务过程转变成形式化的、计算机可以处理的定义。运行时期控制功能:工作流执行服务器读取和解释过程定义内容,负责一个过程实例的创建与删除。安排各个活动的执行时间,调用适当的软件组件和其它资源,最终完成一个具体的用户业务过程。运行时期交互功能:处理系统与用户的交互,管理各种需要用户参与的人工活动的执行。图2 2 给出了工作流管理系统三个主爵功能之问的关系。图2 2 工作流管理系统功能关系图w f m c 工作流参考模型仅给出系统模型框架。1 4 在具体的工作流系统中,过程定义的形式和工作流引擎的运行方式并不确定。在现有的工作流系统中,过程定义表示的方法比较典型的有基于p e t r i n e t 的过程定义,基于流程图的过程定义和基于e c a 规则的过程定第8 页国防科学技术火学研冗生院学位论文义。以w f m c 工作流参考模型为基础实现的传统工作流系统中,过程只能在建立时期制定和修改,运行期不会发生变化,过程定义固定而缺乏柔性。过程实例执行过程中,相对比较稳定的过程定义灵活应变的能力不足,一旦过程运行环境发生变化,出现与定义中的内容不匹配的情况,往往因为过程定义无法适应而使执行不能继续。另一方面,一个过程实例的执行可能需要耗费大量的资源和时间。如果过程无法执行下去时,简单的将过程实例取消,然后修改过程定义重新运行,将导致资源和时间的极大浪费。而且在某些情况下,这种取消是不允许的。赋予工作流模型一定的柔性,使其能适应过程运行环境和用户需求的改变,执行不同的操作内容,最终完成业务流程,将大大提高工作流系统对实际情况的适应能力。工作流的柔性,是工作流技术研究的一个重要方向。2 3 工作流模型的相关概念工作流模型是对工作流的抽象表示,也就是对经营过程的抽象表示。由于工作流需要在计算机环境下运行,因此建立相应的工作流模型就是必不可少的。工作流模型应该完整地提出支持工作流定义的概念,为建模用户提供工作流定义所需要的组件或元素。理想的工作流模型能够清楚地定义任何情况下的工作流,能够适应用户在建模过程中所提出韵各种要求。然而,到目前为止,人们虽然提出了不少有意义、有见解的工作流模型,但从模型的能力来看,距这一理想情况尚有一定的距离。由于工作流必须首先描述清楚一个经营过程是怎样进行的,因此,许多工作流模型都是从过程定义入手,比如流程图、状态图、活动网络图等。这一类基于有向图模型的优点是比较直观、容易理解,一般情况下,图中节点表示过程中的活动或者状态,而有向弧则表示节点间的时序依赖关系。不少工作流产品正是采用了这种模型,但其缺点是比较简单,不能处理复杂的过程逻辑,缺乏柔性。通常有两种方式描述过程模型1 12 】:基于活动表示法和基于状态表示法。第9 页国防科学技术人学研究生院学位论文兰型i 控制一一a 基于活动表示法b 基于状态表示法图2 3 描述过程模型的两种方式基于活动表示法,如图2 3 中图a 所示。过程是一个协作的活动集合,活动之间具有明确的逻辑关系,企业中的每个或几个具有一定逻辑关系的活动都可以看作是过程或子过程,作为过程描述的基本构件活动,可描述为过程执行中被调度的最小单元。活动的完成过程就是相关人员或应用程序在特定的期限内,根据给定的输入和资源,产生特定输出的过程,这是将过程模型建立在以活动为中心的基点上。基于状态表示法,如圈2 - 3 中图b 所示。把过程抽象描述为活动状态的一系列变化过程,其不同的输入、所经历韵特定事件会导致状态的变迁和一个或多个终止状态。这种业务过程运行是基于事件驱动的。在本文中作者采用的是第二种方法。2 4 工作流产品工作流技术经过几十年的发展,经过工作流产品供应商和工作流技术研究人员的不懈努力,取得了相当的成果。至今工作流管理技术已成功运用到图书馆、医院、保险公司、银行等行业。目前市场上工作流产品相当丰富,它们在功能、规模秘应用范围上各有特色。1 、v i s u a jw o r k f l o ( v w ) 是f i l e n e t 公司集成文档管理软件系统产品中的一部分,它与集成文档管理软件中的其它产品合作,可为工作量大、性能要求高的经营过程提供全新的过程改进方案。它允许迅速地评价和改进机构工作方式,可随时查看过程中关键的细节,实时掌握过程的运行情况,还能帮助生成天、周、月、季度或者年的工作负载报告,以改进过程模型。v w 还提供w e b 服务,支持跨企业的经营过程集成。v w 在实时查询过程或者活动的运行状态时,可提供事件日志和统计报告。预计瓶颈可能发生的地点,平衡工作量,优化执行过程,解决工作负担日益增长的问题。它还能够自动确定每个工作流活动的参与者在某段时间内应完成的工作,提供有关工作量的信息,并根据活动的执行情况实现相关人员间的任务自动分配。v w 的解决方案建立在基于组件的软件结构基础之上,它将面向对象技术扩展到工作流应用开发中,提高了软件组件的重用率。在其实施中采用先进的工作队列处理方法,保第1 0 页国防科晋:技术大学硼j t 院学位论文证系统具有较高的可靠性。v w 主要由v w 服务器、v w 服务、v w 设计模块、v w 执行模块、v w 监控模块组成。它还针对不同的开发环境提供面向不同任务执行程序的开发机制,包括0 l e 接口、a c t i v e x 控件和一系列a p i ,用户可以自己选择采用哪种方式与v w相连。2 、i b mm q s e d e sw o r k n o w 是i b m 公司推出的最新工作流管理产品,i b m 商业集成软件i b mm q s 丽e s 的一部分。它将经营流程从应用逻辑中分离出来,可以帮助企业用更少的时间、以更快的速度和更高的灵活性集成资源、减少消耗、消除错误、提高生产力,根据市场需求改变经营过程。它以i b mm q s e r i e s 为基础,将分布在一个异构平台内的不同活动、系统和应用程序有机地集成起来,为在i n t e m e t 环境下实现电子商务提供了保障。m o s e r i e sw o r k n o w 具有以下特点:( 1 ) 支持异构系统。可支持2 5 种不同的操作系统。( 2 ) 自动分配任务。可根据模型定义自动地分配任务。( 3 ) 图形化的界面。提供了图形化编辑器,帮助用户快速完成经营过程定义。( 4 ) 帮助用户执行和优化过程。能充分利用有关经营过程的知识,帮助用户定义、记录、测试、控制、执行和改进经营过程。m q s 谢e sw o r l d l o w 由工作流服务器、管理功能模块、程序执行代理、审查监视功能模块等组成。它还为不同用户提供不同的操作界面。3 、i n t 锄p o 是j e t f o n 公司推出的企业级工作流产品,基于c s 方式。它使用用户的电子邮件作为传递消息的工具,能够自动将任务分配给相应的执行人员。i i l t e m p o 支持度客,! i 立嵩应用环境,还允许用户使用基于w e b 的任务管理器参与到工作流中。i i l t e m p 整套系统包括:组织定义器、角色定义器、过程定义工具、代理、管理工具和监控器。它的主要特点是:客户端相互独立1 支持多种数据库和消息管理系统;自动分配活动;版本管理:支持结构化和非结构化的数据;时间管理:支持不确定性的工作流。i i l t e l n p o 是与管理性和不确定性的业务过程,它的应用范围主要集中在以下几个方面:销售市场;管理;人员管理;金融财会等。i l 4 、a c t i o n 技术公司为知识工程师提供了一套基于w e b 的工作流管理软件a c t i o nm e 仃o4 o 。它不仅能够管理确定的过程,而且对经营过程中不可预见的问题、要求和机遇进行控制,还可为用户提供管理设定型的协作和任务的工具。客户可用a c t i o n 提供的工具,在整个企业甚至企业间建立基于w e b 或c s 的工作流管理环境。a c t i o n 产品将i n t e m e t 技术与s o l 事务处理技术结合起来,并提供了内置的安全措施,即使管理非常复杂的、分布式的和需要不断修改的工作流,也能够保证经营过程的一致性。与传统的工作流产品相比,a c t i o nm e t r o 更适合于基于知识的工作流。它支持用户与信息之问的交互( 如信息获取、用户协商、发现并解决问题等) ,主要具有以下特点:第| l 页国防科学技术人学研究生院学位论文( 1 ) 实时提供状态信息。m e t r o 的开放式应用结构,保证用户及时得到执行活动所需的最新的活动状念、应用数据和应用工具,并据此作出实时数据和过程状态的决策。( 2 ) 瞬间智能地分配任务。m e t r o 自动地将任务分类,用户可通过基于w e b 的工具箱接受任务m e t r o 也可以通过m e t mw o r k “1 1 l 【s 直接将任务送到用户的电子信箱中。( 3 ) 提供过程一致性服务。m e 们可在多个服务器上同时进行更新,并在必要的时候进行事务回滚。( 4 ) 功能强大的过程编辑器。m e t r o 提供图形化的过程编辑器,用户可方便地定义任何类型的过程模型。( 5 ) 过程评估和改进。m e t r o 保证对过程的每一步都进行记录、跟踪和说明。能时刻跟踪状态并收集数据,用户能够发现问题所在,并对过程模型进行改进,直到满意为止。( 6 ) 支持w e b 技术。m e 允许用户通过w e b 参与到工作流实例的运行中。m e 打。系统包括可扩展的工作管理应用程序、过程建模工具、过程管理工具和一系列接口,并支持代理执行器为用户自动处理任务。第1 2 页国防科学技术大学研究生院学位论文第三章基于e c a 规则的柔陛工作流系统设计3 1 引言当前工作流管理系统( w f m s ) 存在一些问题:过于依赖集中控制,灵活性不够等。为了适应现代企业分布式环境和灵活多变的业务逻辑,我们把传统工作流管理系统与a g e n t 技术相结合,构建基于a g e n t 的工作流系统。现阶段我们使用的a g e n t 是一种反应型a g e m ,不具有智能和自治能力。a g e n t 的其它功能可以在以后进行扩展。本章介绍基于e c a 规则的柔性工作流系统设计的基本概念和体系机构。给出了基于e c a 规则的工作流平台的基本体系结构,并对各个模块的基本功能做了简单描述。对工作流系统中的事件进行分类,将原子事件进行复合;对e c a 规则和基于e c a 规则的工作流模型进行定义,并描述了e c a 规则的语法一致性检查原理。为下一章介绍的基于e c a 规则的工作流建模奠定基础。3 2 基于e c a 规则的工作流平台基本体系结构我们设计了一个基于多a g e n t 的工作流管理系统。该系统由多个分布式的、不同类型的a g e n t 组成,这些a g e n t 可以分成p r o c e s sa g e m 、a c t i v i t ya g e m 、m o d e ia g e n t 、d i s c o v e r ya g e n t 、s e r v i c ea g e m 和m o n i t o ra g e n t 。每当一个流程开始执行时,这六种a g e m 根据自身职责、功能以及当前运行负载等情况临时组成一个动态的联盟。所谓动态就是指这个联盟不固定,在流程运行过程中,它随时可能有新的a g e n t 加入,也有a g c m 退出。临时组成联盟的各种a g e m 通过彼此协作共同完成整个流程的运行,一旦流程运行结束,这个联盟就解散。】其系统结构图如图3 1 所示。现阶段我们使用的a g e m 是一种反应型a g e n t( r e a c t i v e ) ,不具有智能和自治能力( a u t o n o m o u s ) 。a g c n t 对事件做出反应,知识通过e c a 规则预定义。a g e m 接收事件,匹配e c a ,执行e c a 规则描述的动作。第1 3 页国防科学技术大学研究生院学位论文图3 1 基于e c a 规则的工作流平台体系结构p r o c e s sa g e m :解析工作流模型,实例化特定信息后把活动分配给a c t i v i t ya g e n t 。其功能非常简单,具有传统工作流引擎的一小部分功能。a c t i v 时a g e m :负责活动的执行,如果是已经定义好的活动,则向d i s c o v e r ya g e n t 请求能提供相应的服务鲍s e n r ;c ea g e n t 。如果是需要动态生成的活动,则先向m o d e la g e n 请求建立模型服务,再向d i s c o v e r ya g c n t 请求s e i c ea g e n t 提供相应的服务。a c t i v 妨a g e n t 韵状态转换也由e c a 规贝来控制。m o d e la g e n t 负责动态流程的建模。根据当前工作流运行情况和上下文信息。利用e c a规则来选取和组合预定义的活动,以完成特定的任务。用于解决活动可预定义、活动组合情况复杂,需要在工作流的运行过程中动态组合活动的情况。s e r v i c ea g e n t :s e r v i c ea g e n t 是执行流程活动的真正实体,每一个s e r v i c ea g e n t 负责提供一种或多种活动的执行。s e “i c ea g e n t 可以是本地的一个应用,电可以是虚拟组织内其它企业提供的系统服务,还可以是i n t e m 融环境下的w e bs e n ,i c e 和g r i ds e “i c e ,甚至还可以是一个人。s e r v i c ea g e n t 可以看作是具体的执行实体的代理。d i s c o v e r ya g e n t :d i s c o v e 叮a g e n t 主要负责在s e r v i c er e g i s t r yr e p o s j t o r y 中查询符合要求的s e r v i c ea g e n t ,并将查询的结果返回给a c t i v i t ya g e n t 。第1 4 页国防科学技术大学研究生院学俺论文m o n i t o ra g e n t :通过查询系统产尘的事件,来监控工作流实例的运行状况,如活动是否已经超时、活动执行是否失败等。工作流引擎运行在p m c e s sa g e n t 中,它负责解析工作流定义,为每个活动分配一个a c t i v i t ya g e n t ,实例化e c a 规则,把活动相关信息传输到a c t i v i t ya g e n t ,并与a c t i v i t ya g e n t 交互:规则引擎负责解释执行e c a 规则。工作流引擎负责整个工作流实例的执行,而舰则引擎的功能比较单一,它只解释执行e c a 规则。可以把规则引擎看成是嵌入到工作流引擎中的服务对象为工作流引擎提供解释执行e c a 规则服务。规则引擎也可以独立于工作流引擎被其它a g e n t 使用。3 3 事件企业的经营运转是通过其内部和外部的业务过程共同实现的。企业的采购过程、入( 出) 库过程、生产过程和成本核算过程等,都属于企业的业务过程。每个业务过程都伴随着事件的发生,事件是过程中各活动的连接者和触发者。活动由特定的事件激发,活动执行完毕产生新的事件,从而激发下一个活动的执行。从而又导致了下一事件的发生f 16 】【。事件是与e c a 规则联合起来共同实现事件驱动机制的。一个事件产生以后,会触发相应的e c a 规贝i j ,e c a 规则的条件满足后会执行规则中定义的a c t i o n 。a c t i o n 的执行又会产生新的事件,依次循环执行。事件驱动使得工作流系统非常松散灵活。定义3 1 事件通常可描述为:在什么时间、什么地点,哪些人或组织对哪些相应数据发生了哪些操作,导致了怎样的结果。事件内容包含事件类型,事件产生者、事件接收者、事件产生时间、有效时间、约束规贝l j 、参数列表和描述信息等。事件通过事件中心转发,因此事件只需包含接收者的名字,不需要知道接收者具体的物理位最。工作流系统之问的交互完全由事件来实现。1 2 5 】3 3 1 事件的分类事件的分类没有严格的界限,事件的分类可能存在重叠。本文把工作流系统中用到的事件分为如下七种类型:交互事件( c o m m u n i c a t i o ne v e n t ) :a g e m 之间通信时所使用的事件。如r e q u e s t ,r e p l y 等。控制事件( c o n t r o le v e n t ) :前一个节点执行完毕,会发出控制事件激活后继节点。数据事件( d a t a e v e n t ) :a g e n t 之间存在数据交换,通过数据事件实现。外部事件( e x t e me v e m ) :外部事件是由系统外部的实体触发,外部事件发生时,第1 5 页圈防科学技术大学硼f 究生院产伉论文通常会向系统产生一个输入数据流。例如,“客户发来请货单”即为一一个外部事件,该事件产生了个输入数据流:“请货单”,同时也带来了一系列启动工作流系统的条件参数。状态事件( s t a t e e v e m ) :a g e m 状态发生变化时会发出状态事件,用以表征状态的变化。时间事件( t i m ee v e n t ) :分为周期性时间事件和定时事件。周期性时间事件是指每隔一定时间间隔就会发出的事件,定时事件是指在特定的时间发出的事件。加入时间元素以后,模型的表述能力更加强大,但是要解决在分布式系统下时间的同步问题。异常事件( e x c e p t i o ne v e n t ) :系统发生异常时,会抛出异常事件,异常事件包含异常发生时工作流环境中与异常相关的某些信息。事件根据复杂程度又可分为:原子事件和复合事件。原子事件是那些可以被工作流管理系统直接探测到,不可再分的事件。为了表达工作流执行中的复杂逻辑,原子事件可以复合,下列为一些基本的复合算子l口8 】【3 0 】【3 6 1( 1 ) m ( 并) 。蜀a n d 岛表示历和恳均发生,没有顺序的限制:( 2 ) o r ( 或) 。e lo r 恳表示l 和疡至少有一个发生;( 3 ) s e q ( 序列) 。蜀s e q 最表示蜀先于易发生:( 4 ) n e g ( 非) 。n e ge l 表示局没有发生;( 5 ) r e p ( 重复) 。r e p 蜀n 表示e l 发生h 次;( 6 ) a n y ( 任意事件发生) 。a n y ( 卅,局,历,一,风) 表示e l ,足,磊中任意卅个发生。( 7 ) d e x ( 互斥) 。e l d e x 易表示蜀和而有且仅有一个发生。上述算子中a n d 、o r 和a n y 满足交换律,其余算子则不满足。为了表示方便,还可以在上述算予的基础上,定义其它算予。我们将通过原子事件和上述复合算予形

温馨提示

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

评论

0/150

提交评论