[发明专利]一种基于元模型的UML语法一致性检测方法有效
申请号: | 201910505180.1 | 申请日: | 2019-06-12 |
公开(公告)号: | CN110231938B | 公开(公告)日: | 2021-12-31 |
发明(设计)人: | 朱志良;乔梁;徐腾腾;范珊珊;蔡壮 | 申请(专利权)人: | 东北大学 |
主分类号: | G06F8/35 | 分类号: | G06F8/35;G06F8/41 |
代理公司: | 大连东方专利代理有限责任公司 21212 | 代理人: | 姜玉蓉;李洪福 |
地址: | 110819 辽宁*** | 国省代码: | 辽宁;21 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 模型 uml 语法 一致性 检测 方法 | ||
本发明提供一种基于元模型的UML语法一致性检测方法,包括:将需要检测的UML模型映射成XMI文档,通过支持XMI的UML绘图软件,将UML模型导出为XMI文档;通过Java语言使用DOM4J解析器解析XMI文档;设计元模型结构,通过Xpath技术对UML模型进行关键词抽取,以获取UML元模型的信息,信息包括标签以及标签的属性值;将获取的UML元模型信息,存储至数据库,用于后续的读取;根据UML语法一致性规则对数据库中存储的UML元模型进行检验,通过Java代码实现自动化检测。本发明的技术方案,简单易行,准确高效,方便查找模型中有问题的结点。
技术领域
本发明涉及计算机软件工程技术领域,具体而言,尤其涉及一种基于元模型的UML语法一致性检测方法。
背景技术
UML(Unified Modeling Language,统一建模语言)在软件工程领域已被广泛接受,它是一种通用的可视化建模语言,适用于对软件进行描述、可视化处理、构造和建立软件系统的文档,是OMG(Object Management Group,对象管理组)中最常用的规范,是实现MDA(Model Driven Archutecture,模型驱动架构)的首选建模语言。近几年随着学术界和工业界对MDA的极大关注,这使得UML模型在软件开发中变得越来越重要,这就对UML模型的一致性提出了更高要求。由于UML不是形式化的语言,不能给出精确规范,因此在语法语义上以及不同视角的图之间很可能出现不一致的情况,会出现各种冲突,而这种不一致可能是以后软件系统故障和问题的来源,因此对UML模型进行一致性检测是至关重要的。
现在有很多UML一致性检测的技术,不过大多基于各种形式化方法以及逻辑语言,比如Z语言、B语言、CSP、CTL/LTL命题逻辑等,这些形式化方法和逻辑语言都是基于严格的数学理论的,都需要开发人员有很好的数学基础,而且一些语言比较古老,缺少新版本的编译器,与现在的各种技术融合度不高。本发明不是基于这些逻辑语言,而是基于UML的元模型。OMG定义了一个四层模型体系来分开组成一个模型的不同概念层次:实例(M0)、模型(M1)、元模型(M2)和元—元模型(M3)。UML元模型位于M2层,定义了UML模型的结构,常常包含一些元类。该方法与之前的方法相比,比较简单易行,实现起来比较方便,容易理解。
发明内容
根据上述提出的技术问题,而提供一种基于元模型的UML语法一致性检测方法,实现对UML模型的语法一致性的检测。
本发明采用的技术手段如下:
一种基于元模型的UML语法一致性检测方法,包括:
步骤1:将需要检测的UML模型映射成XMI文档,通过支持XMI的UML绘图软件,将UML模型导出为XMI文档;
步骤2:通过Java语言使用DOM4J解析器解析XMI文档;
步骤3:设计UML元模型结构,通过Xpath技术对UML模型进行关键词抽取,以获取UML元模型的信息,信息包括标签以及标签的属性值;
步骤4:将步骤3获取的UML元模型信息,存储至数据库,用于后续的读取;
步骤5:根据UML语法一致性规则对数据库中存储的UML元模型进行检验,通过Java代码实现自动化检测。
进一步地,所述步骤2的具体步骤如下:
步骤2.1:创建SAXReader解析器;
步骤2.2:通过SAXReader解析器的read方法将XMI文档读取至内存中,并生成一个document对象树。
进一步地,所述步骤5的具体步骤如下:
步骤5.1:归纳整理UML语法一致性规则,UML模型中的以及UML模型间的一致性规则;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于东北大学,未经东北大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910505180.1/2.html,转载请声明来源钻瓜专利网。