(计算机软件与理论专业论文)基于扩展spdm模型的动态流程表示方法与实现机制的研究.pdf_第1页
(计算机软件与理论专业论文)基于扩展spdm模型的动态流程表示方法与实现机制的研究.pdf_第2页
(计算机软件与理论专业论文)基于扩展spdm模型的动态流程表示方法与实现机制的研究.pdf_第3页
(计算机软件与理论专业论文)基于扩展spdm模型的动态流程表示方法与实现机制的研究.pdf_第4页
(计算机软件与理论专业论文)基于扩展spdm模型的动态流程表示方法与实现机制的研究.pdf_第5页
已阅读5页,还剩83页未读 继续免费阅读

(计算机软件与理论专业论文)基于扩展spdm模型的动态流程表示方法与实现机制的研究.pdf.pdf 免费下载

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

文档简介

中山大学硕士学位论文摘要 论文题目:基于扩展s p d m 模型的动态流程表示方法与实现机制的研究 专业:计算机软件与理论 硕士生:刘生寒 指导教师:李磊教授 摘要 随着计算机应用的普及,很多业务系统被开发出来用于企业的业务流程管 理,从而大大降低了企业的运营成本,也提高了企业的生产效率。为了应对市场 变化,企业需要根据市场的变化及时调整自己的生产运营流程,于是业务系统对 动态流程的支持就显得很重要。着眼于此,本文做了如下工作: 首先,阐述了业务系统发展过程中各种支持动态流程的建模方法,并详细分 析了作为本文研究基础的s p d m 模型,给出了s p d m 模型的优缺点;接着,为 了克服s p d m 模型不能支持流程动态修改的缺点,本文对s p d m 模型进行扩展, 提出e s p d m 模型,e s p d m 引入强关联操作序列和操作回滚标记,使状态模型 和操作模型的描述能力有了很大的提高,从而使e s p d m 模型支持业务系统在运 行时对流程模式进行修改,实现了流程模式一级的动态性;另外,本文对基于 e s p d m 模型的业务实例进行形式化描述,并通过特权通道扩展实例的描述信息, 使e s p d m 模型增加支持实例特权通道的功能,并给出特权通道设置和实例状态 跳转的算法,实现了实例一级的动态性。 为了解决流程模式修改后所带来的实例迁移问题,本文细化实例可迁移的判 断标准,提出基于数据依赖关系和操作回滚的实例实时迁移策略。相比于使用较 广泛的实例重启和分类执行等迁移策略,实例实时迁移策略可以减少用户工作 量,同时使更多的实例迁移到新的流程模式上继续运行。 最后,本文设计并实现了基于e s p d m 模型的业务流程建模工具e p b t o o l , 并通过一个案例说明e s p d m 模型如何支持流程的动态修改和实例的迁移。 关键词:e s p d m 模型,特权通道,迁移策略,数据依赖关系,强关联操作序列 中山大学硕士学位论文 a b s t t a c t t i t l e : m a j o r : n a m e : s u p e r v i s o r : r e s e a r c ho i l d e s c r i p t i o na n di m p l e m e n t a t i o no fd y n a m i cp r o c e s s b 驾e do ne x t e n d e ds p d mm o d e l c o m p u t e rs o i t w a r ea n dt h e o r y s h e n g h a nl i u p r o f l e il i a b s t r a c t w i t ht h ep o p u l a r i z a t i o no fc o m p u t e ra p p l i c a t i o n s ,m o r ea n dm o r eb u s i n e s ss y s t e m s a l ed e v e l o p e dt om a n a g eb u s i n e s sp r o c e s s e s , a n dt l l c yr e a l l yr e d u c ec o m p a n i e s o p e r a t i n gc o s t sa sw e l la sr a i s i n gc o m p a n i e s p r o d u c t i o ne f f i c i e n c y h o w e v e r , i n r e s p o n s et or a p i dc h a n g e so fm a r k e t , c o m p a n i e sn e e dt oc h a n g et h e i ro p e r a t i o n p r o c e s s e sf r o mt i m et ot i m e t h e r e f o r e ,ab u s i n e s ss y s t e ms u p p o r t i n gd y n a m i cp r o c e s s b e c o m e sv e r yi m p o r t a n tt oac o m p a n y f o c u s i n go nt h i s ,t h i sp a p e rd o e st h ef o l l o w i n g j o b : f i r s t l y , a n a l y z e av a r i e t yo fd y n a m i cp r o c e s sm o d e l i n gm e t h o d o l o g ya n d s y s t e m a t i c a l l yd i s c u s ss p d m w h i c hi st h eb a s i so ft h i sp a p e r , a n dw o r ko u ts p d m s s t r o n gp o i n t sa n d w e e kp o i n t s s e c o n d l y , i no r d e rt os u p p o r td y n a m i cp r o c e s s ,t h i sp a p e re x t e n d ss p d mt o e s p d mb yi n t r o d u c t i o no fs t r o n gc o r r e l a t i o no p e r a t i o ns e q u e n c ea n dt r a n s a c t i o n r o l l b a c km a r k a n dt h i se n h a n c e sd e s c r i p t i o na b i l i t yo fs t a t em o d e la sw e l la s o p e r a t i o nm o d e l w i t he s p d m ,w ec a nm e n dp r o c e s sd e f i n i t i o nd u r i n go p e r a t i o nt i m e a n da l lo ft h e s et o g e t h e rd e a l s 、i t l ld y n a m i cp r o c e s sp r o b l e m so nt h el e v e lo fp r o c e s s d e f i n i t i o n t h i r d l y , g i v et h ef o r m a ld e s c r i p t i o nf o rp r o c e s si n s t a n c eb a s e do ne s p d m ,a n da d d p r i v i l e g e - p a t ht ot h ef o r m a ld e s c r i p t i o na n dt h i sc e r t a i n l ye n h a n c e si t sd e s c r i p t i o n a b i l i t ya n dm a k e si n s t a n c er u nw i t h o u tt h ec o n f i n eo fp r o c e s sd e f i n i t i o n t h i sp a p e r a l s ow o r k so u ta l g o r i t h m sf o rs e t t i n gp r i v i l e g e - p a t ha n di n s t a n c e sj u m p i n gt h r o u g h p r i v i l e g e p a t h a l lo ft h e s et o g e t h e rd e a l 、 ,i 也d y n a m i cp r o c e s sp r o b l e m so nt h el e v e l o fp r o c e s si n s t a n c e s f o u r t h l y , w o r ko u ti n s t a n c e s r e a l - t i m em i g r a t i o ns t r a t e g yw h i c hi sb a s e do nd a t a 1 1 i 中山大学硕士学位论文 d e p e n d e n c yr e l a t i o na n d t r a n s a c t i o nr o l l b a c kt e c h n i q u e ,a n di ts o l u t e st h ep r o b l e m b r o u g h tb yt h ec h a n g eo fp r o c e s sd e f m i t i o n c o m p a r e 嘶t l lw i d e l y - u s e ds t r a t e g i e s , w h i c hi sr e s t a r t i n gi n s t a n c e so rl e t t i n gi n s t a n c e s 弱i tw a s ,r e a l t i m em i g r a t i o ns t r a t e g y c a nr e d u c eu s e r s w o r k l o a da n dh a v em o r ei n s t a n c e sm i g r a t et ot h en e wp r o c e s s d e f i n i t i o n f i n a l l y , d e s i g na n di m p l e m e n ta ne s p d m - b a s e dp r o c e s sb u i l d i n gt o o l ,e p b t o o l , a n ds h o we s p d mh o wt os u p p o r td y n a m i cp r o c e s sa n di n s t a n c em i g r a t i o nt h r o u g ha l l a p p l i c a t i o nc a s e k e yw o r d s :e s p d mm o d e l ,p r i v i l e g e - p a t h ,m i g r a t i o ns t r a t e g y ,d a t ad e p e n d e n c yr e l a t i o n , s t r o n gc o r r e l a t i o no p e r a t i o ns e q u e n c e i v 论文原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独 立进行研究工作所取得的成果。除文中已经注明引用的内容外,本论 文不包含任何其他个人或集体已经发表或撰写过的作品成果。对本文 的研究作出重要贡献的个人和集体,均已在文中以明确方式标明。本 人完全意识到本声明的法律结果由本人承担。 学位论文作者签名:窆堡塞 日期: 2 q 屋呸厶目立因 学位论文使用授权声明 本人完全了解中山大学有关保留、使用学位论文的规定,即:学 校有权保留学位论文并向国家主管部门或其指定机构送交论文的电 子版和纸质版,有权将学位论文用于非赢利目的的少量复制并允许论 文进入学校图书馆、院系资料室被查阅,有权将学位论文的内容编入 有关数据库进行检索,可以采用复印、缩印或其他方法保存学位论文。 学位论文作者签名:刘瘳 导 日期:) d d 年b 月2 日 基于扩展s p d m 模型的动态流程表示方法与实现机制的研究第l 章绪论 1 1 研究背景 第1 章绪论 现代企业的生产运营已经离不开计算机技术的支持,信息化的普及大大提高 企业的生产效率和应对市场变化的能力;近年来随着电子政务的使用和推广i i 】 信息化在行政审批、公文处理和政府行政信息公开方面也发挥了越来越大的作 用。无论是企业的生产运营,还是行政事务的处理,在业务上都存在很强的流程 性,而传统的管理信息系统( 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 ,m i s ) 主要是对机 构运作的结果,也即机构运作中所产生的信息,进行管理【2 j ,由于缺少对强流程 型业务的有力支持,使得m i s 系统在流程管理方面表现出很大的不足。正是由 于m i s 系统存在不足,业务系统才应运而生。业务系统除管理数据之外,还要 管理机构的运作行为本身,也即运作程序和运作流程【3 】。 业务系统的研究与发展为企业和政府的信息化指明了方向,但是如何高效地 构建业务系统是信息技术工作者所面临的重大挑战与迫切任务之一【4 】。前期以工 作流管理系统为代表的业务系统虽然为企业在运营方面提供了很大的支持,但是 当前大多数工作流系统不支持动态修改工作流模型或者对工作流动态性的支持 不够,随着企业的发展,企业面临的竞争也越发激烈,为了能在多变的市场中抓 住先机,企业就必须能够根据市场的变化灵活地改进自己的生产、运营流程。因 此,当不确定性和多变性已经成为现代企业流程的内在特点时,提高业务系统应 对流程变化的能力,开发支持实时更改业务系统流程模型定义的系统就显得极其 重要。 另外,对于更改后的业务流程,系统已运行实例对变化做出的反应也是衡量 一个业务系统是否具有动态性的重要指标。一个好的系统,它流程的改变应该立 即被已运行实例感知,并且使得实例能尽可能地按照新的流程继续执行下去,这 样才能更好地支持实时更新流程的目的。 基于扩展s p d m 模型的动态流程表示方法与实现机制的研究第l 章绪论 1 2 研究内容及选题意义 1 2 1 论文的研究内容 一般来说,业务系统运行管理分成两个阶段:定义阶段和运行阶段。在业务 系统的流程定义阶段,用户需要做的事情包括:( 1 ) 制定业务系统的过程描述信 息,也即流程控制信息,它包括构成业务系统流程的任务( 或操作) 和任务间前 后流转的路由控制信息;( 2 ) 参与业务系统活动的组织成员,也即用户信息和组 织机构信息,它主要与业务系统访问控制权限的设置有关;( 3 ) 定义业务系统运 行时所处理的表单及数据。 现在大部分的业务系统都是严格按照这两步来部署和实施的。由于定义阶段 和运行阶段的严格区分,在业务系统的运行阶段,用户不能直接访问或修改流程 的定义信息,这就使得业务系统在投入使用后不能更改其流程定义,业务实例只 能按照定义好的流程模式完成它相应的生命周期。但这与实际情况不符,目前, 由于市场的激烈竞争,企业往往需要根据市场的反应来实时调整自己的运营及生 产策略,从而使自己能够在激烈的竞争中取得主动权,这样的事实就决定了企业 的业务流程不可能在定义后就完全不需要改动;相反,改动和调整是必须的,它 是一个业务系统在运行中走向成熟、实用、健壮的必经之路【5 , 1 6 】。 正是着眼于此,本文研究的主要问题包括: ( 1 ) 在业务系统运行阶段,某些特殊业务实例能否不按流程定义进行流转? 这属于实例一级对流程定义的违反,违反操作只针对当前实例进行,不对其他实 例产生影响; ( 2 ) 在业务系统运行阶段,能否对流程的定义进行修改? 所做修改对系统当 前实例和新生成的实例都产生影响;在这种情况下,如何制定实例的迁移策略 和迁移算法,使得当前正在运行中的实例在新的流程定义中能正常执行? 这属 于模式一级的流程动态性; ( 3 ) 基于目前已有的业务流程描述模型s p d m ,如何构建满足上述要求的业 务流程描述模型,并将其形式化描述? ( 4 ) 最后,能否通过案例来说明上述模型的正确性? 对以上4 个问题的回答,即为本文的研究内容。 2 基于扩展s p d m 模型的动态流程表示方法与实现机制的研究第1 章绪论 1 2 2 论文的选题意义 对于瞬息万变的市场,应变能力将是一个企业赖于生存和发展的重要能力 之一,为了适应企业流程多变的现状,业务系统的柔性问题在近年来受到越来越 多的关注。业务系统的柔性体现在:流程定义能在系统运行时动态改变,从而使 得企业能够根据市场的变化,及时制定新的符合市场需求的产品生产、销售的流 程,而且流程的改变必须能够及时地反映到业务实例中,使业务实例按照新的流 程定义来更新自己的执行路径,这样流程的修改才具备现实意义。 本文主要研究的问题是怎么通过扩展一个业务流程描述模型的元信息,使模 型具备描述实例一级对流程定义违反的能力以及运行时流程定义可动态修改的 能力,并在此基础上讨论业务实例迁移的策略,目标是在保证实例执行完整性和 正确性的前提下,使尽可能多的流程实例能迁移到新的流程定义上继续执行,使 流程实例能够享受到流程变化带来的好处。因此,本文所做工作具备探索动态业 务流程的构建及实施方面的意义。 1 3 论文组织结构 本文章节的组织结构如下: 第l 章:绪论。首先介绍本文的研究背景,指出带有柔性且可动态修改的工 作流模型更能适应当前企业竞争激烈的现状,并由此引出本文将要研究的问题; 第2 章:基础知识及研究现状。首先介绍了工作流领域的相关技术和柔性工 作流所研究的问题和当前的研究现状;然后详细介绍了基于状态的业务流程描述 模型s p d m ,并总结了s p d m 在定义业务流程方面的优势和不足; 第3 章:描述模型e s p d m 的构建与分析。首先指出当前业务系统存在的不 足之处;接着介绍了e s p d m 模型的相关定义和扩展功能;然后给出了e s p d m 模型的详细描述信息和形式化表示方法;最后对e s p d m 模型做了分析; 第4 章:基于e s p d m 的实例运行机制。首先给出了业务实例的形式化描述 方法,并讨论了表单运行时状态的转换;然后介绍了实现实例特权通道的相关技 术和算法;最后讨论了如何解决在业务系统运行时修改流程模式所带来的实例迁 移问题,并给出了实例可迁移标准以及判断实例是否符合迁移标准的算法; 3 基于扩展s p d m 模型的动态流程表示方法与实现机制的研究 第l 章绪论 第5 章:建模工具与案例应用。首先介绍了基于e s p d m 模型的流程建模工 具e p b t o o l ;接着通过一个关于采购流程的案例说明e s p d m 如何解决实例迁移 的问题。 第6 章:总结与展望。对本文的工作进行总结,并展望下一步的研究内容。 1 4 本章小结 本章首先介绍了业务流程系统的研究背景,指出业务流程管理系统对企业提 高生产运营效率有着重要的作用,并进一步通过分析当前市场的变化趋势,得出 支持动态流程的业务系统更能适应瞬息万变的市场,从而引出本文的研究内容, 即动态流程的表示方法和实例实时迁移的实现机制,并论述了此研究内容的现实 意义,最后给出了本文的组织结构。 4 基于扩展s p d m 模型的动态流程表示方法与实现机制的研究第2 章基础知识及研究现状 第2 章基础知识及研究现状 业务流程管理系统中很大部分是通过工作流管理系统的形式来实现的,包 括多a g e n t 工作流 6 1 、基于文件的工作流 7 1 和基于智能规划的工作流【5 s , 9 1 。工作 流系统是当前研究相对较成熟的业务流程管理系统的实现模式,因此,在这里重 点介绍工作流相关的技术,通过总结当前工作流管理系统存在的不足,来引出业 务流程管理系统需要改进的内容。目前已有多种较为成熟的工作流建模方法 【8 - 1 0 - 1 5 1 。 2 1 工作流技术概述 工作流的概念起源于生产组织和办公自动化领域。它针对日常生活中具有固 定程序的活动而提出的一个概念,目的是通过将工作分解成定义良好的任务、角 色,按照一定的规则和过程来执行这些任务并对它们进行监控,达到提高办事效 率、降低生产成本、提高企业生产经营管理水平和企业竞争力的目的 4 1 。 2 1 1 工作流管理系统的相关概念 1 工作流( w o r k f l o w ) :范玉顺给出的定义是,工作流是一种反映业务流程 的计算机化的模型,它是为了在先进计算机环境支持下实现经营过程集成与经营 过程自动化而建立的可由工作流管理系统执行的业务模型【4 】。 简单而言,工作流管理系统就是一个业务流程的管理系统,它对企业运作流 程建模,模型可用多种不同的技术表示f 1 6 1 ,例如p e t r in e t 1 0 】和e c a 规则【8 1 等,并 将模型交由系统解析得到计算机可以识别的形式化数据,这些数据包括业务系统 所具有的任务( 操作) ,任务间流转的控制信息等。 2 工作流管理系统( w f m s ) :工作流管理联盟w f m c 对于工作流管理系统 的定义:工作流管理系统是一个软件系统,它完成工作流的定义和管理,并按照 计算机中预先定义好的工作流逻辑推进工作流实例的执行【1 7 1 。 5 基于扩展s p d m 模型的动态流程表示方法与实现机制的研究 第2 章基础知识及研究现状 3 路由( r o u t e ) :业务实例的路由信息主要用于确定哪些任务需要被执行、 并以什么次序执行。工作流控制模型包括四种类型的路由结构【1 8 1 : ( 1 ) 顺序路由:任务是一个接着一个执行。通常如果两个任务需要顺序执行, 它们之间通常有明确的依赖关系,例如,第一个的结果是第二个执行所必需的输 入【1 8 】: ( 2 ) 并行路由:多个任务可以同时执行或以任意次序执行,它表示多个任务之 间没有数据上的依赖关系。它由一个a n d s p l i t 结构开始,到一个相应的a n d - j o i n 结构结束【1 8 j ; ( 3 ) 选择路由:表示多个任务间只需要执行其中的一个,至于执行哪一个分支, 则由系统根据约束信息进行选择。它由一个o r s p l i t 结构开始,到个相应的 o r - j o i n 结构结束【1 8 l ; ( 4 ) 循环路由:表示某个任务需要反复执行,理想地,对于一个实例一个任务 仅执行一次,然而某些情况下,使用循环路由是必要的【1 8 1 ,例如多人联合审批。 2 1 2 工作流参考模型的体系结构 工作流产品为企业的业务运行提供了软件支撑环境,对于业务操作集合来 说,它很像单个计算机上的操作系统,而业务集合就像一个个的软件;只不过工 作流管理系统支撑的范围更大、环境更加复杂,为了实现不同工作流产品之间的 互操作,方便与其它应用系统的集成,工作流管理联盟( w f m c ) 定义了一个通用 的工作流管理系统的体系结构【1 刀,如图2 1 所示( 见下页) 。 工作流系统体系结构给出了抽象的工作流管理系统的功能组成部件和接口, 它具备工作流管理系统的主要功能特征。由此体系结构图可知,工作流管理系统 由流程定义工具、工作流引擎( 核心) 、工作列表处理器、用户界面及相关的应 用程序和数据所组成。工作流引擎是系统的核心部分,通过它将其他所有信息组 合起来,其中应用程序和应用数据与业务相关,由用户自定义,属于工作流系统 的外围组成部分,并通过向工作系统引擎提供调用接口,集成到工作流管理系统 中,由引擎按照流程实例的运行情况进行调用。组织( 角色) 模型主要用于任务 列表和资源的访问控制,只有具备权限的角色才能访问相应的资源,进行相应的 操作。工作流模型一般都采用形式化定义【i l l 。 6 基于扩展s p d m 模型的动态流程表示方法与实现机制的研究 第2 章基础知识及研究现状 图2 一l工作流管理系统的体系结构图 2 2 柔性工作流的研究现状 2 2 1 柔性工作流所研究的问题 根据实现时机的不同,文献【1 9 】将工作流的柔性分成选择性柔性和适应性柔 性( 也称为静态柔性和动态柔性) ,其中选择性柔性要求在建立业务流程模型时 预知可能的变化,并将所有可能发生的情况都定义出来;而适应性柔性是指系统 运行阶段的柔性,它又分成型调整和实例调整两类,其中实例调整只针对当前实 例,要求修改能够立即生效;而型的调整( 流程模式的调整) 则根据选择的策略 不同,可以分成立即生效和推后生效两种【1 9 1 。因此,概括地说,柔性工作流主要 7 基于扩展s p d m 模型的动态流程表示方法与实现机制的研究第2 章基础知识及研究现状 研究如下问题: ( 1 )在业务系统执行阶段,对业务流程定义进行修改,包括增加或减少流程 中的任务、修改任务的配置信息; ( 2 ) 在业务系统执行阶段,调整任务的执行顺序,即变更实例的执行轨迹; ( 3 )在业务系统执行阶段,动态修改访问控制权限; ( 4 )当业务流程模式或配置信息被修改时,如何迁移已在运行中的实例; ( 5 )处理工作流系统在运行过程中出现的异常; ( 6 )验证修改后的流程模式的合理性; ( 7 )当工作流模型定义不完整时,怎么生成流程实例。 当前学者研究比较多的是( 1 ) ( 2 ) ( 3 ) ( 4 ) 。可见,柔性工作流主要研究业 务系统动态柔性的问题 2 0 - 2 3 1 ,而这也是本文所要研究的方向,即业务系统的动态 柔性。 2 2 2 柔性工作流的研究成果及现状 李红臣、史美林在文献 2 4 】提出三维工作流模型,即把工作流模型细分为组 织模型( o r g a n i z a t i o nm o d e l ) 、数据模型( d a t am o d e l ) 和过程模型( p r o c e s sm o d e l ) ; 其中组织模型描述组织内部各个实体之间的关系以及实体所担任的角色;数据模 型描述业务过程所访问的数据以及数据的流向;过程模型描述业务过程结构中的 各个实体及相互之间的约束关系,用于定义业务过程,控制工作流的执行。 三维模型的划分,降低了描述工作流模型的复杂度,也为实现工作流的柔性 提供了有力支持。目前关于柔性工作流的解决方案,有如下几种:预定义所有可 能的路径【1 3 1 、将实例限定在流程模型变化区域之外【2 5 1 、基于版本控制的解决方 案刚、基于e c a 规则解决方案2 7 捌、基于扩展元模型的解决方案1 2 9 、基于历史 执行轨迹一致性的方案【3 0 】以及基于黑盒的补充定义方案【3 。 文献【1 3 】为提高工作流系统应对动态不确定因素的处理能力,通过在工作流 模型中引入x o r s p l i t 等结构,将流程中所有有可能使用的路径都定义到流程的模 型中,它的缺点是模型过于庞大理解起来困难,而且对于动态流程来说不可能在 定义阶段就知道所有的路径。 r 基于扩展s p d m 模型的动态流程表示方法与实现机制的研究 第2 章基础知识及研究现状 文献【2 5 】通过确定流程的变化区域,并限制处于流程变化区域之外的流程实 例才能迁移到新的流程上继续执行,这可以避免动态演化错误,但是却不能使工 作流实例立即享受到流程演化所带来的优势。 文献【2 6 】采用基于版本控制的方法来解决柔性流程的问题,每个版本独立地 完成相应的业务实例,不同版本间的实例不存在交互作用,它的缺点是已运行实 例不能享受到流程演化带来的优势。 文献 2 7 , 2 8 提出基于e c a 规则的解决方案,在流程定义阶段将活动分为必 须的、可选的、可重复的三类,并定义好各种有可能出现的情况以及相应的处理 策略,这相当于解决了选择性柔性的问题,它的弊端是需要在流程定义阶段枚举 出所有可能的情况,这会使得规则数量大大增加,从而增加系统的复杂度。 文献【2 9 】通过增加对过程、活动、活动属性和组织模型的动态特性以及操作 协议的描述,扩展了工作流元模型的描述能力,元模型在工作流的建立阶段力求 将动态特性进行描述和定义,在执行阶段可以在已定义的动态框架内变化,既保 证了系统的灵活性,又使系统对动态变化具备可控操作。它的弊端在于需要在流 程定义阶段给定动态变化的框架,变化范围受限。 文献【3 0 】提出一种基于实例历史执行轨迹一致性的迁移方案,规定只有当新 的流程模式能够产生与当前实例已执行任务序列一致的实例时,当前实例才能迁 移到新的流程定义上继续执行。它的缺点在于要求太严格,会导致大部分实例不 能迁移。 文献【3 1 】在流程建模阶段引入黑盒元素对流程中的不确定因素进行封装,该 方法避免了流程定义过于庞大复杂的缺点,并且在一定程度上支持动态流程;但 由于在流程模型定义中引入了新的元素,加大了流程模型的复杂度。 在文献【3 2 】,对于实例如何迁移的问题,w m pv a nd e r a a l s t 提出三种解决 策略: ( 1 ) 重新启动( r e s t a r t ) :将所有已在运行且尚未到达终止状态的实例结束, 然后按照新的流程定义重新执行f 3 2 1 。这种策略的优点是实现起来方便简单,但它 取消已经完成的所有工作,会额外增加用户的工作量:例如,完成电子转账后, 要取消转账操作需要办理很多手续; ( 2 ) 继续执行( p r o c e e d ) 也叫分类执行( c l a s s i f y ) :它基于版本控制的思想,将 9 基于扩展s p d m 模型的动态流程表示方法与实现机制的研究第2 章基础知识及研究现状 修改后的流程定义整体进行版本升级,同时在系统中保留流程原有的定义,然后 对流程实例进行分类,已运行的实例按照原定义执行,新生成的实例按照新的流 程定义执行【3 2 1 。这种策略的好处是实现起来简单,而且不用取消原来完成的工作, 但是对于一些执行周期长的业务流程,则实例无法及时享受到流程修改后带来的 好处,这会降低业务对变化的反应能力; ( 3 ) 转换( t r a n s f e 0 :将运行中的流程实例按照某种策略,迁移到新的流程 定义上,即流程模式修改前实施的步骤仍然有效,从新的流程生效那- - n 开始, 所有实例都按照新的流程执得3 2 l 。这种策略的好处是流程定义的修改会及时反映 到实例中,而且实例已经完成的任务能尽可能地保留下来,但是它实施起来比较 复杂,而且容易引入动态演化错误,例如死锁、活动重复执行、活动被跳过等问 题。 这三种策略在一定程度上解决了运行中的工作流实例如何迁移到新的工作 流模型这一难题,但是在开发系统时,还是要根据具体情况进行选择 2 3 , 3 3 】。 2 3 基于状态的业务流程描述模型 s p d m ( s t a t e b a s e dp r o c e s s d e s c r i p t i o nm o d e l ) 3 4 】,基于状态的业务流程描述 模型,是中山大学软件研究所在总结多年项目开发经验以及理论知识积累后提出 的业务流程描述模型,实践已经证明该模型在描述业务系统方面存在优异的能 力,软件所以此为基础开发了具有自主软件版权的全局流程集成开发平台 ( g b p i p ) 。 2 3 1 s p d m 模型的总体概述 s p d m 模型以单个表单( 宾语) 作为描述对象,这样能更好地帮助用户理解整 个业务流程的走向。s p d m 模型以表单在其生命周期中的变化过程来定义业务流 程;将表单在生命周期中的每一个驻点抽取出来作为流程的状态,而业务操作就 是引起表单在这些状态中流转的原因;以表单为中心,有利于系统从需求分析阶 段向设计阶段的平滑转换,加快开发速度:在流程同步与信息交互方面,s p d m 使用消息机制作为各流程之间交互与同步的手段。简单地说,s p d m 模型基于有 限状态机模型f s m ,并在此基础上引入消息机制、业务逻辑、各类约束检查、表 1 0 基于扩展s p d m 模型的动态流程表示方法与实现机制的研究 第2 章基础知识及研究现状 单调度理论等【3 4 l 。 2 3 2s p d m 模型的相关定义 下面给出s p d m 相关的定义说明: ( 1 ) 流程模式( p r o c e s sm o d e ) :也叫业务流程。在s p d m 中,一个表单的生命期 被划分为一组状态,这些状态刻画了整个表单的变化过程,构成了业务流程。业 务流程用一个有向图表示,其中节点表示表单所处的状态;有向弧表示用户或系 统对表单的操作,它的执行会引起表单实例在两个状态间的流转【3 4 1 。 ( 2 ) 表单模式( f o r mm o d e ) , 在s p d m 中,表单模式指的是企业或机构中的业务 表格、单据和凭证等的统称,它作为业务数据的载体而存在,也是业务数据的模 式,相当于数据模型中的型( m o d e l ) ,包括表单的名称以及包含的表单项。一个 表单中的项i | ( i t e m ) 称为表单项,其取值称为表单项值d 4 1 。 ( 3 ) 表单实例( f o r mi n s t a n c e ) :表单模式被例化后,得到的就是表单实例,表单 实例记录了表单当前的数据。 ( 4 ) 业务实1 歹l j ( b u s s i n e s si n s t a n c e ) :也叫实例或流程实例,是流程的一次具体执行, 对应于现实中的一项业务。 ( 5 ) 业务操作( o p e r a t i o n ) :也叫任务( t a s k ) ,是流程定义的组成元素,表示用户 可对表单实施的操作,是一个逻辑上的抽象定义,它的一次具体执行才对表单实 例产生影响,称为操作的执行或活动( a c t i v i t y ) 。为了方便描述,在s p d m 中业务 操作也叫事件( e v e n t ) 。 ( 6 ) 操作约束( o p e r a t i o nc o n s t r a i n t ) :在一个实例推进的过程中,对实例的每一 次操作执行都是有约束的,只有满足了操作约束,操作才能被执行。在s p d m 模 型的约束机制中引入具有较强表达能力的逻辑表达式描述约束条件,它包括:消 息约束( m e s s a g ec o n s t r a i n t ,m c ) 、规则约束( r u l ec o n s t r a i n t , r c ) 和权限约束 ( a u t h o r i z a t i o nc o n s t r a i n t , a c ) 。其中,消息约束用于描述本业务操作中需要接收 的来自其他流程的消息;规则约束用于描述本业务操作被触发前需要满足的逻辑 条件;权限约束则用于描述系统某角色执行该业务操作时所需要满足的权限跚。 ( 7 ) 消息机制( m e s s a g i n gm e c h a n i s m ) ,在s p d m 中消息机制用于定义哪些操作需 要发送消息,以及消息的类型( 包括同步和异步两种) 和消息的接收者。由于引 入了消息机制,s p d m 模型能够表达同步和异步等两大流程交互模式,进一步可 基于扩展s p d m 模型的动态流程表示方法与实现机制的研究第2 章基础知识及研究现状 根据交互目的的不同细分为链式、同时触发、嵌套、点对点、相似同步等5 种交 互方式,大大加强了流程实例在推进过程中与其他流程实例的交互作用刚。 2 3 3s p d m 模型的形式化描述 s p d m 以有限状态自动机为基础,在模型形式化描述方面也借用了f s m 的 描述方法。s p d m 的形式化描述是分层展开的,其中流程基本信息的描述位于最 项层,接着是与该流程关联的表单模式的描述信息,然后是流程状态的描述信息, 最后是业务操作的描述信息。在描述信息中涉及到权限、约束和外部应用程序等 配置信息。下面将给出各部分具体的形式化描述f 3 4 1 : 1 业务流程基本信息( b a s i ci n f o r m a t i o n ) :业务流程的基本信息是一个4 元组,它 的表示如下 b a s i c l n f o = ( p i d ,p v e r s i o n ,p n a m e ,a c )( 2 一1 ) 其中p i d 、p v e r s i o n 和p n a m e 分别为流程的编号标识、版本和名称。彳c 表示流程 的权限控制信息,只有满足权限的用户才能看到该流程模式下的实例。 2 表单模式( f o r mm o d e ) :由于不同的业务可以具备同样的流程,例如,研究 生入学注册过程和本科生入学注册过程是一样的,但是两者的表单格式不一样, 所以一个流程下可以挂有一个或多个表单模式,并通过表单类型f o r m t y p e 进行区 分。表单模式信息是一个3 元组,它的表示如下: f o r m l n f o = ( f o r m t y p e , p i d , f o r m l t e m s )( 2 - 2 ) 其 f o r m t y p e 表示表单类型,p i d 是表单所关联的流程i d ,f o r m l t e m s 是表单项。 f o r m b e m s 又可以进一步形式化定义为: f o r m b e m s = ( ( i t e m n a m e i ,t y p e l ) ,( 1 t e m n a m e ,t y p e ) ) ( 2 3 ) 其中i t e m n a m e 表示项名,t y p e 表示项的数据类型,刀是表单所具有的表单项数目, 不同的表单n 是不同的。 3 状态信息( s t a t ei n f o r m a t i o n ) :一个流程通常由多个状态组成,它应该包含 一个开始状态和至少一个结束状态,这些定义借用了有限自动机的概念。状态信 息是一个5 元组,它的表示如下 s t a t e l n f o = ( s t a t e l d ,p i d ,s t a t e n a m e , i n t e r f a c e _ a d d r , a c ) ( 2 - 4 ) 其中s t a t e l d 唯一标识一个状态,p i d 是流程的1 d ,s t a t e n a m e 是状态的名称, i n t e r f a c e _ a d d r 是状态界面地址,a c ( a u t h o r i t yc o n s t r a i n t ) 是权限约束表达式,它由 1 2 基于扩展s p d m 模型的动态流程表示方法与实现机制的研究第2 章基础知识及研究现状 阶逻辑表达式描述,例如,r o l e = 经理aa g e 3 0 ,在表单实例运行的过程 中可通过约束求值器求其布尔值,从而判断当前的权限约束是否被满足。 4 业务操作信息( o p e r a t i o ni n f o r m a t i o n ) :在流程图上业务操作是连接两个状 态项点的边。当一个业务操作被触发时,系统会检查当前的消息约束、规则约束 和权限约束是否被满足,如果满足,则执行操作,并执行外部应用程序和发送与 其他流程的交互消息,之后表单实例才改变状态,流程才向前推进。 业务操作信息是一个9 元组,它的表示如下: o p e r m f o = ( o p e r l d , o p e r n w n e , p i d , t y p e , c o n s t r a i n t ,勋z 峨蚴,强砒尥) ( 2 - 5 ) 其中o p e r l d 表示业务操作的i d ,o p e r n a m e 表示业务操作的名称;p i d 表示业 务操作所属流程模式的i d ;t y p e 是业务操作的类型,在s p d m 模型中业务操 作也称为事件,业务操作的类型也是事件类型,具体的意义见表2 1 : 表2 1 业务操作类型 羹业务操作类型,氖对应事件类型,j 。, 意义 , , o 系统事件由系统自动执行的操作,例如由时钟触发的操作 1 正常事件 由用户触发的操作,事件的执行引起状态的跳转 2 自环事件操作的开始和结束都指向同一个状态,比如联合 审批 3 跳出自环事件跟自环事件配对使用,每一个自环事件都有相应 跳出自环事件 可通过如图2 2 所示的资金申请流程图来进一步理解这4 种事件类型: ( 至 懒 10 0 0 0ac u s t y p e = b i g c u s t o m e r 了表单状态发生转换所需 要满足的除消息和权限以表示金额大于1 0 0 0 0 而且客户类型为大客户 外的前提条件,通常与表单 数据项有关 权限约束 权限约束表达式a c f 不但 ( r o l e = 业务员。a a m o u n t 1 0 0 0 0 ) v 支持传统的基于角色的访 问控制,得益于逻辑表达式 ( r o l e = 部门主管 a m o u n t 1 0 0 0 0 ) 的强大描述能力,还可以引表示如果项目总额大于1 0 0 0 0 的话就由部门 入与业务相关的数据作为 主管处理,否则由业务员处理 权限削断的一部分 式子( 2 5 ) 中的s o u r c e 、t a r g e t 分别表示该业务操作的前驱状态节点和后继状 态节点。h a n d l e r 是指与该业务操作相对应的一段外部应用程序( 也称业务逻辑 程序) 的地址,它可以标准的接口进行调用,执行修改应用数据库数据等操作, 外部应用程序与业务相关,由用户自定义。m s g 用于定义需要发送的消息,如果 不需要发送消息则设为n u l l ,否则按指定的格式发送一个消息体,消息体是一个6 元组,按如下格式定义: m s g = ( m s g l d ,t p i d ,t v e r s i o n ,t s t a t e ,s n y f l a g ,m s g d a m ) ( 2 7 ) 1 4 基于扩展s p d m 模型的动态流程表示方法与实现机制的研究第2 章基础知识及研究现状 其中m s g l d 是消息的标识,在整个业务系统中的都要唯一;t p i d 是指接收 该消息的目标流程i d ;t v e r s i o n 是目标流程的版本号,因为流程定义有可能被 修改,需要通过版本号来区分修改前后的同一个流程;t s t a t e 是目标流程中接收 消息的状态名,因为表单实例只会停留在状态

温馨提示

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

评论

0/150

提交评论