基于模型的代码一致性检测方法的研究

来源 :重庆大学 | 被引量 : 0次 | 上传用户:evemxy
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
信息的不一致性是普遍存在的,在计算机技术的日益发展而且软件系统的规模也在不断变大的今天,软件系统的开发也变得更加复杂和难以把握。而面向对象技术作为目前软件开发中最常用的一种开发技术,它在提高软件系统的开发效率和质量的同时,也因为其自身诸如继承性、多态性的机制给软件模型和代码的一致性带来许多问题。因此面对不断增长不一致性问题,怎样结合面向对象技术特点,保证软件模型和代码的一致性已经愈发引起设计和编程人员的重视。目前国内外针对于模型之间的一致性检测虽然有很多,但是对于模型与代码间的一致性检测,尤其是基于面向对象机制的研究却相对不足。本文在上述背景下,基于面向对象模型自身特点对其与代码之间的一致性问题进行研究,这在理论上和实践上都具体一定的意义。本文分别选取UML模型与Java源代码作为本文的研究对象。并且本文的研究是基于UML模型为基准,即根据模型的信息来对代码的信息进行检测,如果出现不一致问题时根据模型信息对代码信息进行修改。完成模型与代码的的一致性检测主要工作包括如下几点:第一,分析UML模型自身特点,结合其半形式化的特点对其进行形式化描述,采用时序调用图(SD-CG)这一概念,完成了对UML模型信息的预处理。第二,对Java代码进行解析,提取代码中的关键信息,获取类的信息并根据代码中方法之间的调用关系生成代码调用图(CCG)。第三,分析类间相互关系,考虑面向对象多态性机制,并根据存在的多态性信息多调图进行多态性扩展,从而提高一致性检测的完备性。第四,最后根据相应算法实现静态信息与动态信息的一致性检测。先对模型与代码的静态信息进行相应的匹配,并反馈检测结果,并根据输出的不一致性信息对动态检测进行相应处理。之后根据得到的调用图进行调用边及调用节点的一致性检测,最终根据相应规则输出一致性检测报告。基于上述理论研究,开发了一个基于一致性检测理论框架工具的原型,通过输入UML建模的XML文件和相应的Java源代码,实现了模型与代码信息解析和提取、时序调用图和代码调用图的构造、多态性扩展、一致性检测等功能。最后通过利用该工具对实例进行验证,输出一致性检测报告,从而表明了本文所提出的模型与代码之间的一致性检测方法是可行且有效的。
其他文献
数据挖掘是随着信息技术不断发展而形成的一门新学科,是数据库领域出现的一个新兴的研究热点。关联规则作为数据挖掘领域的一个重要研究分支,针对关联规则挖掘中经典算法-Aprio
随着科技的发展和计算机网络的普及,即时通信软件已逐渐融入人们的生活。从简单的聊天工具,发展到集交流、资讯、娱乐、搜索、电子商务、办公协作和企业客户服务等为一体的综合
XML以其高度的表达能力和灵活性,逐渐在互联网上成为数据发布和数据交换的标准。如何在大量的XML数据中查询信息已经成为学术界和产业界关注的一个热点。在过去的研究中,人们
伴随着开放式网络系统的飞速发展,PKI网络安全体系被广泛使用和推广。网络事务中行为人的身份一般使用数字证书进行身份认证。在传统的方式中,数字证书一般从CA得到并保存在
免疫算法是模拟生物免疫系统功能的一种智能算法,具有解决复杂工程问题的潜力。但目前的免疫算法还有没有类似遗传算法和神经网络等智能系统的相对统一的基础和理论。在实际应
Web Services为实现系统应用的跨平台交互和集成提供了契机,成为业界的焦点。由于单个Web Service提供的功能毕竟有限,仅仅通过单一的、功能简单的Web Services交互来实现真
在快速发展的互联网时代,数字化办公已变得十分普及,人们每天都要接触许多的数字文档。由于数字文档极易被篡改和伪造,因此数字文档的安全性引起了越来越多的关注。我们应该
随着网络技术发展的日新月异,网络规模迅速扩大,特别是进入90年代后,以IP为基础的Internet呈现出爆炸式增长,Internet已逐渐发展成为全球性的信息基础设施。随着新型网络应用
随着信息技术的飞速发展,信息应用系统在高校的教学科研管理各个方面得到了广泛的应用,极大地促进了高校各项事业的蓬勃发展。然而当高校全力朝着“数字化校园”的建设目标迈
随着移动互联网技术发展和智能手机的普及,在室内人们对基于位置服务需求越来越多,如商场导航,车库寻车,现场救援,智能家居位置感知等。室内定位可靠性和对环境变化适应性引