欢迎来到人人文库网! | 帮助中心 人人文库renrendoc.com美如初恋!
人人文库网
首页 人人文库网 > 资源分类 > PDF文档下载

UML 活动图模型正确性诊断方法模型正确性诊断方法.pdf

  • 资源大小:259.75KB        全文页数:3页
  • 资源格式: PDF        下载权限:游客/注册会员/VIP会员    下载费用:5
游客快捷下载 游客一键下载
会员登录下载
下载资源需要5

邮箱/手机号:
您支付成功后,系统会自动为您创建此邮箱/手机号的账号,密码跟您输入的邮箱/手机号一致,以方便您下次登录下载和查看订单。注:支付完成后需要自己下载文件,并不会自动发送文件哦!

支付方式: 微信支付    支付宝   
验证码:   换一换

友情提示
2、本站资源不支持迅雷下载,请使用浏览器直接下载(不支持QQ浏览器)
3、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰   

UML 活动图模型正确性诊断方法模型正确性诊断方法.pdf

UML活动图活动图活动图活动图模型正确性诊断方法模型正确性诊断方法模型正确性诊断方法模型正确性诊断方法周春燕周春燕周春燕周春燕,,,,李绪蓉李绪蓉李绪蓉李绪蓉,,,,周周周周良良良良南京航空航天大学信息科学与技术学院,南京210016摘摘摘摘要要要要UML活动图的正确性决定了业务流程的正确执行,为此,提出一种UML活动图模型的正确性诊断方法。将模型分解后,对子模型进行模型验证,并对验证错误的子模型进行模型诊断,得到诊断结果。在质量管理过程实例中的应用结果表明,该方法能减小模型空间,减少诊断次数,准确锁定错误,有效地对模型的正确性进行诊断。关键词关键词关键词关键词活动图;模型正确性;模型分解;模型验证;模型诊断;CORRECTNESSDIAGNOSISMETHODOFUMLACTIVITYGRAPHMODELZHOUCHUNYAN,LIXURONG,ZHOULIANGCOLLEGEOFINFORMATIONSCIENCEANDTECHNOLOGY,NANJINGUNIVERSITYOFAERONAUTICSANDASTRONAUTICS,NANJING210016,CHINA【【【【ABSTRACT】】】】THECORRECTNESSOFTHEACTIVITYGRAPHDECIDESTHATTHECORRECTNESSOFEXECUTIONOFBUSINESSFLOW,SOTHISPAPERPROPOSESANMETHODFORDIAGNOSISOFCORRECTNESSOFUMLACTIVITYGRAPHMODELITVERIFICATESTHEMODELMODELDIAGNOSISOFSUBMODELSWHICHAREWRONGANDRECEIVINGTHEDIAGNOSISRESULTSTHEAPPLICATIONOFEXAMPLEOFQUALITYMANAGEMENTPROCESS,DEMONSTRATESTHISAPPROACHCANREDUCETHESPACEOFMODEL,DECREASEDIAGNOSISFREQUENCY,LOCKERRORACCURATELY,DIAGNOSETHEMODELCORRECTNESSEFFECTIVELY【【【【KEYWORDS】】】】ACTIVITYGRAPH;MODELCORRECTNESS;MODELDECOMPOSITION;MODELVERIFICATION;MODELDIAGNOSISDOI103969/JISSN10003428201114014计算机工程COMPUTERENGINEERING第37卷第14期VOL37NO142011年7月JULY2011软件技术与数据库软件技术与数据库软件技术与数据库软件技术与数据库文章编号文章编号文章编号文章编号10003428201114004703文献标识码文献标识码文献标识码文献标识码A中图分类号中图分类号中图分类号中图分类号TP3911概述概述概述概述活动图是提供独立于目标系统的高层次流程描述,多数非常复杂并包含了大量的活动和相关的协作约束,它的正确性决定了系统中实际业务过程执行的正确性。因此,在将其运用于目标系统前,必须及时发现并更正错误。活动图类似于工作流图,结合工作流模型的验证和诊断方法,本文提出先验证后诊断的UML活动图模型正确性诊断方法,采用图分解技术来加快诊断速度。同时结合实例进行方法应用,验证其有效性。2基于活动图的模型表示基于活动图的模型表示基于活动图的模型表示基于活动图的模型表示活动图描述了需要进行的活动以及执行这些活动的顺序。活动图有起点、终点、活动、判断、对象、同步条、泳道、控制流等基本元素。鉴于工作流图模型1,活动图模型定义为一个八元组GN,E,T,ST,EN,AC,JI,SP,其中1N是节点,是一个七元组,NTYPE,DOUT,DIN,POSTNODES,PRENODES,INEDGES,OUTEDGES。设N∈N,则NTYPE∈T;DOUT是N的出度;DIN是N的入度;NOUTEDGES{E|E∈E∩EFROMNODEN}NINEDGES{E|EE∩ETONODEN∈}POSTNODES{N′|N′∈N∩E∈E∩EFROMNODEN∩ETONODEN′}RENODES{N′|N′∈N∩E∈E∩EFROMNODEN′∩ETONODEN}NST∪EN∪AC∪JI∪SP2E是有向边,E⊆NN,是一个二元组EFROMNODE,TONODE。其中,FROMNODE∈N;TONODE∈N。3T是节点类型集合,T{START,END,ACTIVITY,ANDSPLITS,ANDJOINS,XORSPLITS,XORJOINS},如图1从左到右依次所示。4ST∈N,是模型的开始节点,STTYPESTART,STDOUT1,并且STDIN0。5EN∈N,是模型的结束节点,ENTYPEEND,ENDOUT0,并且ENDIN1。6AC⊆N,是模型的活动节点,ACTYPEACTIVITY,ACDOUT1,并且ACDIN1。7JI⊆N,是模型的JOINS节点,JITYPE{∈ANDJOINS,XORJOINS},JIDIN≥1,并且JIDOUT1。8SP⊆N,是模型的SPLITS节点,SPTYPE{∈ANDSPLITS,XORSPLITS},SPDIN1,并且SPDOUT≥1。9如果N∈SP,节点N被访问,当NTYPEXORSPLITS时,则其中一条出口路径随机被访问;当NTYPEANDSPLITS时,则所有出口路径都被访问。10如果N∈JI,当NTYPEXORJOINS时,当且仅当一条入口路径被访问时,节点N才会被访问;当NTYPEANDJOINS时,当其所有入口路径都被访问时,节点N才会被访问。图图图图1节点类型节点类型节点类型节点类型在进行对活动图的诊断前,需要将活动图转换为标准模型。首先去除活动图中不必要的元素,如对象和泳道;然后保留起点、终点、活动、判断、同步条和控制流。最后进行作者简介作者简介作者简介作者简介周春燕1986-,女,硕士研究生,主研方向信息系统集成;李绪蓉、周良,副教授、博士收稿日期收稿日期收稿日期收稿日期20101210EMAILDOLPHIN86ABCYAHOOCOMCN48计算机工程2011年7月20日以下的转换1起点有多条出口路径,则在起点和多条路径中间添加XORSPLITS;2有多个终点,则添加一个XORJOINS,将多个终点的入口路径指向这个XORJOINS,XORJOINS指向一个终点,其余的移除;3活动有多条入口路径和多条出口路径,则在入口路径与活动中间添加ANDJOINS,在出口路径与活动中间添加ANDSPLITS;4判断有多条入口路径,则在判断与入口路径中间添加XORJOINS;5同步条有多条入口路径,则在同步条与入口路径中间添加ANDJOINS。3模型模型模型模型正确性正确性正确性正确性诊断方法诊断方法诊断方法诊断方法模型的正确性不仅包括语法的正确性,还包括语义的正确性。模型具有正确性当且仅当具有21活性从开始节点ST开始可到达的每个节点N,可以到达终止节点EN。2可靠性终止节点EN必须是从开始节点ST开始的可达的唯一的终止节点。模型的正确性检查,主要检测两大类型的冲突1死锁如果N∈JI并且NTYPEANDJOINS,只有N的一部分入口路径被访问,则会导致模型不具有活性,在N节点上发生死锁。2乏同步如果N∈JI并且NTYPEXORJOINS,N的多个入口路径被访问,则会导致模型不具有可靠性,在N节点上发生乏同步。31模型分解模型分解模型分解模型分解模型诊断所需的时间空间与模型大小有直接关系。采用业务过程模型的分解技术3,将模型分解成多个子模型分别进行分析,锁定错误在哪个子模型中,提高检测和诊断的速度。设模型GN,E,T,ST,EN,AC,JI,SP,分解的子模型FN′,E′,T′,ST′,EN′,AC′,JI′,SP′是G的非空子模型,是单入口单出口型的,其中,N′⊆N,E′E∩N′N′,还存在一些边E,E′∈E,E∩N\N′N′{E},E∩N′N\N′{E′},E为入边,E′为出边。设N∈N,注设SET是一个集合,FIRSTELEMENTSET是集合的第一个元素;NEXTELEMENTSET是集合的当前的下一个元素;NPOSTNODES∗是N的所有连续后继节点;NPRENODES∗是N的所有连续前继节点。算法描述如下1遍历寻找节点N,满足N∈SP,则转步骤2。2寻找N的每条出口路径的汇合节点JOIN{J|N′∈NPOSTNODES∩∀N′J∈N′POSTNODES∗∩J∈JI}。如果JOIN不为空,设JFIRSTELEMENTJOIN,则转步骤3。3得到子模型FN′,E′,T′,ST′,EN′,AC′,JI′,SP′,N′{N′|N′N∪N′∈NPOSTNODES∗∩N′∉JPOSTNODES∗},E′E∩N′N′,T′T,ST′N,EN′J,AC′{N′|N′∈AC∩N′∈N′},JI′{N′|N′∈JI∩N′∈N′},SP′{N′|N′∈SP∩N′∈N′}。4检查F所有节点,除开始节点外的前继节点,是否都包括在模型中,如果∃N″N′∈N′∧N′≠START∧N″∈N′PRENODES∧N″∉N′,则说明子模型结构不正确;如果NEXTELEMENTJOIN不为空,则JNEXTELEMENTJOIN,转步骤3,否则NFIRSTELEMENTJPOSTNODES,转步骤1;如果正确,则转步骤5。5将G中的F替换成活动节点,对F进行验证,具体步骤见32节,如果验证子模型是不正确的,则对F进行诊断,具体步骤见33节,NFIRSTELEMENTJPOSTNODES,转步骤1。32模型验证模型验证模型验证模型验证采用SADIQ和ORLOWSKA的图化简方法4来判断模型是否正确。其思想是移除所有绝对正确的结构块,保留冲突。运用化简规则将结构正确的模型逐步化简,而结构不正确的则不能化简。化简过程比诊断过程简易,将子模型先化简验证后诊断,可减少诊断次数,提高效率。有5种化简规则终端化简,顺序化简,邻近化简,闭合化简和交叠化简。设GN,E,T,ST,EN,AC,JI,SP,N∈N。1终端化简如果NDINNDOUT1,移除N。2顺序化简如果NDIN1并且NDOUT1,移除N。3邻近化简如果N∈SP并且N′∈NPRENODES,N′TYPENTYPE,则令E∈NOUTEDGES,E′∈NINEDGES,EFROMNODEN′,移除N和E′。如果N∈JI并且N′∈NPOSTNODES,N′TYPENTYPE,则令E∈NOUTEDGES,E′∈NINEDGES,E′TONODEN′,移除N和E。4闭合化简设E∈E,如果∃E′E′∈E∧EFROMNODEE′FROMNODE∧ETONODEE′TONODE∧EFROMNODETYPEETONODETYPE∧E≠E′,移除E′。5交叠化简设N∈N,如果∃N′N′∈N∧NPOSTNODEN′POSTNODE∧NPRENODEN′PRENODE∧NTYPEN′TYPE∧N≠N′,移除N′。33模型诊断模型诊断模型诊断模型诊断本文借鉴文献5提出的基于INTEGERPROGRAMMING诊断工作流的方法,在模型诊断中将模型翻译为包含一系列的0/1线性约束的IP模型,其中每个节点N都有一个IP变量IPN,赋值为一个整形值0或1。赋值为1的节点和边在执行路径内,为0的不在执行路径内。利用IP规范中的约束集来对每条执行路径的每个JOIN进行测试,为不同的JOIN添加其不会导致错误的条件约束,如果执行路径不满足某个JOIN的特定约束集,说明在此JOIN节点上有错误。反之,如果满足,说明此节点是正确的。算法描述如下1为模型GN,E,T,ST,EN,AC,JI,SP定义IP规范约束集,设N∈NIP1NTYPE{∈START}IPN1;IP2NTYPE{∈ACTIVITY,ANDSPLITS,XORSPLITS,END}IPNPRENODESIPN0;IP3NTYPE{∈ACTIVITY,ANDJOINS,XORJOINS,START}IPNPOSTNODESIPN0;IP4NTYPE{ANDSPLITS}∈0NNPOSTNODENIPNNDOUTIPN′∈′′−∑;IP5NTYPE{∈XORSPLITS}0NNPOSTNODENIPNIPN′∈′′−∑。2遍历每条执行路径,分别检验路径上的每个JOIN节点。ANDJOINS节点,添加节点的约束IP6IP6NNPRENODENIPNNDINIPN′∈′′∑;XORJOINS节点,添加节点的约束IP7IP7NNPRENODENIPNIPN′∈′′∑检验执行路径是否符合约束集,若符合,则此JOIN节点正确;若不符合,则说明此JOIN节点会导致冲突;ANDJOINS节点会导致死锁;XORJOINS节点会导致乏同步。4应用验证应用验证应用验证应用验证为验证本文所提出诊断方法的有效性,在此以某企业内部的质量管理过程为例。该过程是对生产中的不合格品进行审理,经过审理小组、常设机构和型号产品专业组的审理。具体如图2所示。第37卷第14期49周春燕,李绪蓉,周良UML活动图模型正确性诊断方法所长审批型号产品专业组的修改结论型号产品专业组提交审理结论给检验员编写归零报告型号产品专业组填写审理结论型号产品专业组进行审理无需审批需要审批需要归零A型号产品专业组的审理活动图B型号产品专业组的审理模型C验证结果图图图图2诊断过程诊断过程诊断过程诊断过程诊断过程是将原始活动图预处理为标准模型,限于篇幅,选取部分活动图,型号产品专业组的审理活动图如图2A所示,转换为模型如图2B所示。将模型分解后,对子模型进行验证,型号产品专业组的审理模型是总模型的子模型,对其进行验证时,验证失败,如图2C所示。随后进行诊断,得出诊断信息A13与A11的相交点ANDJOINS处存在冲突,可能引发死锁;A12的下一个XORJOINS处存在冲突,可能引发乏同步。即当型号产品专业组填写审理结论后,选择不需要审批时,编写归零报告就不能进行下去,导致图失去可靠性,后面的同步条不能到达,导致图失去活性。5结束语结束语结束语结束语本文提出一种UML活动图模型的正确性诊断方法,并以某企业的内部质量管理过程为例对该方法进行应用验证,结果表明了该方法的有效性和实用性。但本文只涉及到AND和XOR2种连接类型,实际中可能还有OR和M/NAND等多种类型,因此,下一步工作将对模型的多样化进行研究,并将该方法运用到更复杂和大型的系统建模中,使其得到进一步完善。参考文献参考文献参考文献参考文献1褚红伟,赵银亮,葛玮分布工作流过程模型及其实现J计算机工程,2009,351455572VANDERAALSTWMPVERIFICATIONOFWORKFLOWNETSC//PROCOFTHE18THINTERNATIONALCONFERENCEONAPPLICATIONANDTHEORYOFPETRINETSTOULOUSE,FRANCESN,19973VANHATALOJ,VLZERH,LEYMANNFFASTERANDMOREFOCUSEDCONTROLFLOWANALYSISFORBUSINESSPROCESSMODELSTHROUGHSESEDECOMPOSITIONC//PROCOFICSOC’07VIENNA,AUSTRIASN,20074SADIQW,ORLOWSKAMEANALYZINGPROCESSMODELSUSINGGRAPHREDUCTIONTECHNIQUESJINFORMATIONSYSTEMS,2000,2521171345ESHUISR,KUMARAANINTEGERPROGRAMMINGBASEDAPPROACHFORVERIFICATIONANDDIAGNOSISOFWORKFLOWSJDATAKNOWLEDGEENGINEERING,2010,698816835编辑金胡考上接第46页的语义异构问题。目前该框架已经成功应用在参数估计系统中,在不影响数据集成效率以及正确性的同时,更好地保证了数据集成过程数据的一致性。本文的不足之处是没有为实例数据设计映射发现策略,因为电力系统数据的多样性以及复杂性,所以暂时还不能提取出实例数据的一般特征。下一步工作将继续深入研究映射匹配算法,为实例数据制定映射匹配策略,实现不需人工干预自动完成异构数据源的集成。参考文献参考文献参考文献参考文献1DOANA,MADHAVANJ,DOMINGOSPETALLEARNINGTOMATCHONTOLOGIESONTHESEMANTICWEBJTHEVLDBJOURNAL,2003,1243033192史斌,方丽英基于本体的概念语义相似度度量J计算机工程,2009,351983853屈振新,唐胜群信息集成中冲突的语义解决方案J计算机科学,2010,3711671694李熙基于WORDNET的本体映射研究D长沙中南大学,20085ANDREWM,EGENHOFERMJDETERMININGSEMANTICSIMILARITYAMONGENTITYCLASSESFROMDIFFERENTONTOLOGIESJIEEETRANSACTIONSONKNOWLEDGEANDDATAENGINEERING,2003,1524424566李艳霞面向信息集成的语义异构消除技术研究D兰州西北师范大学,2009编辑金胡考

注意事项

本文(UML 活动图模型正确性诊断方法模型正确性诊断方法.pdf)为本站会员(abaodong)主动上传,人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知人人文库网(发送邮件至[email protected]或直接QQ联系客服),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。

关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服客服 - 联系我们

网站客服QQ:2846424093    人人文库上传用户QQ群:460291265   

[email protected] 2016-2018  renrendoc.com 网站版权所有   南天在线技术支持

经营许可证编号:苏ICP备12009002号-5