【摘 要】
:
设计模式是面向对象软件设计中针对典型问题的典型解决方案,被广泛应用于软件系统中。从代码中识别设计模式实例有助于对软件的理解和再工程。目前,设计模式结构特征的识别研究
论文部分内容阅读
设计模式是面向对象软件设计中针对典型问题的典型解决方案,被广泛应用于软件系统中。从代码中识别设计模式实例有助于对软件的理解和再工程。目前,设计模式结构特征的识别研究得比较充分,但对于设计模式的行为特征,现有研究仅仅依据方法级的行为信息,即通过方法间的调用关系、调用顺序以及执行顺序等信息进行描述和识别,没有分析语句级的行为信息,即没有具体分析每条语句的具体行为,比较粗略。
本文引入静态程序分析技术从具体的语句、变量层面描述和识别设计模式的行为特征,提出了基于逃逸分析描述和识别对象创建行为中的对象创建效果的方法,基于依赖性分析描述和识别委托行为、备忘录模式中备忘录生成行为以及观察者模式中的数据观察行为的依赖性特征的方法。针对开源代码中的实例分析表明,上述方法能够描述和识别现有研究无法识别的更多、更复杂的行为特征,提高识别的准确和细致程度。
设计模式识别研究领域至今没有统一的识别标准。本文在综合考虑现有识别标准的基础上,提出了一个多层次多角度的识别标准。根据此识别标准,我们在开源工具Soot的基础上结合现有研究中的矩阵匹配结构分析法和本文提出的行为特征识别法,开发了自动化的设计模式识别工具JDP-Detector。针对开源软件的实验表明,JDP-Detector具有较高的识别效率和准确率,能够识别更多细粒度的模式成份,并能更好地区分结构相似的模式。
其他文献
随着物联网概念的兴起,作为基础设施的无线传感器网络越来越受到研究者的广泛关注。得益于集成芯片、传感器、通信等多项技术的飞速发展,无线传感器节点能够降低成本、多功能
高能效可靠数据传输是无线传感器网络研究中一个基础且关键性的问题,它决定了节点感知的数据如何经多跳路由传输到基站,对整个网络的通信性能和能量使用效率都有着至关重要的
心率是人体最重要、最基本的生理参数之一,在健康指标上有着重要的意义。传统的测量方式要求测量者与医生或者仪器有一定的物理接触,一定程度上造成了测量的不便。本文探讨一种
行人检测是基于图像/视频数据进行目标检测的一个重要分支,它在视频监控、智能交通、高级人机接口等多个领域具有广泛的应用前景。行人检测技术实现的一个主流思路就是从机器
张代远教授在其专著《神经网络新理论与方法》中提出的权函数神经网络模型简化了网络结构,克服了传统神经网络算法局部极小、收敛速度慢、难以求得全局最优点等缺陷。B-样条权
浮选过程中,泡沫具有明显的色彩特征,它与浮选生产工况密切相关,并能反映气泡所携带的矿物类型。现场操作工人往往通过观察浮选泡沫表面颜色进行生产调节,但肉眼难以观测到泡
随着网络规模的不断扩大,网络流量的不断增大,传统的入侵检测系统在高速网络环境下存在较大的性能瓶颈和缺陷。主要表现在两个方面:一是当前应用层的入侵检测系统虽然比较稳定
众所周知,比较是人类认识世界的一种重要手段和有说服力的表达方式,是世界各种语言的最重要的组成部分。随着Web2.0的深入发展,Internet技术更加注重与普通用户的交互,用户不
随着三维建模和三维扫描技术的飞速发展,三维网格数据的规模也同样快速增长,而这些数据的处理和存储问题开始凸显。现阶段有着很多对三维网格处理方面的研究,但是却基本没有
群智能算法是通过模拟自然界生物的群体行为而构造的随机优化算法,它为解决大量存在于计算机科学、管理科学、控制工程等领域的全局优化问题提供了新的途径,因此成为学术界长