【摘 要】
:
在软件开发过程中,开发人员从某处复制粘贴一段源代码并对其进行修改是一种常见的编程方式,这种软件开发方法称之为代码复用。虽然代码复用技术确实给软件系统的研发带来许多便利,但由此导致软件系统中可能产生的大量克隆代码,不仅使整个源代码变得臃肿,增加软件系统的维护成本,而且会影响软件的质量,导致代码漏洞的引入和繁衍。正因如此,代码克隆检测一直是软件工程领域的一个基础研究课题。鉴于此,本文重点围绕基于序列联
论文部分内容阅读
在软件开发过程中,开发人员从某处复制粘贴一段源代码并对其进行修改是一种常见的编程方式,这种软件开发方法称之为代码复用。虽然代码复用技术确实给软件系统的研发带来许多便利,但由此导致软件系统中可能产生的大量克隆代码,不仅使整个源代码变得臃肿,增加软件系统的维护成本,而且会影响软件的质量,导致代码漏洞的引入和繁衍。正因如此,代码克隆检测一直是软件工程领域的一个基础研究课题。鉴于此,本文重点围绕基于序列联配和分布式计算的大规模代码克隆检测方法展开研究,主要的研究内容和成果包括:(1)提出并实现了一种基于序列联配的大间隙代码克隆检测方法大间隙克隆是一种比较复杂的代码克隆类型,其特点是克隆代码片段中添加、删除或修改了许多语句块。检测和追踪这类克隆具有十分重要的意义。然而,由于大间隙克隆代码结构差异较大,传统克隆检测方法难以检测到它们。为此,本文研究并提出了一种将代码指纹与序列联配相结合的代码克隆检测方法。该方法通过设计一种基于MD5的代码指纹生成算法,将待检测源代码中的每个代码片段表示为一条代码指纹序列,从而将代码克隆检测问题转化为代码指纹序列间的联配问题;然后借鉴Smith-Waterman算法,提出了一种基于动态参数优化的序列联配算法,解决了直接将原始Smith-Waterman算法用于克隆语句检测而导致的丢失匹配区域的问题;最后以本文定义的有向代码克隆对为基础,设计了专门针对大间隙克隆检测的克隆识别准则。实验结果表明,本文方法在大间隙克隆检测方面表现出良好的检测能力,同时也能很好地支持对一般克隆的检测。(2)提出并实现了一个大规模开源代码分布式高效克隆检测平台构建大规模代码克隆检测平台是代码克隆检测研究的一个很有价值的应用场景。然而建立庞大的开源项目代码数据库以及由此带来的代码规模给克隆检测造成了巨大的存储和计算压力,这将制约克隆检测平台的发展。为此,本文提出并实现了一种大规模开源代码分布式高效克隆检测平台。其核心思想为:首先提出了一种基于代码指纹的项目代码处理方法,极大地降低了每个开源项目的存储开销,同时设计了一个开源项目实时更新系统,实现了面向Github的开源项目代码数据库的构建;针对庞大代码规模带来的计算负担问题,设计并实现了一种基于集群的分布式计算框架,以提升代码克隆检测平台的检测效率。实验结果表明,本文实现的大规模开源代码分布式高效克隆检测平台能够有效地检测代码克隆,且与单机运行模式相比在检测效率上有大幅提高。
其他文献
语义SLAM是指在即时定位与建图的基础上,通过各种方法对周围环境进行认知,能够同时获取环境中存在的几何信息与语义信息,并利用这些信息创建语义地图,提升机器人的智能导航能力。随着近年来计算机视觉的发展,机器可以从图像中提取到越来越多的信息,因此,通过视觉传感器作为信息源的方法成为主流。但是,图像的处理需要漫长的计算时间与大量的计算资源,一般很难应用于嵌入式平台。本文以目标检测的结果获取语义信息,通过
体系能力发展方案规划是体系建设过程中的重要内容,具有指导性意义。现有的研究成果中缺乏定量分析方法以及数学模型为体系能力发展方案的规划提供有效的支持。本文围绕“体系能力发展方案规划”这一问题,从作战活动出发,结合能力差距大小对能力差距重要度进行评估,为能力方案规划提供重要依据。同时提出能力-费用关系模型,构建能力发展方案规划决策模型为能力方案选择以及资源分配提供定量化方法的支撑。论文的主要工作和创新
基于云计算的复杂系统仿真是利用云计算资源共享、计算能力强等优势为复杂系统仿真提供建模服务的新型仿真模式。仿真模型服务化研究是实现该仿真模式的重要支撑。当前仿真模型服务化技术对模型语义关联关系描述不足,且主要为模型提供本地调用接口,难以支持云架构下模型资源的共享,难以根据模型关联关系和用户QoS(服务质量)偏好选择满足需求的模型。因此,开展基于云计算的复杂系统仿真模型服务化技术研究对于有效描述仿真模
法定解除作为合同解除方式之一,不仅是法律赋予合同非违约方的一项重要权利,也是司法实践中发生纠纷较多的重要法律问题,在维系市场经济秩序、确保交易公平与安全方面起着重要的作用,《中华人民共和国民法典》(以下简称"民法典")合同编相较于《中华人民共和国合同法》(以下简称"合同法")完善了法定解除权的行使规则,但法律的每一次修订都并非尽善尽美,对于合同的法定解除,民法典在一些技术性规范方面未有明显突破,仍
高速磁浮列车是一种利用电磁力实现车辆沿轨道无接触“零高度”快速运行的新型交通工具,磁浮轨道在其中发挥着重要作用。它不仅与车辆悬浮导向系统相互作用产生电磁吸力实现车辆的稳定悬浮导向,而且它还是列车同步直线牵引系统的电机长定子部件,与车辆悬浮电磁铁相互作用产生直线牵引力,它的状态直接影响车辆的牵引和制动性能,特别是齿面环氧层擦伤、裂缝、脱落,线缆下挂及安装螺栓缺失等异常状况。而这些轨道状况处于这种长大
与传统语义学的研究对象不同,语义韵是一种语义环境。在这种环境中,单词和短语的意义受到其搭配词的影响。语义韵无法凭内省获得,只能通过对大量语料进行总结提炼,因此常给翻译实践带来难题。本研究首先在单语语料库中分别检索两组颜色词“红”和“RED”,“白”和“WHITE”,观察分析语料数据,探寻英汉颜色词语义韵差异。同时应用问卷调查方法和英汉平行语料库,分析语义韵差异给翻译带来的影响,并根据数据分析结果和
本报告选取军事协定《澳大利亚政府与菲律宾共和国政府关于访问部队的地位协定》(以下简称“本协定”)作为翻译素材。本协定围绕缔约方的权利与义务展开,内容全面,结构完整,属于典型的军事协定文本。本报告以文本类型理论为理论框架,探讨如何全面准确地传递军事协定的文本信息。军事协定属于信息型文本,要求译者以简洁流畅的文字,在目标文本中传递其全部信息。鉴于军事协定的重要性和法律翻译的传统,译者应采用直译策略,忠
本文针对载体视觉导引自主着陆问题的需求,开展基于合作目标视觉特征信息的相对运动参数估计相关算法研究,为视觉导引自主着陆的状态估计提供理论和技术支持。主要研究内容总结如下:(1)研究了合作目标检测识别与视觉特征提取算法。首先,根据合作目标的构形设计准则设计了由一个圆环和T型标志组成的易于识别且具备充裕视觉特征信息的新型合作目标用于辅助载体进行导航定位;其次,针对合作目标采集图像,研究了图像预处理、基
互联网发展带来信息爆炸式增长以及表达方式的多样化,使信息的传递变得更加高效、方便和快捷。层出不穷的数字化智能化信息技术也正不断改变着人们的生活。互联网新闻因时效性强、信息丰富等特点,成为用户最常检索的内容之一。面对海量新闻,人们同样遇到了一些无法避免的问题,即由于文本信息的过度膨胀导致用户难以找到所需要的内容,这也促使了文本可视化与关联检索等辅助多样化检索方式的技术逐步发展,如何在互联网环境下对各
兴趣点(Point of Interst,POI)是指人们发现有用或有趣的特定位置。POI提供了多样化的城市功能,在方便人们的日常生活方面发挥着重要作用。在城市中,感兴趣区域(Area of Interst,AOI)是基于位置服务(Location Based Service,LBS)术语中对POI的扩展概念,是指具有地理边界信息一片区域,传统上AOI多指大的商圈和城市功能区。本文主要关注细粒度A