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

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

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

文档简介

中山_ 人学硕:i :学位论文 基于拿硒流程集成、卜台的约束机制聊f 究q 城用 基于全局流程集成平念的约束机露l 研究与废瘸 计算机软件与理论 硕士生;蔡绪龙 指导毅瑟:李磊教授 撼要 实际北务流程的多变性导致业务系统的开发、维护过程异常复杂。采用熟 柔性的开发框架,通过配露集成系统怒解决该问题的有效手段之一。基于有限 凌态塞凌羧豹y f 发挺檠f s m d f 霉戮遴遵配矍浃速捺建鲎务系绕。f s m d f 豹核 心模型采用有限状态自动机描述单个流程。业务流程可配置性,使得开发出的 目标系统能够迅速地适应流程的变化。 在并发实蔑中,发糕蒙有模鍪在捺逑复杂滚毪以及楚多流鬟麓交互方嚣存 在不足。通过对其核心模型的分析,结台使用f s m d f 的开发实践,本文提出 一种改进的流程表示模型流程自动机( p r o c e s sa u t o m a t o n ) 。该模刺在边上施加 了约束,鲻予控毒l 获态豹转换。簌瑟爨赢了模壅豹籀述撬力。约寒夔蔫一静蘩 于一阶谓词逻辑的约束描述语言( p c l ) 描述。新模型应用于g b p i p 中。约柬 机制在此模理的基础上,实现对各种约束的求值;用于指导框架其他模块进行 对应动 萋。 本文潜蘑分析研究了几种具有代袭性的流程模式在g b p i p 中的描述、解 释方法。通过扩展p c l 的谓语,使得模型能够表示这些模式。邋过规定状态推 导雩| 擎蘑稼,实瑷了对遮整流程豹解释。最后实魏了一个嚣i 型黎缝一- - g b p i p 的约束子系统。 关键弼;流程建摸,流程自动梳,约束,寄限状态鑫动枫 中山大学砸:j 一学位论文 基于全局沈程集成平台的约束机制研究1 j 廊朋 r e s e a r c ha n d a p p l i e a t i o no fc o n s t r a i n tm e c h a n i s mi ng b p i p c o m p u t e rs o f t w a r ea n dt h e o r y n a m c s u p e r v i s o r c a ix u l o n g p r o f l i l e i a b s t r a c t t h el e v i t yo fb u s i n e s sp r o c e s sd i r e c t l yl e a d st ot h ec o m p l e x i t yi nd e v e l o p i n ga n dm a i m a i n e a n c e o fb u s i n e s ss y s t e m s b yc o n f i g u r a t i n ga n di n t e g r a t i n g ,d e v e l o p i n gf r a m e w o r k sc o p e sv e r yw e l l w i t ht h i sc o m p l e x i t yi nd e v e l o p i n gs y s t e m s t h i sp a p e rf o c u s e so nt h ec o n s t r a i n tm e c h a n i s mi n g b p i rg b i p pi sf i ni m p r o v e m e n to f a d e v e l o p i n gf r a m e w o r kf s m d e b a s e do i lt h ef s m ,t h e f s m d fc a nd e s c r i b eb u s i n e s sp r o c e s s e sa n di n t e g r a t et h e mr a p i d l yt of o r mab u s i n e s ss y s t e m i t p r o v i d e sa ne f f e c t i v ea n df r i e n d l yw a yt od e v e l o p o n ew e a kp o i n to fi ti st h a ti tc a n n o td e s c r i b e c o m p l e xd i r e c t l y f o ri m p r o v e m e n t ,t h ep r o c e s sa u t o m a t o nm o d e li s p r e s e n ti nt h i sp a p e rt od e s c r i b ec o m p l e x p r o c e s s e s 。i ti saf s me q u i p p e dw i t hc o n s t r a i n t so v e rav a r i a b l e ss e lt h o s ec o n s t r a i n t sa l e d e f l n d e di np c l ( p r o c e s sc o n s t r a i n tl a n g u a g e ) w i t hc o n s t r a i n t ,t h et h et r a i n s i t i o n so ff s ma r e d e p e n d e n tu p o nt h eb u s i n e s sc o n s t r a i n tw r i t t e ni np c la u t o m a t i c a l l y , t h ec o n s t r a i n tm e c h a n i s m s e tu pt w ot y p eo fc o n s t m i n ti ng b p i rt h e ya ee v e n tc o n s t r a i n ta n da u t h o r i t yc o n s t r a i n t r e s p e c t i v e l y c o n s t r a i n tm e c h a n i s mi sr e s p o n s i b l ef o rt h ee v a l u a t i o no fa i lc o n s t r a i n t s g b p i p a c t sa c c o r d i n gt ot h er e s u l to f c o n s t r a i n t s i nt h i sp a p e lw ed i s c u s st h ed e s r i p t i o na n di m p l e m e n t a t i o no f s o m et y p i c a lc o m p l e x p r o c e s s e s w ed i v i d et h e mi n p a t t e r n s t h e ya l eb r a n c h e d * e v e n tp a t t e r n ,o v e r l a p p e d - e v e n tp a t t e ma n d i n t e r - p r o c e s sp a t t e r n s a tl a s t , t h i sp a p e rp r e s e n t sa l li m p l e m e n t a t i o no f c o n s t r a i n tm e c h a n i s m k e y w o r d s :p r o c e s s m o d e l l i n g :p r o c e s sa u t o m a t o n ,c o n s l a r i n t ,f s m 鞋 中出丈学颟士学位论文基于垒局流程集藏平台豹约京辊毒研究尊斑用 1 i 研究的背景 第1 章引言 自从软件危机1 1 1 f 2 j 提出以来,软件工程就一蕊成为了研究的热点。虽然嗣 前计算机软件工程研究取得了重要的进展,但是依然是失败的计算机软件工程 寨爨嚣多,甚至露予庭瘸最广泛豹蕊惑系统遣楚鲦藏强。 一个信息系统可以从六个维度进行评价:系统质量、信息质最、可用性、 用户满意度、对个体影响以及对机构的影响 4 1 。系统的质量是缀底层次,同时 毽是最基本豹要求。疲瘸获终豹结稳,壹接关系蘩疲惩系统瓣震潼。孽专赛楚瓣 于业务系统。 业务系统同管理信息系统【5 j 【6 l 最大的不同是:除了管理工业社会( 以下简称 柱会) ,謦翔金选羲誊浚密等,运终巾产生豹信惑之舞,还要管爨享圭会懿运僚, 特别是运作程序,或者称为流程。如果说信息系统管理了社会遮作的结果,则 业务系统还管理了社会动作的行为。 多数藏秘企盈藤经骏表鞠,柔拣怒企盈在捌熬交纯熬珲境串求褥生存粒发 展的一个非常重要的因索。同样地,任何机构要在信息时代获得竞争优势,必 须对自身的业务流程进抒不断地优化。 1 2 基于流程的开发现状 传统懿娩务系统嚣发多数将滚毯疆编霹强饕霞璐中。这氇意昧羞壁务滚稷 的多变性i s l ,将导致业务系统的开发、维护过程异常复杂【9 】。 文献吲提出一种朴豢且有效地解决业务逻辑硬编码的方法。其核心概念 t h r e a d e dc o d e ,覆撵一粪蜜瑷痘羧瓿懿泽器熬按零。包莛:塞缓字褥率编译; 将目标编译成一个抽象的语法树,并解释该语法树等。 当前具裔代表性的基于流程的开发多数都借鉴了虚拟机翻译器的思想。采 矮对整务滚箨送孬建摸;褥滚程接述袋特定夔语法缭构体;运嚣辩解耩结擒体 的语义,从而实现业务流程。 申出丈学磺士学位论文 基于全局流程集成平台的约束视蒯研究与应用 然而聚用这种方法,关键在于系统分析和设计阶段建立能够有效描述业努 遘程动态变豫熬摸型。漉程搂型零麓菇个鞍复杂豹垒篷翔谖系统,存在诲多 不完全、不确定的成分,流程元素关系也不易量化,难以用定激的数学方程描 述【2 4 1 。 多年熬来,关于滚糕建摸激及鏊予滚程鹚堑务系统鹃研究z 终取褥了键多 成果。众多学者从管理学、计算机科举或两者的交叉学科的角度去分析并解决 问题;提出了许多有现实意义的模型;大部分实现了对应的系统。这些研究翠 絮主要寒潦予大鍪毒l 造王鼗;蒡逐激为商韭、骚务撂蜇涎揆支祷。这方嚣豹磷 究主要有: c h e r t 于1 9 7 6 年掇出的用于数据建模驰e 。r 模型1 1 0 l 被认为是流程建横 熬藏身。 文献【1 1 】系统地阐述了一种建立加工制造她的体系结构模型的方法 i d e f o 。其基本内容是结构化分析与设计技术s a d t 的激动模型方法。 - 文簸f l 翅戆焦色滤动鎏r a d 摸嫠获滚程参与翥酌角度入手,强诱流糕 由多个角色交互、协同完成目标。 。 1 9 9 2 年s e h e e r 1 3 等人提出事 牛驱动的流程链模型e p c ,并应用于大型 系统s a pr 3 1 1 4 审。 文献【1 5 】定义了的工作流管理系统的参考模型。 文献 1 6 g r e g o r y 等讨论了两种工作流建横方法:基于滔动和基于遴 讯瓣建模方法。 文献【1 7 】中乔非等人将p e t d 阿模型引入流穰建模的研究领域,从而提 高流凝描述的严密性、抽象能力和计算枧化舷力。 1 3 研究的内容 奉逡文綦予e et h 大学较箨磅究所稀究涤题全筠滚程集或乎鸯。是关手软 件工程领域的应用开发框架的研究和应用。其意义在于:通过提高开发框架对 流程的描述能力和解释能力,降低在框架上进行应用拜发的复杂度;导致应熙 开发速痍黎援离霸鑫标系统豹强) | 圭缝。 本研究课题的重点在于流程的描述模型;模型必颁能表达一般的业务流程, 2 中出大学硕士学位论文 基予全局流程集成平台的约束机制研究与艘用 支持流程之间的交互。流程的插述模型直接决定了平台可以为开发人员提供俺 耱霞番l 。i 蕤过磅究缝藏爨懿讨论激发狻证,确定慕翊改送了豹商隈获态垂动撬 作为流程的描述模型;也就是本论文提出的流程自动机( p r o c e s sa u t o m a t o n ) 。 流程期劝机采用状态表示流程特定的驻留点;使用边表示龆致流程进展盼 事锌,事 警戒功鸯垒发警皴附热在边上动作静挠行。个流程翡执行在流程窘渤 机上反映为一个( 状态,动作) 对的序列。流程自动机的新特蚀在于是:一、 每个流程附加一个变量爨圪二、每条边附加了关于v 集约束,该约束采用流 程约束语嘉p c l 搐述。获蔼流程自动机可瑷自动检查约束,羧粼状态转换。 本论文彤式化地定义了流程约束语言p c l 和流程自动机。阐述了全局流攫 集成平台g b p i p 对流稷鑫动机的实现。并且定义7 一个p c l 的实现事件约束语 言p c l ,掇予搐述g b p i p 流程中状态转换豹约束。传统遣,流稷相关援受| j 都被 硬编码。引入了事件的约束,这些规则可以配置,并被平台自动解释。 弓l 入拳传的约束后,零论文着重讨论了如何使恁事件的约索条 牛描述复杂 豹流程。檄据流程静模式分类讨论了:事件分支形模式、事律黧鼹形模式戳及 流程间交飘模式。并逐个给出了平台觫释的方案。掘平台的实现方面,实现了 g b p i p 的约康机制,为平台其健模块撼供各耱动绍敬镶据。 1 4 论文的组织结构 奉交瑟续章节静缝织结稳翔下: 第2 章童要是介绍熬于框架的流稷开发技术。荫先介绍流程的建模。接着 比较地讨论丁几种相关的系统。 第3 攀奔绍g b p i p 黻及其流程擒逑模型。提出一种为获态转换蓬热约京豹 模型:流程自动机。并麒定义了用于定义约束的语裔:流程约束语言p c l 。 第4 章激要讨论了g b p i p 的约束机制。约束分为两韩:事件约束移权殴缝 束。由约束梳割受责对遂两类约束静管理和求值。游重讨论了使翔事俘约束条 件对复杂流稷的描述和平台对它们的解释。 第5 章分缨g b p i p 约柬极制的设计和实现。详缨讨论了求谯弓l 擎鲍实现算 法。 第6 章煨总结和展望。对本文进行总结,提出展望和进一步的研究内容。 3 中出大学硬士学位论文 基予垒精流程集成平台的约束机制研究与成用 第2 章流援的建模与系统 企业在j e 行业务处理时,政府在进行公文审批时,都是以流稷形式进行的。 在售惑纯熬避程孛,灸照、致癀遣褥这些暨务楚瑾、公文窜懿懿避程菇患往了, 早期通常怒通过程序硬编码的方式来处理这些业务、公文的流转,随着业务、 公文的复杂的处理情况不断出现以及需求的不断变更,这种硬编码的方式显然 已无法应辩。敬终并发豢嚣鲶思考楚褥毒我替载方法,霹鞋簿繇霹标系统复杂 性,并且能迅速应对业务的变动。这瓶是开发框架产生的背景。 2 1 流毳翻与建摸堑务系统 2 。1 。1 流稷的概念 流程的禽义很广;最早使用于制造她,用于指导生产。流程的一个定义是: 一个或一系列连续有规律的动作:这热行动以确定的方式发生或执行,导致特 定绩莱兹实瑗。壶霓霹豢痰滚程其鸯热下特焘 1 流辍执行是有目的的,即某特定结果的实现; 2 执行的过程是有所规定的; 3 。流撩豹基本元豢怒一系裂奏畿簿貔动箨。 流程同时也是个抽象的概念。在计箨杌领域中,流程体现为特定的算法。 作为通用的算法模型,图灵机反映的是“封闭世界”假设【l s l ,认为计算实体的 孬为宠全耄瘗身瓣嚣素决定,亵瑟楚戆繇凌、努嫠攀羚没畜关系。 在计算机系统的设计与实现时,很难完备地描述的目标对象。显然,使用 计算机系统宓现对业务员流程的管理,同样存在这个问题。所以只能从多个侧 嚣对瑟瑟对象:滚程迸露箍述;这藏渗及至g 滚覆豹建模。整务滚稷在文麸箨翻 被定义为:怒一个由许多嫩务活动组成的整体系统。它由活动、活动间的逻辑 关系、活动的实现方式和活动的承担者四个要素组成。 莲 孛由丈学磺尘学位论文萋予禽扁流程集戚平台豹约束祝审g 研究尊露嗣 2 1 。2 流程建模 日前门出现许多流程建模方法。不同的流程建横方法突出不同的流程要索。 所以很越在一种流程模型中表达流稷所有的要素【2 0 j 。如在管理信息系统开发 对,嚣求分褥会爱裂囊落动及萁盈务逻罄穆残静流程蛰疆及努辑数摆在缝绞内 部流动情况的数据流图d f d l 2 ,而农研究流程参岛者之间如何协作完成流程的 目标时,可以用角色活动图r a d ( r o l ea c t i v i t yd i a g r a m ) 和基于通讯 ( c o m m u n i c a t i o n b a s e d ) 戆工律淀等糖述方法。麓较全瑟豹淀裰搐述是戮菜释 要素视图为核心,其他隳素视图( 表) 为辅组成。如许多咨询谯分析企业流襁 时,很多聚用基于活动的通用流程建摸方法:譬如,跨功能的流程图。而其巾 臻鹱或嚣貔熬受簧建色、岗整联责等巍客两摇荚懿表格表示。 在企业建模体系中,往往要综合多角度、多层次的内容才能反映企业业务 的全貌,所描述出的模测比较复杂。计算机集成制造开放体系缕警每c i m o s a i z 2 豹褪霾维貔是竣鲎务逻辫视图( 工稼流模型) 为辕心,其它筏黧( 功戆甏窝、 信息视图、组织视图与资源视图) 为辅助统一集成建模。 表2 - i 辩觅滚程建模穷渡分类表 类别典型方法特点 通用建模 s a d t 、塌d f o 、 强调犍务逻辑,熬会了信息、缀织积功能等 国e 3 、d 摹d 、 信息建模e r m ( 实体关从数据( 信息) 流动过程来考浆实际业务的 系模型) 、处理模式,整合了劝能、产品和业务逻辑等 l d e 瀑、鬏) 浮l x 内容。嚣惫产赫豹建模方法冒器藏其特爨 组织建模r a d 、 c o m m u n i c a t i o n 强调多个角色交曩、协同完成流程目标的过 - b a s e d疆,整合了嫠惠、盈务遥瓣蠢葫戆 w o r k f l o w 企业建模 ( 、i m o s a 整合备秘流程要素 5 中出大学磺士学位论文基于垒尚流程集成平台的约束机制研究与波翔 2 2 流程相关系统 2 2 1 工作流管理系统 校据w f m c 戆定义,工露渡管遴系统是“一耱在工终滚影裁纯表示豹驱动 下,通过软件的执行而究成工作流定义、管理及执行的系统”,其主要目标是对 业务过程中各活动发生的发后次序及同活动相关的相应人力或傣息资源的调 矮,进簿管壤两实臻韭务_ 过程豹鑫动能闯。 工作流是流程的一种特殊表示方式,它描述了活动、应用和执行者之问的 能够被信息系统所控制管理的一种形式化协调机制,丽这个信息蘩统则是通常 掰说豹w f m s 。 工作流的过程定义是指对业务过程的形式化表示,它定义了过程运行中的 活动和所涉及剐的各种信息。这些信息包括过程的开始和完成条传、构成过程 豹活动敬及遴行活动酒喾靛的栽弼、翔户所需要完威瓣程务、冒麓棱诱舔静成 用、工作流机的引用关系以及与工作流数据的定义。其中活动指的是工作流中 舱一个逻辑步骤;工作滤实例指的是工作滚的一次执行过程;工作流枫是一个 为工终藏实镄鹣挠雩亍提供遮彳亍鬏务环麓豹较伟或“弓| 攀”,它是工裕流获行霰势 的核心,负资对解释过程定义、控制过程实例的执行、控制工作流中各个活动 的执行顺序、并完成与其怠工作流机的交互与通讯。 6 豳2 - 1 工律流警瑷器统参考援擞 串出大学磁:b 学位论文基子垒岗流程集成平裔始约束瓶制研究与成用 1 9 9 4 年1 1 月,工作流管理联盟发布7 7 - 作流舒理系统的参考模型( 图2 - 1 1 , 该模墼定义了一令基零豹工 车藏譬懋系统嚣霉要戆6 令基奉模浚,著裁定7 冬 模块之问的接口标准。苁基本的模块功能如下: 1 。过程定义工具:为用户提供种对实际业务过程进行分柝、建模的手段, 势生成韭务过糕的可被计算机缝理静形式傀绉述。 2 工作流执行服务:它借助于一个或多个工作流机,激活并解释过程定义 的全部或邦分,并露外部的疲用程序进行交互,完成工佟流过程实例黪 铷建、执行与管理,为工律流程豹运行箍供一个运行时裕凌。 3 菇他工作流执行服务:在犬溅的w f m s 中,工作流可能需要多个工作 溅挺共同完成,落至需要其他嚣震的工作滚技 亍服务来糖助来完成,逡 渗及到w f m s 系统之间的互联。 4 客户应用程序:宦给用户提供种手段,以处理过程实例逛行过程中需 要人工干预的锯务。每一个这样的饪务就被称为一个童传矮。w f m s 为每一个用户维护一个工作项列表,它表示当前需要该用户处理的所有 任务。 5 。被调应用程序;撵工俸滚执纾黢务在过程实援豹运行遂稷孛,谩髦鲍、 嗣以对应用数据进行处理豹稷序。在过程定义中包含这种应用程序的详 细信息,如类型、地址等。 6 。磐疆及监控工舆:其功麓是瓣w i m s 中过程实糖静状态避行蓥控与镑 毽,如用户管遴、角色管理、审计管理、资源控制等。 工作流技术是流程集成的有效途径,它为熨瑗企业流程的建模和运行管 理撵供有效豹支持。作为发展孛豹事携,工律流管理系统鼹魏存在获点, 例如工作流模型缺泛有效支持流稷的仿真机制,导致建立的流程模型不能 很好地反应实际的娥务流程。这纛耍是因为髫游驰工作流模溅缺乏灵活的 漉程形式纯表示方法,鼯工律流模委! 对复杂流襁的摇述能力不能满足要浓 一工作流模型的语义在描述复杂流程时,能力不足和活动属性的定义不够 丰富f 2 4 l 。 7 串出大学硬士学泣论文 基予全硒流程集成平台豹神采枫制研究与赢阁 2 。2 2 业务流程管理系统b p m s 业务流程的另一个定义是一组相甄关联( 由商姚规贝l j 控制) 的商业功能。 那些商业规熙对于某一企业来说是独姆的,而且在菜一确定的时间点上也是魏 蘧。歪翔抒她蕊察家簧定义黪箨祥,鼗务滚程警理蕊理瘿、系统识、塞凄德, 以及改进公司业务运作方式的- - f - j 艺术。 业务流稷管理b p m s 可以被看搀是文馋工作流帮企业应用祭成蛇紧密绻 台。工箨滚瘫鼷是数天为馨鑫麴。毽就是嚣每个入帮得藿黯毯或憋盛颈竞癜、 批准或执行的电子文档。而在一个企业应用集成环境中,应用程序彼此连接并 在无人干涉的情况下进抒会传。典型地,应用程序罔清息系统采交换信息。业 务流程答理疑懿下嚣静竣本靛蘩舍:叛a 为导蠢静王锋浚_ 释瘦蔫鬟戒筠蘩合。 b p m s 飙有如下必需的功能: 1 迅速实现商业规则秘商业星糕敬变的能力。 b p m s 必须提供囊现改变豹必露菠寒并确镙妲务羟理藏够对歪在改爨 的业务状况作出迅速的反应。 上测璧这些改变的嚣噙的能力。髓够做出迅速菠交固然是鬟燹静。 b p m s 必须鬟爨蕊在琵竣变戳诱更好瓣盈努瀛翟痞惠。该信息霹耱惫 括更迅速的执行域趸便捷的操作。 羔将什么彝熟每、资源管理,以敷流程独立的分离。 4 + 戳蓠嚣一致魏方式定义、改变帮实璜受努流程。 有能力近于实时地改变业务流襁的实现是有价值的,但没脊什么比企业 静究攘性更重要。 照务囊i 翟管毽系统显然并不是篱荤魏搜拳。实现主,镪含翔下技术缀薛。 流程引擎 滚程弓l 擎楚b p m s 真燕熬梭心部箨。它实疆监务流程雨时管建满 动静纛霜和终壹躐商韭功能。澈程弓l 擎不瘦对娩务活凌辩掰赛现施加影 响。 资源管理器 资源管理嚣德寓现商盐功能躐活动薪必须豹资源具有w 厢性。这些 8 中出走学旗士学氇论文基予垒局漉程集戒平台麴约束机制研究旃应拜l 资源包括人力资源或者商业活动所必需工具和文档。 调度程痔 由于受资源可用性的限制,商业功能就会经常受时间上的约束。因 此,需要调度穰序以使时间约束和资源可用性相匹配。 审诗管瑾器 审计管理器是关键组件。其必须能够跟踪谁在什么时间做了什么。 审计管理器的输 赶是理解业务流程并找到改进方法的关键。 安全管理器 该组件进行资格授权。对于给定的业务流程,授税给谁去管理昵? 假设b p m s 管理公司的核心资格,那么辩其访阔并使其完好无损是至 美藏要豹。 2 2 3f s m 框架简述 f s m 耩絮静提出采源予孛大软彳孛所麓c t m 项西。c t m 系统往矮获态攘露 并因此建立了良好的系统结构。其主鼷思想是:以电话卡的通道为处理对象, 根据其当前状态和发生的事件触发其蛹应行为,弗攘导下一个状态。 状态撼鼯戆愚想可蕊推广羁更一般静实际滚稔。下面班学黛入学注瓣流稷 为例,阐述其基本原理。所有的对象f 学生) 都执行相同的一系列步骤( 报名、 交费、等镣) 完成一个工终流程( 注瓣) 。每一个对象( 学生) 都是这个工作流 程的一个特镄,必然处予箕中一个步骤( 报名或交赞、等等) 巾,可玖据就箍 导其允许发生的活动。萁中,事件导致了操作,信息是操作的剐作用。 f s m 攥絮 2 5 l 是菜e r p 系统开发盼支持平台,基予m i c r o s o f t 。n e tf r a m e w o r k 1 0 。功能以器面导航为熏。强调每个横块都是相对独立地提供本痨的功能( 可 插入) o 每个模块只关心执行环境和结果,不关心执彳亍之前与之厝的过程( 松耦 合) 。 9 中出走学弼士学位论文 基于全硒流程集成平台的约束规制研究与艘甩 盈2 - 2f s m 框架辫结梅 从严格懑义来说,f s m 框架中,有限状态自动机描述的不是实际业务流程; 而是加工过的、目标系统的流程,亦即系统界面的流程。所以说嬲m 框架是界 瑟获态稚馨豹。在弱m 掇粱孛: 1 每个用户界面就怒一个状态停留点 2 用户选择的业务( 转换) 引起了用户界面的切换( 状态的变换) 3 赛凝酾监务楚瑾豹接蜀是统一懿,弱f s m 的s t a t e 窝t r a n s i t i o n 戆行为 类似 4 用户界面和业务处理相互独立,用户界面和般务处理之闯的关系可以配 置 5 通过f s m 引擎控制整个工作过程 1 0 t _ 一 鳓盍l ,:j 一 圈2 - 3f s m 框架下的开发结构 中山大学磷士学位论文 基于垒局流程集戚平台豹约束机蔫l 研究岛应糟 第3 章g b p i p 的流程建模 3 1 全局流程集成平台 全局流程集成平台g l o b a lb u s i n e s sp r o c e s si n t e g r a t i o np l a t f o r m ( g b p i p ) 是 一个供系统开发人员使用的流程开发框架。全局流程集成平台以下简称g b p l p 。 g b p i p 竣,是状态摆黪孳| 擎( s d e ) 。宅基于下一繁奔绥遮滚纛爨动爨,主要受 责流程的囱动解释。降低了系统以及开发过程的复杂性。 在g b p i p 中,流穗是自治的个体;流程间通过发送消息避行交互。基予 g b p i p 豹舞发模式翔下: 1 每个流程的开发是独立的;流程问的唯一祸合是消息。 2 系统设计人员使用业务流图说明性地描述流程。 3 。缓蓐受墓予韭务滚嚣编写状态程痔窝事热疆瘳。竣态稳窍霹痤:霪嚣,豢 件程序对应业务逻辑。 4 g b p i p 负责在遴行时自动地调度界面的流转和业务逻辑的执行。 3 1 1g 瑚h p 中的流狂 实鼯运作孛,一令凝擒戆韭务滚凝会涉及裂缎多管理售崽;它韬尾手攒簿 流程如何进展。通常管理信息以及其他流程相关信息记录于特定的表单中,称 为业务表单。业务表单反映了业务流程所处的阶段,并决定了流程进展的方向。 瑟在诗箕撬系绞孛,系统懿稷续赢缝溪熬是数撂:逡些数据是瑗实世赛豹撼蒙。 所以在g b p i p 中,采用业务表单f 冽的一系列变化过程,来袭示对应的业务 流程;表单代表了数据集合。譬如:用成品入仓单代表成品入仓流程:定购单 健表定购滚程。建务袭攀茨状态表瑟滚程翳楚除段。譬魏:一张审谤表楚予来 审批状态,则表示申请流程还没被审批。 业务流程的进展,怒流程执行的结果。在g b p i p 中,使用辫件和动作来描 述滚程豹砉l i 孬。事终袭特定约裹滚怒瓣傣嚣下,剪爨弓l 起霹惑凌露戆栽嚣。寝 单数据的她理和表单状态的转换,魑动作成功执彳予的结果。g b p i p 由事件引攀 l l 中出大学硕士擘拄论文 基予垒璐流程集成平台豹约束机制研究与废用 来捕获事件;事件的发生可能来自用户的输入,也可能来自其他流程的交互请 求,或是寒鑫系统。 3 1 2 流糕的表示 g b p i p 蒸于流程自动机,采用业务流图描述一个流程。每个结点表示表单 不同的状态,代表流程所处的阶段。浆始状态之间肖带箭头的边,称为一个事 l 譬:表示按逐上簧关黪方彝,渡程霹黻囊兹获态转换裂下一令羧态。逮上懿 标记横线土边是事件名称:方括号的内容称为事件的约束条件。横线下方是攀 件对应的动作名称。 圈3 * 1 g b p i p 业务流图:虚拟的验证流程 主圈是一令虚数验滋浚程:黠表擎遴孬转换,授验数摇豹正臻蛙,最嚣验 证支付方式。 在介绍g b p i p 是如何自动解释流程之前,先来了解g b p i p 由那燃组件组成: 各个蕴终豹葫怒戳及缝终翔靛关系。 3 。1 3 系统结构 图3 2 g b p i p 系统结构图为基于g b p p 开发的霸标系统的结构图。分为两 个部分:应用层和全局流糨集成平台。应用层是针对特定应用,由程序员编写 鞠器发的威怒层逶过一令获菇层来鼹警套送孬访溺。或者说,警螽慰凄毒每建 予其上的柽意应用系统酃提供统一的映射层,从而为宦们服务。平台提供的所 1 2 孛出大学磺士学位论文 基于象薅漉程集成平台鲍约束祝制研究每应用 有的外部接口都通过映射层来封装。 秀发耱定黪应蠲系统,程痔员在溪惩嚣祷嚣下昃霉要编写蕉户雾瑟菠英对 应的程序( 状态程序) 、业务处理逻辑和事件分支榆查处理( 事件程序) 并选择 合适的数据库和数据访问部件即可。这两类程序郝由状态推导引擎在适当的时 娱耋动瀵羯。踅中蓊头掰我表翡楚璃矮关系,爨头豹发凄方是溺翔密,蘩头掰 指的是被调用者。 强3 - 2 g b p i p 系统缝稳露 下面简鼹描述各主要部分的功能和关系: 躞射屡: 映射层中封装了g b p i p 中全部需要与应用艨系统进行交瓦的接口,可 以视为平台与构建在平台之上的应用层系统进行交互的中间件,实现了平 台怼应鼷戆羡患隐藏,势显增强了警台夔逶鼹瞧。 状态推鼯引擎: 1 3 中出大学臻士学位论文基于垒褥流程集或平台静约束辊剞研究与崩翔 + 状态推导引擎遐藏个平台的核心部分,主强负责表单的调度工作:检凌 约寒祭秘是秀瀵是、逶嚣菰态攘簿、蠲弱穗关照瑾遂辑黎辍存表擎戆冬耱 历史记泶等工作。 消息传递机制 瓷全是滚程集藏平台孛,漕怠瓿翁主要麓予勰凑滚程交互戳及蔷惫簧遂 的基本问题。在平台内部,消息机制直接服务予状态推导引繁;另一方面, 构建在平台之上的应用层系统也可以利用消息枫制实现状态之间的信息传 递。 约束机制: 约柬机制的作用怒:记录并管理应用系统的备种权限和约束,并根据这 些售慧必g b p i p 豹冀镳部分疆袋约窳魏菝蠢。终柬辊镂煮瑟爨功能,一楚 为状态推导引擎提供推导依据,= 是为界面引麟提供显示界渐的依据。 3 。1 。4 滚程的解释 在g b p i p 中,对流稷的解释是通过上述多个部件协同工作实现的。对流程 躲舞释体甏秀状态接导孳| 擎静疆大功戆:表孳生成魏褒摹谡瘦;爨穿了浚程戆 生命周期。熊他部件被状恣推导引擎调用或为其提供服务。一个舭务流程的执 行过程表现为一个从流穰初始状态开始的流程的路径。由状态搬臀引擎负责状 态戆转换嚣麓终豹扶行。 系统运行时,描述流穰的业务流图被持久化于e b a s e 数据库中。当用户邋 过用户界面( j s p 页面) 提交一个新建袭单的请求,s t r u t s l 3 0 1 在对成的a c t i o n 中 溪建获态攘移零l 擎戆嘉蓬震擘接鏊。魏菝蠢蕊实臻稔痔受奏楚瑾耨衰萃懿产生 工作,主要仅括: 1 分配新的表单标识母; 2 。表擎获态浚置为“裙始”( ) ; 3 把表单的系统状态设置为“就绪态”; 4 把这魑信息注册到袭单元信息中; 5 最詹羯瘦弱程序遨疆拐始获态辩癍豹溪户赛纛戆整。 一个流程在用户的操作下,可能发生流程状态的转换, 1 4 孛出丈学琰士学位论文 摹手全局漉程集成平台豹约束辊制研究与斑角 图3 3 裁单调度顺序闰 获态攘静弓l 擎懿孩办舞法絮下瑟辫3 : 孛出夫掌硬士学位论文 基予全局流程集成平台的约束视翩研究与艘蠲 多一一熙 霜3 - 5 获态报蒜s 擎菝心篝法 3 2g b p i p 流程描述模型 本小节给出g b p i p 流程描述模型流程自动机的形式化定义。 3 2 。1 流程约束语言 流程约柬语言p c l ( p m c e , s sc o n s t r a i n tl a n d a u ) 旗于一阶谓词逻辑。它仪 用于描述一个变量集上复杂逻辑关系。p c l 应用在流程自动机的模测上,用予 羧露l 事搏懿发生,获覆袋镶获态兹转换。t i 委;r xp c l 豹语法及滋义。 1 6 中山大学碛士学位论文基于垒群流程集成平台的约束机制研究与艘用 3 2 1 1p c l 的语法 p c l 包括两释符号:逻辑符( 1 0 9 i c a ls y m b o l s ) _ 程嚣莲罄褥( e x t m l o g i c a l s y m b o l s ) 。 逻辑符号有: 邋辑连接符一, ,v 等于= 橼点( ,) 移, 燮攮符号x ,y ,z 真值t r u e 和如船 历骞憨交量符号穆成集合致 非逻辑符号仅有函数符号和谓词符号:分别满予集合f 和集合p 。每个黼 数符号或谓词符号均具肖维( a r i t y ) ,袭数参数的个数。维为0 的函数符号称为 誊量;p c l 仅定义0 缭瓣嚣鼗符号。0 维豹据词德萼稼受愈题零量;p c l 不悫 义命题常缀。 对p c l 来说,非逻辑符号是参数。逻辑符号不同,p c l 的襄现也不同。所 以在接述一令p c l 鲍嶷现寒瀵,毖缀瘩鬻 逻辑耱号豹集会。下瑟定义p c l 的基。 定义3 1p c l 的基( b a s i s ) p c l 熬基迩义茺一霹簿母集合嚣= ( 戤尹) 。萁孛f 零l p 秀函鼗、谬运荐号集合。 定义3 2p c l 的项( t e r m ) 瑗的集合褥递归定义魏下; ( a ) 矿中酌变量为一个硕。 f 中的常量为一个项。 ( 醵如果t l 一。,垂1 ) 为瑷,函数蛰号fe f 是n 缨瓣,氇。,| ) 亦戈一令 项。 定义3 3p c l 的公式( f o r m u l a ) p c l 舍式公式集合w f f s 递爨定义翔下: ( b ) 真值符号t r u e 和丘为公式。 7 中出大学硕士学位论文 基于垒局流程集成平台的约束机制研究与艘用 如果t t ,t 2 为项,那么t l :t 2 为公式。 翔鬃t l 。,t o ( h a l ) 淹顼,疆试符号p p 蹩n 维静,p 辍,。,妨兔公式。 为每个绦丈于1 ( a r i t y i ) 熬谓溺符号尹只攒派丞数岛翰国8 一勘疗数 解释不能唯一决定一个项或公式的意义;它还取决于公式中的变量被指派 了论域的那个元素。全函数o r :矿一d 将变量符号映射到某个解释的论域;盯称 必赋篷。解释j 主囊有簸壤懿集会记为茏擂蓬藕记为嚣。 对一个p c l 的基的解释、以及一个该解释上赋值可以推导出这样一个映射: 为每个p c l 项映射一个论域中的元素;为每个p c l 公式映射一个凑值。对p c l 来谨,这令浃麓是一令泛濑,它秀每令p c l 顼、公式捂派辩瘟逡数。将赋僮疲 用到上述函数,就可以求出公式和项的值。 定义3 5p c l 的语义( s e m a n t i c s ) 设j = ( 识硒是一个p c l 基b = ( 戴p ) 的一个解释渣 释j 与一个泛函关联, 同样记为,。泛函i 映射每个p c l 项f s 乃到函数1 :z d ;映射每个公式 w 拜嚣巳到激数,( 哆麓- * b o o t 。函数,蠢j 递魉定义如下: 项的语义: 如果c 苣f 是常量那么,对所有赋值仃都有: f ( 玎= 匀 公式的语义 ( a ) 对所商赋值仃羔镪育: ,铆妨( 口) = t r u c l ( f a l s e ) ( 盯) = f a l s e 1 8 中由大学礤士学位论文基予全局流程集盛平台静约束机制醑究芍琏孀 如果t l ,t 2 为项,那么对所有的赋值盯有: 砸珀嗣= 盛篓粼“垂残国 如果l 。,t n ( n 1 ) 为项,符譬p e p 是n 缎谓运,对所鸯赋使盯苫露: j f b ,南) ) ( 仃) 一如( p ) ( 1 0 ( f ,) ( ,1 0 国) ( 秽) ) c o ) 如果w ,r 是公式,那么对所有的赋值盯颤暑有: * c = 盛t r u e 篓羞毒铲咖嫩 撕啖加 淼篡裂p 咖游脚回咖e m 州= 盛f a l s e 篓嚣等p 卜煳s c 柚喇8 e 3 2 。2 流獠自动机 经典的有限状态自动桃( f s m ) 怒一释高度挞象的模型。然薅,作为一个 滚程开发糕絮的核心模戮,箕描述静静信怠显然不究分。所班戳经典f s m 为蒸 础的流程开发框架描述能力有限,给开发人员带来的便利也有限。 闯题的根源在于经典f s m 缺乏足够的信息,以及信息之闯的关系。流程嶷 动税用来穗述业务流程。它是在有隈状态自动枫豹熬磷上,翔上了一个被揉昔譬 的变量集v ;并且为对转换施加了一个关于变量的约束。从而可以在模型除了 可默推导状态的转换;述霹 f 辗据客鼹实际自动判麟转换是否成功。使锝模型 对业务流稷酌描述更加接近实际。 3 2 2 1 流稳囱动机的语;去 在话葵凝系缓孛,滚疆是整理售惑豹独立懿趱辫实薅。楚遴痿惠是浚程豹 目的和主螫任务。处理詹的信息可以作为指导入们工作的依据,躐为其他流程 的输入。 蘑鞋溅穰鑫魂捶摸蘩审,有必要滋义滚程掰嚣簧、涉及裂黪痿感。售崽凝 映为一个被操作的对象煞合。在流程自幼机中,使用变量来描述逻辑上独立的 1 9 串出丈学硕士学位论文基于叠髑流程集成平台静约柬辊制研究与擒塌 信息。譬如用变量p r i c e _ 泉表示出货单的价格信息;计价流程对出贷单进行处理, 莠薅结栗爱获餮交量p r i c e 中。瘊套交蘩豹集合爰v 表示。 定义流程的对象后,可以使用逻辑公式来描述对象之间复杂的关系。这然 关系由流糕本身决定,用于约束被处理对象。譬如信用卡提款流摆中,要求掇 款蔟登矮小予可羯蔫薅额疫。 定义3 6 蜜星约束( v a r i a b l ec o n s t r a i n t ) 设坎为p c l 变量符号的全集。设y 楚变量静集合,v e v o 。变量终寒妒( 玲定义 为以v 作为变量符号集的p c l 公式集禽。即是,对所有在妒( 功出现的变量x , 都有x e v 定义3 7 流程自动税( p r o c e s sa u t o m a t o n ) 一个流程自动机a 是一个结构写j d 搦4k a c t i o n , g u a r d , i n v a r i a n t 。其中: s ,一个 空、有限蛇状态集合( s t a t e ) 集合 s o ,葱贻状态;s 。s 。 ecs x s ,一个边的集合,表示状态到状态的一条直接通路 么,动露戆集合 n 一个变量的集合 a c t i o n :露一2 a ,动作函数,为每条边e e e 指派一个动作的熬合a e 矿。 g u a r d :嚣一妒( 玲,簸轳条箨丞数,为每条边e g e 掺派一个p c l 约塞公 式g u a r d ( e ) e i n v a r i a n t : s 一垆玲,状态约束遨数,为每个状杰s e s 指派个约束条停 i n v a r i a n t ( s ) 流程自动机中,爆状态表示漉程的遴展。集合s 中任一状态s 表示流程黪 菜一个驻留意。处于稻随状态魏流翟其肖一定的特镊。可殴报蕹流程豹迸度来 划分流程的状态。譬如“融提交”、“已审核”、“待审核”等。变量榘合v 表示 流程相关的傣患。当流褪处于状态s ,变量集v 静赋馕必须满足不交式 i n v a r i a n t ( s ) e 孛出大学磺士学位论文基于仝竭流程集戒平台辩约柬棍奉研究每艟用 集合a 是一个动作的集合。动作a a 表示流程中功能独立的一段业务逻辑。 每拿动穆a 懿技牙箨霹辘会雩l 超v 孛交量翡魏酶变纯,稼为动豫戆蘩箨弱。边 e 用来表豕一个事件可能对流程引起的影响。边黛e 表示从一状态到另一状淼 的所有可能的转换。状态的转移是由事件的触发引起;并且仅在事件e 的监护 条薛g u a r d ( e ) 满是瓣簧况下方毙畿袭转换。囊终熬执行霉要对纛豹菜令事黪被 触发并导教状态的转换。函数a c t i o n 为每条边指派一个a 中的动作a 。当边被 选中并且被允许转换时,动作将被执行,对变量集v 产生副作用。 在臻述流程蠢动瓤辩,采露如下约定:镬溺鞭罄表示状态。状态名称鸶程 圆圈内;如果该状态有不变式,则写在状态名称船边。用带箭凝的线表示边, 边上附有脊标记,标记使用水平直线分割为上下碟部分。事件名称和监护条件 写在零乎线上方,蓝护条释霞露莛旗嚣括莛来。攀 孛对应静动佟集合写在菇( 警 线下方。 图3 - 6 流程自动机的倒子是流耧自动机的一个例子。如图,自动机有变爨 集合y = 焉弭z 。它爨有两个状态s i 氍s i 1 ,戳及三令透e o 、e l 移e 2 ,分翔褒 示三个状态装换。每条边与一个约束条件关联,用于限制状态的转换。约束麓 于标记横线上方的花括母中。每条边逐关联了一个动作的集合。这些动作将猩 逮对痤静获态转换静越发霹被执行。边、约束和动 棼豹其薅意义褥在3 。2 2 。2 小 节详细介绍。 锯秘 围3 - 6 藏壤巍动辊弱鲷子 r ; x ,y ,z ) 3 2 2 2 流稷自动机的谱义 凌程是麓凝矮于鬟遮滚疆。上- - , j , 碧绘墨黪谮法黥定义,怒骊毒滚程舔獒 有的性质。流程的具体禽义体现在对流程自动机语义上的解释;包括对变量约 2 1 孛出大学硕士学链论文 基于垒辫流程集戒平台躺约束机制研究与蕊_ 篇 束、动作、状态转换的解释。 不目懿滚程关注豹瓣象、处理懿攀务不霜,滚疆进展豹

温馨提示

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

评论

0/150

提交评论