(计算机软件与理论专业论文)基于全局流程集成平台的时态流程的研究.pdf_第1页
(计算机软件与理论专业论文)基于全局流程集成平台的时态流程的研究.pdf_第2页
(计算机软件与理论专业论文)基于全局流程集成平台的时态流程的研究.pdf_第3页
(计算机软件与理论专业论文)基于全局流程集成平台的时态流程的研究.pdf_第4页
(计算机软件与理论专业论文)基于全局流程集成平台的时态流程的研究.pdf_第5页
已阅读5页,还剩65页未读 继续免费阅读

(计算机软件与理论专业论文)基于全局流程集成平台的时态流程的研究.pdf.pdf 免费下载

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

文档简介

中山人学硕? i j 学位论文 基于伞局流程集成i 台的时态流程的研究 基于全局流程集成平台的时态流程的研究 专业:计算机软件与理论 硕士生:陈方 指导教师:李磊教授 摘要 时间是自然界无所不在的客观属性,自然界的任何信息都具有相应的时态属 性,业务流程也不例外。传统的业务流程研究通常只考虑了流程的主谓宾,即操 作者、操作、操作对象,而忽视了时间在这之中扮演的重要角色。随着人们对时 间管理需求在业务流程中的日益增长,时态关系不应当仅限于状态之间的某种简 单的时态依赖,它应当被概念化、模型化并在业务流程中得到充分的支持。这就 给业务流程相关技术的发展带来了新的研究课题和挑战。可以断言,开展时间管 理研究,对于增强业务流程管理软件系统的柔性、确保业务流程计划的高效执行 和提高企业的竞争力具有实际意义。 业务流程的管理最终目的是确保恰当的人在恰当的时间执行恰当的事件,一 个满足业务流程控制逻辑却违反特定时间限制的业务活动是没有实际意义的,因 此,在业务流程模型投入运行前,需要对业务流程模型进行时间规格说明与验证, 以确保业务流程管理系统的时间行为正确性。 本文基于中山大学软件所研究的全局流程集成平台,首先讨论了如何将时间 属性附之于业务流程之上,将现有的业务流程模型扩展为时态业务流程模型,并 在此之上讨论业务流程的时间行为分析,然后提出了如何防止和处理两类时间违 反的方法并给出了模型的实现细节。最后,本文对所研究的方法作出总结,并指 出业务系统时间管理的发展方向。通过实践证明时间管理的支持对于开发灵活性 和实用性的业务流程系统具有重要的指导意义。 关键词:业务流程,时态流程,全局流程集成平台,时间违反 中山人学硕:l :学位论义壮于伞局流程集成、l ,行的时态流程的研究 r e s e a r c h0 ft e m p o r a lp r o c e s sb a s e d0 nt h eg 1 0 b a lb u s i n e s s p r o c e s si n t e g r a t i o np la t f o r m m a j o r : c o m p u t e rs o r w a r ea n dt h e o r y n 锄e :c h e nf a n g s u p e i s o r : p r o l il e i a b s t r a c t e v e r ”1 1 i n g h a si t st i m ea t t r i b u t e !b u s i n e s sp r o c e s s ( b p )d o e s n tm a k ea n e x c 印t i o n t r a d i t i o n a lr e s e a r c ho nb pg e n e r a l l yf o c u s e di t s e l fo nt h es u b j e c t ,p r e d i c t a n do b j e c t ,i e o p e r a t o r ,o p e r a t i o na n dd a t a ,i g n o r i n gt i m ea sa ni m p o r t a n tm l e a st h e d e m a n df o rt i m em a n a g e m e n ti nb p 印p l i c a t i o n si n c r e a s e s ,t e m p o r a lc o o r d i n a t i o nc a n n o1 0 n g e rb el i m i t e dt ob e i n gar e s u l to fv a l u ed 印e n d e n c i e sb e t w e e ns t a t e s i tm u s tb e c o n c 印t u a l i z e d ,m o d e l e da n ds u p p o r t e da sap a r to ft h eb p ni sb e l i e v e dt h a td o i n g r e s e a r c h e so nt i m em o d e l i n gi nb pi ss i 弘i f i c a l l tf o re n h a i l c i n gm ef l e x i b i l i t yo fb p m a i l a g e m e n ts o f h v a r es y s t e m s ,g u a r a n t e e i n gb pp l a i lt 0b ee 币c i e n t l ye x e c u t e da n d h e n c e m a l ( i n ge n t e 印r i s e sm o r ec o m p e t i t i v e t h eu l t i m a t e9 0 a 1o fb u s i n e s sp r o c e s sm a i l a g e m e n ti st om a l ( es u r et h a tt h e p r o p e ra c t i v i t i e sa r ee x e c u t e db ym er i 曲tp e r s o na tt h er i 曲tt i m e ab u s i n e s sa c t i v i t y w 1 1 i c hs a t i s 6 e sp r o c e s sc o n t r o l l o 酉cb u tv i o l a t e ss p e c i f i e dt i m ec o n s t r a i n t si sa c t u a l l y i n s i 印i f i c 趾t t h e r e f o r e ,ab pm o d e l r e q u i r e st i m es p e c i f i c a t i o na 1 1 d v e r i f i c a t i o n b e f o r ei ti si n s t a l l c e da j l de x e c u t e dt og u a u r a n t e em ec o r r e c t n e s so ft i m eb e h a v i o ri nb p s y s t e m 1 1 1t l l i sp a p b a s e do ng b p i p ,w ew i l le x t e n dt h eb u s i n e s sp r o c e s sm o d e lw i m t i m e甜曲u t en 锄e dt e m p o r a lp r o c e s sm o d e l f u n h e 肌o r e ,w ew i l lh a v ea d i s c u s s i o na b o u tt h em e m o d sa b o u th o wt e m p o r a lc o n s i s t e n c yt ob ev e r i f i e da n d 押o t y p e so ft e m p o r a l - c o n s t r a i n tv i 0 1 a t i o n s t 0b eh a n d l e d i m p l 锄e n t a t i o na d d r e s s e d a r e n a r dv a l i d a t e st h ef e a s i b i l i t yo fo u rr e s e a r c h a tm ee n d ,c o n c l u s i o na sw e l la s t l l et r e n do fr e l a t e dr e s e a u r c hw i l lb e 百v e n k e y w o r d s : b u s i n e s s p r o c e s s ,1 e m p o r a lp r o c e s s , g b p i p :t 锄p o r a l - c o n s t r a i n t v i o l a t i o n i 原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导下, 独立进行研究工作所取得的成果。除文中已经注明引用的内容 外,本论文不包含任何其他个人或集体已经发表或撰写过的作品 成果。对本文的研究作出重要贡献的个人和集体,均已在文中以 明确方式标明。本人完全意识到本声明的法律结果由本人承担。 学位论文作者签名:邛舌,右 日期:护年厂月川日 学位论文使用授权声明 本人完全了解中山大学有关保留、使用学位论文的规定,即: 学校有权保留学位论文并向国家主管部门或其指定机构送交论 文的电子版和纸质版,有权将学位论文用于非赢利目的的少量复 制并允许论文进入学校图书馆、院系资料室被查阅,有权将学位 论文的内容编入有关数据库进行检索,可以采用复印、缩印或其 他方法保存学位论文。 学位论文作者签名:卵士,有 日期:汕雌厂月c w 日 新躲锄, 日期舭g 年厂月叫日 中山人学硕:l j 学位论文皋十伞局流程集成、| ,台的时态流程的研究 1 1 研究背景 第1 章绪论 随着信息技术的发展和日趋激烈的商业竞争,人们不再满足于独立、零散的 办公自动化和计算机应用,而是需要综合的、集成化的解决方案。同时,对单一 企业来说,业务变化不是简单地意味着业务信息的更新,更为重要的是,它必然 使得企业的业务流程随之变更。现代企业的信息化程度在某种意义上极大地影响 着企业的竞争力。在这种环境之下,各种对常规业务进行管理、集成的软件以及 技术应运而生。它们可以为企业带来以下收益: 改进和优化业务流程,提高业务工作效率; 实现更好的业务过程控制,提高顾客服务质量; 提高业务流程的柔性( f l e x i b i l i t y ) 。 传统的信息化业务系统已经远远不能满足这些新的需求。首先,从开发的角 度来说,传统的软件系统在编写业务流程时,采用的方式是将业务规则硬性地嵌 入程序代码中。显然,这种方式使得业务系统的扩展性及维护性极差。当业务流 程即使发生微小改变时,程序员可能都需要将整个系统重新编写,这是因为这样 的系统其各个功能单位( 或程序模块) 通常都是紧耦合的,容易产生连锁效应。 其次,传统的业务系统的流程是隐式的,然而众所周知,隐式流程是不易把 握的,同时也不利于在此基础上开发应用系统,其后的修改和维护的工作量同样 巨大。 最后,如果考虑业务系统的时间属性,传统的业务系统更是缺乏对其充分的 支持,即没有考虑到流程执行的时态性,有些系统虽考虑到这一点,但也仅仅是 将其作为业务执行历史记录的时间戳等,没有将时间真正视为一个潜在的流程角 色,让其参与业务流程的执行或对流程的执行进行时态约束。 近年来,人们已逐渐认识到,应用软件的结构直接关系到应用系统的成败, 特别是对于业务系统。由此可见,改善这一问题的一个重要方法便是将业务系统 的骨架业务逻辑流图分离出来,使得应用系统以该流程为中心,而将数据仅 中山人学坝i :学位论文 堆十伞局流程集成、| ,台的时态流程的研究 仅作为流程执行时向前推进的载体。这种将流程和信息分丌描述和管理的方式为 业务系统的丌发带来了深刻的变革,使得应用程序员对应用系统的开发有的放 矢,仅需要专注于应用层的数据及其他非流程逻辑程序的开发,这显然大大地简 化了应用程序员的工作,提高了开发效率,更重要的是它提升了应用程序的柔性。 因此,描述和管理流程的工具便显得重要了许多,它已经开发应用业务系统的核 心部分。 需要指出的是,目前大多数企业采用的工作流系统并不同于业务系统1 ,这 是因为工作流系统处理的是文档而业务系统处理的是表单以及表单项;工作流更 强调的是文档的自动化处理,实现对各类资源合理调度和分配,而业务系统则不 然。从某种意义上说,业务系统包含工作流系统,即工作流系统是业务系统的特 例。 不过,由于本文讨论的只是流程的时间属性,它属于流程逻辑层面上的概念。 从这个角度来看,二者并没有本质上的区别,所讨论的与时间有关的问题对于两 者都适用。本文所做的研究将参考目前对于工作流的时态问题最新研究成果,同 时本文的研究内容也应该适用于其它工作流系统。 1 2 研究内容及其意义 随着业务流程管理系统技术的飞速发展,涌现出了各种各样的业务流程管理 系统产品,然而,激烈的市场竞争和业务环境的动态变化,会引起业务管理的低 效和不一致性,甚至造成业务流程的灾难性破坏,而现存的业务流程产品缺乏对 动态变化所必须的柔性支持1 ,远远不能满足企业的应用需求,时间管理已经 成为困扰当今业务流程应用实施的重大难题。然而实际业务流程大多具有时间约 束亦或需要通过时钟来控制其业务执行过程,时间违反将增加业务成本( 如违约 金等) 。因此,研究业务流程就不可回避地需要处理时间问题,确保业务流程的 执行具有时间约束,让业务流程无时不刻地伴随时间这一自然属性,随着时间的 推进动态改变执行过程。可以预见,研究业务流程的时态属性,对于增强业务流 程的功能、丰富业务流程的建模理论以及推动业务流程系统的实际应用具有重要 意义。 2 中山人学顾l :学位论文基于伞局流程集成j 卜台的时态流程的研究 本文立足于业务流程系统对时间管理功能的实际需求,对业务流程时间管理 ( 主要指时态约束) 问题进行了较深入的探讨。 具体实现方面,和传统的时态工作流不同的是,本文处理时间问题的方式不 仅着眼于流程的状态( 流程图中的节点) ,而且还将时间属性运用于处于状态之 间的事件,使得事件的执行同样受时间约束抑或由时钟来触发。 由此,本文所探讨的内容包括以下几个方面: 时态流程的概述: 通过参考已有的相关研究成果,给出本文关于时态流程的定义,说明什 么是时态流程; 时间信息的表示及其相关计算: 解决时态流程最基本的问题,为本文后续内容的探讨作铺垫; 带时间约束的状态及时钟事件在g b p i p 中的位置及作用: 本文核心内容,通过建立带时间约束的状态模型以及定义某些时钟事件 实现时态流程,使得表单执行过程中遵守在时间方面特有的约束并通过 时钟事件解决时间违反问题并可用于其他相关需求; 带时间约束的状态模型及其实现: 给出带时间约束的状态模型的实现细节; 时钟事件及其实现: 给出时钟事件模块的实现细节; 时间违反及其处理: 阐述时间违反处理机制; 应用实例: 通过示例来证明本文研究的可行性及意义。 1 3 论文的组织结构 本文共分为六个章节,具体结构如下: 第1 章:绪论,介绍了本课题的研究背景,研究内容及其意义,同时给出本 文的组织结构; 第2 章:为本文研究时态流程的知识背景以及目前国内外关于时态工作流的 3 中山人学顺i j 学位论文皋十全局流程集成j r 台的时态流程的研究 研究现状。重点介绍基于p e t r i 网和基于时态逻辑两种主要的关于时态工作流的 研究方法和成果; 第3 章:介绍全局流程集成平台基本概念,为后续内容的介绍做铺垫,这是 因为本文所探讨的时态流程是以g b p i p 为基础的。全局流程集成平台以宾语为 中心对流程进行建模,并使用改进的有限状态机对运行在流程之上的表单进行调 度。本章将介绍其原理,体系结构以及使用全局流程集成平台开发业务系统的方 法和步骤; 第4 章:本文的核心章节。介绍基于带时间约束状态及时钟事件的时态流程 的总体设计,包括时间信息的表示及其计算,带时间约束状态的模型、时钟事件 相关概念以及它们是如何融入于平台之中,介绍了时钟事件的分类,时间违反处 理方法等: 第5 章:同样是本文的重要章节,介绍基于g b p i p 的时态流程的设计及实 现。给出带时间约束状态模型以及时钟事件的内部结构,并对二者的实现细节做 了简要叙述。最后通过示例展示本文内容的研究价值及实际可操作性; 第6 章:总结与展望,对本文所阐述的内容进行了总结,指出其不足之处, 并对进一步的研究工作进行展望。 4 中山人学颂l j 学位论文 螭于伞局流程集成、l t 台的时态流程的研究 第2 章背景知识及研究现状 时态流程的实质就是在传统的业务流程中增加时间维度,使得流程具有时间 属性及满足某些时间约束。本文的时态流程是基于业务流程的,因此在介绍背景 知识的时候有必要先交代流程的概念,特别是业务流程,以及它是如何构建的即 所谓流程建模,然后才能引入时态流程的概念。此外,本章还将对国内外关于时 态流程( 时态工作流) 的研究现状作简要的介绍。 2 1业务流程建模 2 1 1 业务流程概念 业务流程( b u s i 鹏s sp r o c e s s ) 的含义很广,最早用于制造业,用于指导生产。 牛津英语大字典对“p r o c e s s ”一词的定义为:一个或一系列连续有规律的动 作,这些行动以确定的方式发生或执行,导致特定结果的实现。业务流程的另一 个定义是一组相互关联( 由商业规则控制) 的商业功能,哪些商业规则对于某一 企业来说是独特的,而且在某一确定的时间点上也是如此。正如行业观察家所定 义的那样,业务流程管理是理解、系统化、自动化,以及改进公司业务运作方式 的一门艺术。业务流程在文献 4 被定义为一个由许多业务活动组成的整体系统。 它由活动、活动间的逻辑关系、活动的实现方式和活动的承担者四个要素组成工 作流建模。 尽管不同的领域中关于业务流程的定义不尽相同,但概括起来业务流程至少 应该具有如下特点:( 1 ) 业务流程的执行是有目的的,即某特定结果的实现;( 2 ) 其执行的过程是有所规定的;( 3 ) 业务流程的基本元素是一系列有规律的动作或 活动。本文采用的业务流程定义为: 定义2 1业务流程( b 淞f ,z 鲫m c 哪) 归1 : 业务流程一个表单的生命期可以划分为一组状态,这些状态刻划了整个表单 的变化过程。于是,一个业务流程就是以一个表单为研究对象,描述表单在其生 命周期中经历各种业务操作的状态变化过程。 中山人学顾j :学位论文皋十伞局流程集成、l ,台的时态流程的研究 由此,一个业务流程的执行过程是:表单从丌始状态出发,经过若干个业务 操作到达其终止状态( 在某些情况下,一个流程会无休止地一直运行下去,没有 终止状态,如嵌入式系统) 。我们规定,在一个业务流程中,除了开始状态和终 止状态,所有其它状态都称为内部状态( i n t e n l a ls t a t e s ) 。 例2 1 业务流程示例,如图2 1 所示: 隳坳鹪黼 业务部门 仓库 厂、 i 调度发货k 施鲍、 。 l 弋( 电群卜 弋4 馓刘 r 按弃,1 ,、 lr i 动分拣广 薅发货。钌 、 打吐 ( 运输眦送) 2 1 2 业务流程建模 图2 1 业务流程示例 业务流程建模通常也称为业务流程描述,简言之就是用图形、公式或文字说 明的形式来描述业务流程的特性和要素:为什么做? 做什么? 按什么顺序做? 什 么人做? 传统的业务系统开发多数将流程硬编码到代码中,这也意味着业务流程的多 变性6 l ,将导致业务系统的开发、维护过程异常复杂引。 流程模型可以视为一个复杂的企业知识系统,存在许多不完全、不确定的成 份,流程元素关系也不易量化,难以用定量的数学方程描述旧。多年来,关于流 6 中山人学硕l :学位论义皋于伞局流程集成、l ,弁的时态流程的研究 程建模以及基于流程的业务系统的研究工作取得了一些研究成果,众多学者从管 理学、计算机科学以及两者的交叉学科的角度去分析并解决问题。 目前国内外出现的业务流程描述方法、技术和模型主要包括: ( 1 ) 流程图。流程图是最直观、最灵活的过程描述方法,它的主要缺点是 不够精确。 ( 2 ) 自动机是一种计算模型,其中有限状态机( f i n i t es t a t em a c h i n e ,f s m ) 是有限计算的一种模型,也是许多形式化说明( s p e c i n c a t i o n ) 和验证 ( v e r m c a t i o n ) 的基础模型。有限状态机是最为重要的一种形式描述技 术,是很多形式化描述方法的基础,同时也是一种重要的、简单的以 拙述控制方面的特盹为主的流程建模方法。 ( 3 ) h o l t 等人提 h 角色活动图! 。1 ( r o l ea c t i v i t yd i a g r a m r a d ) 和角色交 互图( r o l ei n t e r a c t i o nd i a g r a m r i d ) ( 4 ) m a r c a 等人1 系统地i 喇述了种建立加1 制造业的体系结构模型的方 法i d e f 0 ,其基本内容是结构化分析与殴计技术s a d t 的活动模型方 法。 ( 5 ) 基于p e t r i 网的过程建模 ”引。p e t r i 网的思想是1 9 6 2 年山德国 c a p e t r i 提 ;来的,原月】。二表达异步系统的控制规则,适j 于描述与 分析h 相独苞、协同操作的处理系统,也就是并发执行的处理系统。 p e t r i 刚通过库所、变迂、弧、标志等元素来表达过裎及状态,有峰实 的数学:f f l ! 沦支持,易j :分析和仿真,f h 过r 复杂。近年米,高级p e t r i 网( 着色、时i f i j 、随机、面向对象、模糊p e t r j 网等) 被引入到流程建 模的研究领域,使得p e t r i 网结构得至0 简化,捕述能力也得到增强,并 逐渐成为研究热点。 等等。 近年来,对业务流程的研究主要集- | j 在j i :作流管理系统参考模型3 及其相关 的改进建模方法上面。 中山人学顾l j 学位论文坫于伞局流程集成、i ,白的时态流程的研究 2 。1 2 1 工作流建模 工作流技术是流程集成的有效途径,它为实现企业流程的建模和运行管理提 供有效的支持。根摒工作流管理联盟( 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 ,w 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 m s ) 副是“一种在工作 流形式化表示的驱动下,通过软件的执行而完成- r :作流定义、管珥! 及执行的系 统”,其 要目标是对业务过程中各活动发生的先后次序及与活动棚关的人力或 信息资源的凋j j 进行管理而实现业务过程的e l 动化。二l 作流足流样的种特殊表 示方式,它描述了活动、应用和执行者之l l j 的能够被w m s 系统所控捌管理的 一种阱凋机制。 自由 图2 2i :f 1 :流系统参考模j 弘 希l :作流系统参考模型驯中,如圈2 2 所示: 流程定义工具给j f j 户捉供一种对实阳:、i k 务流程分析、建摸的下段,斤小成业 务流转狂门j 被计算:机处耻的形式化捕述; 工作流执行服务为工作流的执 j :提供了个运i 川寸j 刁:境,它借助r 一个或多 个:l 作流,j l 擎术激活并解释过程;之义的个部或部分,力:卜寸外翻吖内应刚利序进 j :交 互来完成工作流实例的创建、执行与管理; 客户端应用f 内作用是给, 户提供一种于段水处j 旺j :作流实例运行过榭j j 需 要人u 干预的任务; 中山人学硕l j 学位论文皋于伞局流程集成、i 台的时态流程的i i j 究 调用应用指工作流执行服务在工作流实例的运行过程中调用的、用于对应用 数据进行处理的应用程序; 管理监控工具的功能是对w f m s 中工作流实例的状态进行监控与管理,如 用户管理、角色管理、审计管理、资源控制等。 2 1 2 2 基于状态机的建模 所谓的状态是一个抽象的概念,它反映了一个事物在某个时刻所具有的特 性。事物在不同的时刻具有不同的特性,由此区分出不同的状态。当一个流程被 开始执行后,它就不断地由一个状态转化为另一个状态。基于状态机的建模就是 依据状态的变化过程来刻画流程,它反映了流程执行过程中的动态特性。 基于状态机的建模源于经典的有限状态机( f i n i t es t a t em a c h i n e ,简称f s m ) 理论。所谓的有限状态机17 l ,是指由有限数目的状态、状态间的转移( t r a l l s i t i o n ) 以及动作所构成的行为模型。其中,转移是指当条件满足时( 如在某状态下获得 某个特定的输入) ,状态机从一个状态转变为另一个状态的过程;而动作是指在 某个时刻所发生的活动,该活动可以在进入状态、离开状态、外部输入或状态转 移时发生。 形式化地,有限状态机m 可以用一个五元组来表达: m = ( s ,o ,岛,f )( 2 - 1 ) , 。” “ 其中: s 是状态的非空集合,v s s ,j 称为m 的一个状态; 是输入字母表( h l p u ta l p h a b e t ) ; 岛是m 的开始状态( i i l i t i a ls t a t e ) ,岛s ; f 是m 的终止状态( f i n a ls t a t e ) 集合,f s ,v s f ,5 称为m 的终止 状态; o 是状态转移函数( t r a n s i t i o nf u l l c t i o n ) ,o :s 一s 。v 0 ,口) s ,o0 ,口) :f 表示m 在状态j 下,若输入字符口,则将状态变为f ,并 将读头向右移动一个方格而指向输入字符串的下一个字符。 经典的有限状态机最初被用于词法分析程序,因此它是以字符作为处理对象 9 中山人学顾l :学位论文 皋十伞局流程集成i ,舟的时态流程的研究 的。经过几十年的改进,有限状态机的功能被不断扩充和改良。如今,有限状态 机广泛地应用于反应式系统( r e a c t i v es y s t e m s ) ,即根据外部输入( 事件或消息 等) 和系统当前状态而作出响应的系统。 d a v i dh a r e l 刨对经典的有限状态机作了大量扩充,提出了s t a t e c h a n 的概念。 s t a t e c h a n 将状态机中的多个小状态合并为一个大状态,即为状态图带来层次关 系,从而简化了状态图的复杂性。s t a t e c h 砒也允许状态机中分属不同大状态的 若干个小状态并发执行,并引入了状态间进行通信的方法。s t a t e c h a n 大大增强 了有限状态机的描述能力,这使它特别适用于复杂的、由离散事件驱动的系统。 u m l 中的状态机视图( s t a t em a c h i n ed i a g r a m ) 副的关注目标是面向对象 的系统中的类对象,它对类对象的生存周期进行建模,以此来描述对象随时间变 化的动态行为。当对象探测到一个事件发生时,它依照当前的状态做出反应,反 应包括执行一个动作或转换到一个新的状态。状态机视图是由结点和边所组成的 有向图,其中结点代表状态( 包含开始状态和结束状态) ,边则代表转移。边上 还可添加监护表达式( g u 砌e x p r e s s i o n ) 作为状态转移的前提条件,即在满足 监护表达式的情况下,状态转移才能发生。在状态转移时可触发一定的动作,从 而完成一定的业务操作。 2 2时态流程及其国内外研究现状 随着工作流技术的发展及实际应用上的需要,人们已经逐渐意识到时间管理 在业务流程系统中的重要作用。实际上,脱离时间属性的业务流程系统从某种意 义上来说是极不完整的,因为业务流程的执行必然伴随时间的流逝,时间就像是 一只“无形的手 ,无处不在,却又无影无踪。让时间参与工作流的设计和实现 将大大丰富工作流的内涵,同时将给工作流的实际应用带来极大的便利性。这一 点,我们在将全局流程集成平台应用于实际开发的过程中深有体会。 在各种时态建模技术中,p e t r i 网以其充分的模拟能力和严谨、丰富的分析方 法,逐渐成为工作流建模理论中的一种主流技术k 。二十世纪八十年代以来, 基于p e t r i 网的工作流建模方法逐步引起了人们的注意,近年来更是成为工作流 领域的一个研究热点。大量基于p e 研网的工作流模型被提出来。w m p v a j ld e r l o 中山人学顾i j 学位论文基于伞局流程集成、i ,台的时态流程的研究 a a l s t 将工作流管理领域的概念映射到p e t r i 网之上,提出了工作流( w o r k f l o w n e t ,简称w f n e t ) “,用于对工作流的控制结构进行描述。他还定义了w f n e t 的合理性( s o u n d n e s s ) 概念,作为评价工作流控制结构正确与否的一个标准, 并利用标准的p e t r i 网分析技术验证、f n e t 的合理性。w f n e t 是一个具有较大影响 的工作流模型,在它之后提出的许多时间工作流模型都是以它为基础扩展而得 到的。主要有:s e al i n g 等人提出的一种扩展的w f - n e t 一时间工作流网( t i m e w o r k n o wn e t ,简称t 、f n e t ) 。1 w f n e t 中的每个变迁都被赋予了一个区间, 变迁的执行时间跨度必须在其中取值。该文献还定义了时间安全性的概念,并给 出了t w f - n e t 某些行为特性的验证方法“。在t w f - n e t 的基础上,杜栓柱等人提 出了一种新的时间p e t r i 网工作流模型一一扩展时间工作流网( e x t e n d e dt i m e w o r k n o w n e t ,简称x t w f n e t ) u “。增加了活动的执行时间,并通过一定的构建 规则,能够将多个t w f - n e t 合并为一个x t 、f - n e t ,以描述并行流程中的时间约 束。另外,x t w f n e t 中还引入了与时区相关的时间映射函数,可以描述分布于 不同时区的工作流程。基于实际工作流过程对时序约束的需求,李慧芳等提出了 时间约束工作流网( t i m i n gc o n s t r a i n tw o r k n o wn e t ,简称t c w f n e t ) 2 5 1 。 t c w f n e t 将时间约束p e t r i 网的分析方法与w f - n e t 有机地结合起来,完整地描述 了工作流系统中业务实例的到达时间、活动实例的使能时间、活动可执行的期限 时间以及活动的执行延迟。 上述工作流模型虽然均具备一定的时间表述能力,但他们基本上都是基于 定时p e t r i 网构建而成,定时p e t r i 网通过在变迁、库所上附加时间跨度,在标记上 附加时间戳来定量地描述系统的时间特性。他们并未将时态因素全面地引入到工 作流模型中,没有在p e t r i 网中显式地表示各种时态约束,如流程的时限约束、定 期约束等。 中山人学顾? i :学位论文幕于伞局流程集成r 台的时态流程的研究 第3 章全局流程集成平台 本文所述时态流程以全局流程集成平台为研究背景。不同于众多同类产品及 研究成果,全局流程集成平台基于有限自动机建模并使用说明性方式定义流程并 具有独特的设计及实现。本章将简要介绍该平台的体系结构、原理、基本概念、 主要组成部分、运行机制等基本知识和背景。 3 1 全局流程集成平台简介 全局流程集成平台( g l o b a lb u s i n e s sp r o c e s si n t e 日a t i o np 1 a t f o n l l ,g b p i p ) 是 一个供系统开发人员使用的基于流程的开发框架,它是中山大学软件研究所在软 件工程领域关于应用开发框架的研究和应用。 全局流程集成平台非常适合作为开发以业务流程为中心的复杂应用系统的 支撑平台,它通过严格定义全局流程和局部流程、把应用级工作和非应用级工作 严格分离、在流程建模方面扩展经典的有限状态自动机模型、以单个表单在其生 命周期中的状态变化为一个流程单位来研究机构( 企业、政府、公司等) 的业务 流程并在此基础上讨论流程交互等内容来构建一个具有健强性、通用性、统一性 的支撑平台。 与一般的管理信息系统( m a n a g e m e n t i n f o 肌a t i o ns y s t e m ,简称m i s ) 不同, 全局流程集成平台特别适用于开发大型的业务系统,这些系统除了管理企业业务 动作中产生的信息以外,还要管理这些动作的过程( 流程) 。在传统的大型业务 系统中,由于各流程之间相互关联,某些业务操作很容易引起全局数据的变化。 一旦系统的需求发生变化,这些操作以及与它们关联的全局数据都会受牵连,这 将为系统的开发和维护带来极大的困难。全局流程集成平台提出了全局流程和局 部流程的概念,明确区分了它们之间的界限。全局流程集成平台尽量减少全局数 据,使一些只修改局部数据的流程( 称为局部流程) 不对全局数据产生副作用; 局部流程之间使用消息机制来相互通信,这使各流程之间的耦合性降低、交互性 增强。 中山人学顾l :学位论文基于伞局流程集成、r 台的时态流程的研究 3 2g b pip 的体系结构 ! 夼回表现层 栉制台 背板 i 一一二二二二二二工二二二二二二二二二二二二二 ! 映射层 映射层f l l 一。 ,二二二二二二仁二二二二二二二二二二二二二 曦l 忑荫匹 l 勃! t i o 妇1 生l inil ll 4 塾太j 拈媒d it 洼i l i 劫k 。i 劫k 自上i i i 4 i lj i u i太扪_ u 斗太n _ i :i i1 1r 、 r 、 i i ,蛊记录f、e b a s e 谢删i :口x i l 搽f 1 ;尚j 中l :j 公川数据结构l l 的 屡咨;厣| 曼 二二二二二二| 二二二二二二二二二二二 删酣州卜居嘲 b x m l 文件ll 图3 1g b p i p 的体系结构 g b p i p 的体系结构如图3 1 所示。总体上,我们把应用系统分为两个部分:应 用层和全局流程集成平台。应用通过平台映射层来对访问平台( 或者说,平台对 所支持的任意的应用系统都提层供统一的映射层来为它们服务) 。映射层封装了 平台提供的所有的外部接口,这使得当平台内部某部分的对外接口发生变化时, 程序员原来所编写的应用程序不需要任何改变。 应用层主要包括状态程序( 一系列界面及相关程序) 和事件程序( 状态转换 中可能有的业务逻辑处理和分支判断程序等) ,它们是丌发任何带有人机交互的 应用系统的必要成分,而g b p i p 主要由映射层、状态推导引擎、约束机制、消息 传递机制、时态机制、外部事件、控制台、e b a s e 数据库等几个部分组成,它们 互相协作,共同完成平台提供的各项功能。 在理想的情况下,程序员只需要为特定的应用系统编写两部分程序:用户界 面构件以及其对应的程序( 状态程序) 、业务处理逻辑和事件分支检查处理程序 ( 事件程序) ,并选择合适的数据库和数据访问部件,即可完成应用系统的大部 分丌发工作( 两类事件程序都由状态推导引擎在适当的时候自动调用) 。 1 4 中山人学硕i :学位论义幕于伞局流程集成、l ,俞的时态流程的研究 需要指出,由于平台内部数据结构很多,访问频繁,如果保存到外部数据库, 则势必加重应用服务器的负担,而且也使得平台不能独立于应用而存在。因此, 我们选择了自己开发的内嵌式e b a s e 数据库用于存放这些数据结构。e b a s e 是一个 基于一阶谓词逻辑的数据库管理系统,通过快速的逻辑查询技术保证了系统的运 行效率和响应速度,与宿主语言具有很好的耦合特性;功能齐全,占用资源少。 3 3g b plp 的流程建模 3 3 1基本概念 定义3 1 表单( 助删) :是机构中的业务表格( 如申请表) 、单据、任务说明、 凭证、证书等的统称,它作为业务数据的载体而存在,也是业务数据的模式,相 当于数据模型中的型( m o d e l ) 。一个表单中的项目( i t e m ) 称为表单项,其取值称 为表单项值。由表单引申的一个概念是表单的例( f o r mi n s t a n c e ) ,它是指表 单的一个具体实例,例如张三的体检表就是“体检表”的例,表单只是模式一级 的概念。 在g b p i p 中,表单的例是以x m l 文件的形式存在并被系统所调度。 定义3 2 状态 幼:用于标识表单的例在某个特定时刻( 或特定时段) 所具 有的流程属性的集合。例如,某申请表单( 假设编号为a p p 0 0 1 ) 在3 月1 4 日下午五 点处于“待校验”状态。设一类表单的状态合集记为s 。在任一时刻,该类表单 的任一个表单的例都只能处于唯一的一个状态且有s f s 。在全局流程集成 平台中,表单的每个状态都对应着一个或多个用户界面,用户对表单的所有操作 都在这个界面中进行。这个用户界面称为该状态的状态程序。 定义3 3 事件饵化以f ) :是指对某一时刻所发生的能引发表单状态改变的事 情的抽象化描述。一类表单的所有可能发生的事件的合集记为e ,其中的某个 事件记为口r 。在上述的申请单流程中,“校验 就是一个事件,它使申请单的 状态由“待校验”变为“校验完成”。在全局流程集成平台中,每个事件都对应 着一段事件程序,用于处理在状态改变的过程中需要进行的业务操作。如上述“校 验”事件的事件程序可能会调用子程序来完成“校验 的功能。 定义3 4业务流图( b s 珈跚砌w d 蛔即胁,翮肋) :是一种由点和 中山人学顺i j 学位论文皋十伞局流程集成t 、l ,俞的时态流程的研究 边构成的有向图g ,它表示某类表单在其生存周期中可能出现的状态变化过程。 例如图3 2 就是一个业务流图的例子。业务流图中的所有点的集合表示状态集s , s o 婊示的是开始状态,& 昧示的是终止状态的集合;所有有向边的集合 表示事件集e ,并标识着状态变化的先后关系。在全局流程集成平台中,业务 流图是业务流程的直观体现。业务流图的例( b f di n s t a n c e ) 是指某个表单的例 在其生存周期中实际出现的状态变化历史序列。图3 2 给出了一个业务流程图的 简单示例。 一9 一p 一p 图3 2 业务流科图不例 定义3 5 角色( r d 艮) :模型中的角色是指处于某一特定的业务环境内,针对 某一特定的业务范围,参与执行、控制或调度业务系统的一类具有相同权限的人 或系统的总称。角色实际上是对现实世界中的实体的性质、行为、职能等方面所 共有的特征的抽象集合。要注意将角色和具体用户区分丌来,角色实质上是一个 抽象的概念,它是将用户按照对流程的操作内容( 如对某段流程或某个状态的操 作权限等) 的不同而划分的,一个用户可能对应多个角色,而一个角色自然也可 以对应多个用户,即角色和用户实质上是多对多的关系。例如,如果将学生视为 一个角色,则学生张三是一个具体用户。 3 3 2 基于有限状态机建模 前面介绍过基于有限状态机建模的基本背景,目前有很多业务流程系统产品 均采用此种建模方式。g b p i p 将有限状态机模型进行了改进。 g b pip 是改进的有限状态机 经典的有限状态机m 的输入是字符,而改进的有限状态机胁则以事件作为 输入。此外,胁还添加了一个谓词来表示约束条件。 形式化地,讹是一个六元组: 1 6 中山人学顾1 :学位论文基于全局流程集成甲台的时态流程的研究 施= 博,岛,f ,o ,叩) ( 3 - 1 ) 其中: s 是状态的非空集合,v j s ,s 称为施的一个状态; 为有穷的事件输入集( i n p u te v e n ts e t ) ; 岛是施的开始状态( i n j t i a ls t a t e ) ,岛s ; f 为胁的终止状态( f i n a ls t a t e ) 集合,f s ,v s f ,5 称为施的终止状态; q :一b d d z 是一个谓词; o :状态转移函数( t r a i l s i t i o n f u n c t i o n ) ,o :s 一s 。v o ,p ) s , 巾) oo ,p ) = f 表示施在状态s 下输入事件p ,若巾( s ) = 舰p ,则将状态变为f , 并等待下一个事件输入;若巾o ) = 力厶e ,则状态维持在5 ,并等待下一个事 件输入。 基于改进的有限状态机,可得到全局流程集成平台中流程的核心调度公式: v 跚s ,竹e ,q c , q o 瓴的= 趴l ( 3 2 ) v 其中,混业务流图的状态集,e 是业务流图的事件集,醍业务流图的约束 集,o :s e s 是状态转移函数。 公式( 3 2 ) 的语义是:当表单的例处于状态s f 且事件p 敲触发时,若约束条件 c f 被满足,则执行白对应的事件程序,并根据转移函数,将表单的例的状态更新 、l 为s p lo 3 4g b plp 的流程调度 一般每个表单在其表单生命周期中都会经历两个阶段:“表单生成 ( 先) 和“表单调度”( 后) ,这两个阶段统一起来即成为表单整个生命周期的所有内 容。其中“表单生成”指的是从开始状态到第一个状态,而其余的过程都可以看 作为“表单调度”过程。“表单生成和“表单调度 两者既有区别又有联系: 1 “表单生成 是指表单从无到有,因此大部分情况下表单的数据项内容 都是空的; 2 “表单调度”是指表单状态随着业务处理的后续变化,因此大部分情况 1 7 中山人学顾i :学位论文拱于全局流程集成一p 台的时态流程的研究 下表单的数据项内容都不是空的: 从而,状态推导引擎提供了两个主要的a p i :表单生成a p i 和表单调度a p i 。 其中,“表单生成”对应的界面是“新建表单”界面,当用户提交该界面后调用 的是引擎提供的“表单创建”的a p i ;当用户在“表单调度”对应的界面提交后 调用的是引擎提供的“表单

温馨提示

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

评论

0/150

提交评论