基于模糊的设计模式挖掘与重构

来源 :大连理工大学 | 被引量 : 0次 | 上传用户:pengpeng88888
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
设计模式提供了模式结构中每个类的角色信息及各组成元素之间的关系,是面向对象设计的一个高级抽象。随着软件规模的不断扩大和复杂度的不断增加,为了更好地设计和实现软件系统,满足市场和用户需求的不断变化,大部分的软件系统都采用设计模式来提高对系统的可复用性。因此,从系统源码中挖掘设计模式对软件的可理解性和可维护性具有重要意义。目前,设计模式挖掘主要存在以下3方面的问题:第一,实际系统中的设计模式与标准设计模式并不完全相同,需要考虑模式模型的灵活度问题;第二,源码中存在大量与模式挖掘无关的信息,如果不进行过滤,会增加匹配负担;最后,大部分的设计模式体现在对象之间的交互上,需要考虑动态信息,而目前对源码动态分析的研究还相对较少。针对以上问题,本文提出一种基于模糊理论的模式匹配方法,实现设计模式挖掘。其中,使用基于类关系的素数矩阵模型对设计模式结构及源码信息进行描述,将其作为模式匹配的模型基础,该模型灵活性强,能够很好地适应不同定义的模式;采用基于模型的聚类方法对源码模型进行优化,过滤多余信息,以提高模式匹配的效率;将模糊方法与设计模式匹配策略相结合,引入动态信息,将其与静态信息相结合,提高模式匹配的正确性和精确性;最后,利用XML技术实现对设计模式的定位。通过对应用大量设计模式的开源代码JUnit、JHotDraw和JRefactory进行实验分析,证明此方法在精确性和完整性方面得到了很大的提高,并且避免了对特殊模式的失效性。由于设计模式为软件系统提供了设计的可重用性,当用户需求变化时,开发人员需要在某些设计模式的基础上,对系统进行相应的修改。因此,需要一种基于设计模式的重构技术来实现对软件系统中设计模式的修改。本文在挖掘设计模式的基础上,提出了一种基于XSLT技术的设计模式重构方法,针对不同的重构类型提出相应的XSLT转换机制。最后,本文开发了一个设计模式挖掘和重构工具,实现对设计模式挖掘和重构的自动化。通过对开源代码的测试,证明此工具的有效性。
其他文献
虚拟植物是以计算机仿真技术为基础,融合人工智能、植物学和植物生理学等多学科门类的新兴交叉研究领域,是国家数字农业战略规划的重要组成部分,也是农业信息化的核心研究内
P2P覆盖网(Peer-to-Peer Overlay Networks)是包含能够自组织的节点的分布式系统,目的在于共享资源,比如CPU的能力、带宽和存储能力。在不要求一个全局的集中服务器的支持或
在当今计算机安全形式日益严峻的情况下,计算机取证技术对于打击计算机犯罪具有重要的作用和意义。计算机犯罪行为都会在计算机中留下历史记录,并存储在文件系统中。这些历史
我国苹果产量巨大,总产量是世界1/4,雄居世界苹果主产国之首。虽然中国的苹果面积和苹果产量均居世界第一位,但是单产仅居世界的第65位,苹果的出口量和出口价值,分别居世界的第11
无线传感器网络是一种全新的信息获取和处理技术,在军事、环境、医学、空间探索以及工业、民用和家庭网络等领域具有广泛的应用前景.因此,无线传感器网络技术被称为21世纪最
随着网络和信息技术的飞速发展,语音和视频等数据量大的多媒体数字信息可以在网络上方便、快捷地传输。而数字图像作为多媒体信息中最重要的一种信息表达形式,具有形象、直观
人脸识别技术是模式识别和机器视觉领域最富挑战性的研究课题之一,涉及模式识别、图像处理、计算机视觉、神经网络、生理学以及心理学等诸多学科,是一个典型多学科交叉的应用
目前,汽车制造厂重心逐渐向以客户服务为中心的模式转移,售后服务也将成为利润的主要来源,汽车协同售后服务系统作为企业之间售后服务业务协作的平台,发挥着至关重要的作用。
随着无线技术的高速发展,Internet技术和移动通信技术已成为信息领域中发展最快的两大关键技术,移动通信和IP技术的结合是通信技术发展的必然结果,移动IPv6网络已成为未来互
人们在日常生活和学习的过程中经常会遇到一些决策问题,如:购房,购车,选择适合自己的职业等。而且常常会面临一些由相互关联、相互制约的众多因素构成的复杂而往往缺少定量数