知识驱动的软件模式识别

来源 :东南大学 | 被引量 : 0次 | 上传用户:zgrmxm
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
由于软件系统的复杂性,理解现有软件已成为软件生命周期所有阶段中最昂贵的任务之一。据统计,理解软件系统花费了软件工程中多达60%的工作量。从遗留系统中恢复设计信息是一项相当具有挑战性的任务,即使对于70K到280K源代码行的中型项目,也需要经验丰富的设计师平均花费100个小时来创建准确的架构。识别软件模式(software pattern)是理解软件系统的重要手段之一。包括架构模式(architectural pattern)和设计模式(design pattern)在内的软件模式总结了软件系统的设计或实现中特定的、重复出现的问题的解决方案。软件模式的识别提供了一种了解系统设计背后原理的有效途径。识别出的模式实例揭露了开发人员的意图,为维护人员提供了系统结构及其内部特征的深刻见解。软件模式本身提炼了有经验的专家从实践中获得的设计知识;而从中理解软件系统的制品(artifact),也可以理解为关于软件系统的一种知识形式。尽管如此,现有方法较少从知识角度出发探索软件模式的识别。识别软件模式涉及多方面的领域知识,现有方法往往单一的利用领域知识的某一方面作为模式存在的证据,这往往不够充分而产生误报。技术领域的上下文不明确,设计与实现之间的映射便难以自动化进行,致使识别模式需要较大的人工工作量。针对上述问题,本文的主要贡献包括以下几个方面:(1)在Java语言的上下文中利用惯用实现识别设计模式:构造了一组本体,用于描述设计模式的概念以及Java语言的构造;进而提出了一种实体及关系抽取算法,用于从源代码中构建知识图谱,并构造了22种GoF(Gang of Four,四人帮)设计模式的模式模板;最终在五个开源的基准系统上展开实验,并与三种其他方法比较,评估了识别的准确性及时间性能。(2)在此基础上,使用动态分析方法进一步区分结构上相似的设计模式实例:提出了一种测试脚本标记语言以及一个基于该标记语言的测试用例生成算法,用于驱动模式实例运行;描述了一种程序追踪方法,无需插桩即可监视程序的运行状态;进而在知识图谱中引入基于间隔的时序关系,构建了一种运行时行为的建模和规范方法;最终使用六个开源基准系统,针对五个GoF设计模式,实验验证了五种现有方法报告的466个实例,进一步提高了识别的准确性。(3)基于扎根理论整合多方面的领域知识,利用专家的经验知识进行架构模式识别:提出了一种基于扎根理论的架构模式识别方法,即围绕案例分析,展开相关资料的调研,通过一种自顶向下的识别过程,构建出一个关于架构模式的“理论”;随之围绕两个开源系统,演示和分析了该方法在实践中的应用;最终针对六个开源系统实验评估了该方法的准确性及时间性能。(4)抽象了基于静态分析、动态分析以及扎根理论解决设计模式和架构模式识别问题的过程及实现方法,建立了一种知识驱动的模式识别框架:利用层次结构的特点,提出了一种层次化知识图谱;在此基础上,使用描述逻辑形式化定义了模式,将模式识别问题转换为概念的可满足性问题;最终定义了模式识别的核心过程和部件,将识别过程的可变部分封装为可插拔的组件,并基于该框架实现了一个原型工具。
其他文献
超宽带高性能光纤接入网(OAN)和5G移动通信网正逐步打造我国“新基建”信息网络接入侧的坚实基础,下一代无源光网络(PON)架构对OAN安全性和可靠性提出了更高的要求。传统PON链路安全管理体系低效费工,在接入侧缺乏有效的链路状态感知和安全管理能力,亟待探寻高效链路安全管理方法和技术。本文以实现二维光编解码无源光网络链路健康检测系统(2DOC-PON-LHDS)应用为目标,深入研究系统用户链路状态
随着时代的发展,农村地区的建设和发展受到前所未有的关注和重视,与城市住宅相比,农村住宅的建设一直处于相对落后的局面。在夏热冬冷的苏南地区,室内热环境质量差、能效低等问题一直影响着农村居民生活质量的改善。而围护结构作为农宅最主要的组成部分,是影响建筑节能、室内热环境质量的重要影响因素。由于农宅自筹自建的方式、对建筑低能耗技术认识不足和各主体的利益不一致等问题,都造成了农宅低能耗技术推广困难。如何兼顾
远监督关系抽取由知识库提供监督,自动产生大规模标注数据,能降低对人工标注的依赖。但是自动标注数据存在噪声,直接用于训练将影响远监督关系抽取模型的性能。训练样例选择是解决远监督关系抽取中噪声问题的重要方法,它从训练样例集合中选择具有正确标注的训练样例,从而减少噪声对远监督关系抽取模型性能的影响。训练样例选择方法分为隐式方法和显式方法。隐式训练样例选择方法主要包括概率图模型(Probabilistic
圆极化天线能抑制雨雾干扰,减小多径反射,消除极化失配,在雷达、卫星通信、军事以及电子对抗中有着广泛的应用。现代通信对设备的小型化、宽频带作业有诸多需求,因此宽带圆极化天线有极大的应用需求。空间来波估计(DOA)能突破阵列波束宽度的限制,实现对空间目标的精确定位,广泛应用于雷达、通信以及声纳等领域。本文围绕宽带圆极化天线和空间来波估计主要开展了如下研究工作:一、基于特征模理论研制了一种宽频微带圆极化
对电磁波的调控是人类的永恒需求,随着科技的发展与军民用需求的提升,对电磁波的动态调控日益凸显重要的地位。在现役装备广泛使用的微波波段,对电磁波的动态控制大多依赖于PIN管、变容管等集总器件,其必须的焊接工艺一定程度上制约了电子器件向轻、薄、柔的目标发展。石墨烯,作为一种诞生于2004年的新型材料,其突出的特点是单原子层结构,厚度只有nm级别。此外,石墨烯属于一种半导体材料,其电导率具有良好的可调特
高维数据特征选择是数据挖掘的重要组成部分,可广泛应用于生物信息学、统计学及图像处理等领域。有效选择信息特征可显著地提高学习精度和结果的可解释性;为提高分类精度,许多现有特征选择方法通过去除数据中的冗余和不相关特征来识别信息特征。由于特征维数随数据规模的增大而增加,易出现维数灾难和过拟合问题;数据高维性不仅增加算法的时间和空间复杂度,也会降低算法的求解精度。针对高维数据特征选择所存在的问题,本文通过
在过去的二十几年里,纳米技术得到飞速发展,纳米线合成技术已相当成熟,可以实现多种类、大批量、低成本生产。纳米线由于直径处于纳米尺度,量子效应变得更加明显,而拥有独特的光学特性、力学特性、热和电传输特性等,在科学技术领域有着许多重要应用。对一维纳米材料进行可控的操控和功能化组装,可以改进一维纳米材料结构的整体功能特性,实现纳米功能器件制备。纳米线的可控操纵和组装技术是一维纳米材料在未来应用研发中的关
地震是对人类社会极具威胁的自然灾害,历次地震震害表明,强烈地震会引起大量建筑毁坏和人员伤亡,造成巨大经济损失并严重影响社会正常发展。寻求工程结构在地震灾害下的安全性以及尽可能降低地震灾害带来的经济损失和社会影响是地震学界一直探讨的重要核心问题。近年来,地震学界逐渐从传统的结构抗震研究转移到结构的震后可恢复性研究,试图通过提升结构的震后可恢复性以尽可能降低地震灾害的长期影响。我国很多区域处在断裂带附
以数学的视角看计数问题,它是代数学和统计学的基本问题之一,从理论计算机科学的视角看计数问题,它是计算机科学基础理论的研究课题之一,更是一类应用问题(包括NPC问题)近似最优解问题求解方案的重要步骤。计数问题求解的是搜索空间中满足条件的解的个数。当搜索空间规模较小时,一般采用枚举的方法得到计数问题的解,反之,枚举算法时间复杂度太高,求解问题代价太高,难以满足现实需要。随着数据集规模的激增,为提高解决
随着物联网、5G通信、人工智能和高性能计算等信息技术的兴起,高速率、大容量、低损耗的光子集成回路(PIC)已成为各类新型信息系统的技术基础,各种功能光子集成器件(PIDs)不断涌现。PIDs功能的拓展和性能的提高与波导材料及结构密切相关。周期电磁结构(PEMS)波导具有结构设计灵活、材料选择多样、电磁操控能力强等优势,为小尺寸、高性能、大规模集成PIDs的实现提供了新的技术途径。论文将PEMS波导