期刊文献+
共找到152篇文章
< 1 2 8 >
每页显示 20 50 100
An Empirical Study of Code Clone Clustering Based on Clone Evolution
1
作者 Fanlong Zhang Xiaohong Su +1 位作者 Wen Zhao Tiantian Wang 《Journal of Harbin Institute of Technology(New Series)》 EI CAS 2017年第2期10-18,共9页
There are lots of code clones appearing in software,which are similar code fragments with each other. In the past decades,researchers have proposed some state-of-the-art methods to detect clones. The code clones have ... There are lots of code clones appearing in software,which are similar code fragments with each other. In the past decades,researchers have proposed some state-of-the-art methods to detect clones. The code clones have showing some relationship with the evolution of software. In order to explore relationships between clones and their evolution,we propose a framework to cluster clones with a Fuzzy C-means clustering method.Firstly,we detect all the clones using Ni Cad,and build the clone genealogies for multiple versions software.Secondly,we extract some metrics to describe the clones and their evolution. Finally,we cluster all clone's vectors,which are generated with the different metrics for different proposes. Experimental results on six open source software packages have shown the relationships among the clone life,the number of change times,the clone pattern and et al. can help developers to understand clones. 展开更多
关键词 code clones clone clustering clone analysis clone evolution empirical study
下载PDF
SSA-HIAST: A Novel Framework for Code Clone Detection
2
作者 Neha Saini Sukhdip Singh 《Computers, Materials & Continua》 SCIE EI 2022年第5期2999-3017,共19页
In the recent era of software development,reusing software is one of the major activities that is widely used to save time.To reuse software,the copy and paste method is used and this whole process is known as code cl... In the recent era of software development,reusing software is one of the major activities that is widely used to save time.To reuse software,the copy and paste method is used and this whole process is known as code cloning.This activity leads to problems like difficulty in debugging,increase in time to debug and manage software code.In the literature,various algorithms have been developed to find out the clones but it takes too much time as well as more space to figure out the clones.Unfortunately,most of them are not scalable.This problem has been targeted upon in this paper.In the proposed framework,authors have proposed a new method of identifying clones that takes lesser time to find out clones as compared with many popular code clone detection algorithms.The proposed framework has also addressed one of the key issues in code clone detection i.e.,detection of near-miss(Type-3)and semantic clones(Type-4)with significant accuracy of 95.52%and 92.80%respectively.The present study is divided into two phases,the first method converts any code into an intermediate representation form i.e.,Hashinspired abstract syntax trees.In the second phase,these abstract syntax trees are passed to a novel approach“Similarity-based self-adjusting hash inspired abstract syntax tree”algorithm that helps in knowing the similarity level of codes.The proposed method has shown a lot of improvement over the existing code clones identification methods. 展开更多
关键词 code cloning clone detection hash inspired abstract syntax tree ROTATIONS hybrid framework
下载PDF
Code Clone Detection Method Based on the Combination of Tree-Based and Token-Based Methods
3
作者 Ryota Ami Hirohide Haga 《Journal of Software Engineering and Applications》 2017年第13期891-906,共16页
This article proposes the high-speed and high-accuracy code clone detection method based on the combination of tree-based and token-based methods. Existence of duplicated program codes, called code clone, is one of th... This article proposes the high-speed and high-accuracy code clone detection method based on the combination of tree-based and token-based methods. Existence of duplicated program codes, called code clone, is one of the main factors that reduces the quality and maintainability of software. If one code fragment contains faults (bugs) and they are copied and modified to other locations, it is necessary to correct all of them. But it is not easy to find all code clones in large and complex software. Much research efforts have been done for code clone detection. There are mainly two methods for code clone detection. One is token-based and the other is tree-based method. Token-based method is fast and requires less resources. However it cannot detect all kinds of code clones. Tree-based method can detect all kinds of code clones, but it is slow and requires much computing resources. In this paper combination of these two methods was proposed to improve the efficiency and accuracy of detecting code clones. Firstly some candidates of code clones will be extracted by token-based method that is fast and lightweight. Then selected candidates will be checked more precisely by using tree-based method that can find all kinds of code clones. The prototype system was developed. This system accepts source code and tokenizes it in the first step. Then token-based method is applied to this token sequence to find candidates of code clones. After extracting several candidates, selected source codes will be converted into abstract syntax tree (AST) for applying tree-based method. Some sample source codes were used to evaluate the proposed method. This evaluation proved the improvement of efficiency and precision of code clones detecting. 展开更多
关键词 code clone Token-Based DETECTION Tree-Based DETECTION TREE EDIT Distance
下载PDF
CloneIRD:面向代码溯源的克隆代码继承关系判定方法
4
作者 姜智文 任怡 +3 位作者 杨立明 管剑波 李宝 谭郁松 《郑州大学学报(理学版)》 CAS 北大核心 2024年第2期18-25,共8页
随着开源软件的广泛使用,代码溯源成为管理软件源代码、降低潜在风险的重要技术手段。基于代码克隆检测的大规模代码溯源分析,从其检测结果中鉴别代码克隆对之间的继承关系,对代码来源追踪、组件依赖关系分析、软件脆弱性分析以及代码... 随着开源软件的广泛使用,代码溯源成为管理软件源代码、降低潜在风险的重要技术手段。基于代码克隆检测的大规模代码溯源分析,从其检测结果中鉴别代码克隆对之间的继承关系,对代码来源追踪、组件依赖关系分析、软件脆弱性分析以及代码缺陷修复等具有重要意义。目前,已有方法在原始代码片段存在微小修改的情况下,会产生许多误判,并且检测克隆对的效率也有待提高。针对上述问题,提出了代码溯源中克隆代码继承关系的判定方法CloneIRD,包括一个基于自研快速分布式克隆检测工具FastDCF的代码溯源分析框架,以及该框架的核心算法——基于代码演化信息的克隆代码继承关系判定算法EIHR。为验证框架和算法的有效性,首先设计并实现了CloneIRD方法,并在Linux内核V4.9和V4.12的开源代码上进行了实验。实验结果表明,CloneIRD方法能够有效判定代码溯源结果中克隆对的继承关系,且基于FastDCF的溯源分析框架能够胜任大规模代码的溯源分析任务。 展开更多
关键词 代码溯源 克隆代码 克隆检测 代码继承关系
下载PDF
Anti-obfuscation Binary Code Clone Detection Based on Software Gene
5
作者 Ke Tang Fudong Liu +1 位作者 Zheng Shan Chunyan Zhang 《国际计算机前沿大会会议论文集》 2021年第1期193-208,共16页
Information technology facilitates people’s lives greatly,while it also brings many security issues, such as code plagiarism, softwarein-fringement, and malicious code. In order to solve the problems,reverse engineer... Information technology facilitates people’s lives greatly,while it also brings many security issues, such as code plagiarism, softwarein-fringement, and malicious code. In order to solve the problems,reverse engineering is applied to analyze abundant binary code manually,which costs a lot of time. However, due to the maturity of differentobfuscation techniques, the disassembly code generated from the samefunction differs greatly in the opcode and control flow graph throughdifferent obfuscation options. This paper propose a method inspired bynatural language processing, to realize the semantic similarity matchingof binary code in basic block granularity and function granularity. In thesimilarity matching task of binary code obtained by different obfuscationoptions of LLVM, the indicator reaches 99%, which is better than theexisting technologies. 展开更多
关键词 O-LLVM Anti-obfuscation code cloning detection Machine learning Software gene
原文传递
代码相似性检测技术综述
6
作者 孙祥杰 魏强 +1 位作者 王奕森 杜江 《计算机应用》 CSCD 北大核心 2024年第4期1248-1258,共11页
代码复用为软件开发带来便利的同时也引入了安全风险,如加速漏洞传播、代码恶意抄袭等,代码相似性检测技术通过分析代码间词法、语法、语义等信息计算代码相似程度,是判断代码复用最有效的技术之一,也是近年发展较快的程序安全分析技术... 代码复用为软件开发带来便利的同时也引入了安全风险,如加速漏洞传播、代码恶意抄袭等,代码相似性检测技术通过分析代码间词法、语法、语义等信息计算代码相似程度,是判断代码复用最有效的技术之一,也是近年发展较快的程序安全分析技术。首先,系统梳理代码相似性检测的近期技术进展,根据目标代码是否开源,将代码相似性检测技术分为源码相似性检测和二进制代码相似性检测,又根据编程语言、指令集的不同进行二次细分;其次,总结每一种技术的思路和研究成果,分析机器学习技术在代码相似性检测领域成功的案例,并讨论现有技术的优势与不足;最后,给出代码相似性检测技术的发展趋势,为相关研究人员提供参考。 展开更多
关键词 二进制代码相似性 源代码相似性 跨语言代码相似性 深度学习 代码克隆
下载PDF
基于词汇的源代码克隆检测技术综述
7
作者 刘春玲 戚旭衍 +3 位作者 唐永鹤 孙雪凯 李晴浩 张雨 《计算机科学》 CSCD 北大核心 2024年第6期12-22,共11页
代码克隆指在软件开发过程中对源代码复用、修改、重构产生的文本相似或结构相似的代码。代码克隆对提升软件开发效率、节约开发成本有积极作用,但也会引起Bug传播,并对软件的稳定性、可维护性产生负面影响。代码克隆检测在剽窃检测、... 代码克隆指在软件开发过程中对源代码复用、修改、重构产生的文本相似或结构相似的代码。代码克隆对提升软件开发效率、节约开发成本有积极作用,但也会引起Bug传播,并对软件的稳定性、可维护性产生负面影响。代码克隆检测在剽窃检测、漏洞检测、版权侵权等领域具有重要的研究意义和应用价值。基于词汇的克隆检测技术能快速检测1-3型克隆,能扩展到其他编程语言,已被广泛应用于大规模克隆检测任务中。文中对近5年基于词汇的克隆检测技术的研究现状进行了梳理,根据相似性算法中的基本计算粒度将其分为4类,并对10余个技术特征进行了分析和总结,讨论其局限性及面临的挑战,最后结合新技术的发展提出了基于词汇的克隆检测技术未来可能的研究方向。 展开更多
关键词 软件安全 源代码克隆检测 代码表征 深度学习
下载PDF
基于对比学习的跨语言代码克隆检测方法
8
作者 吕泉润 谢春丽 +1 位作者 万泽轩 魏家劲 《计算机应用研究》 CSCD 北大核心 2024年第7期2147-2152,共6页
代码克隆检测是提高软件开发效率、软件质量和可靠性的重要手段。基于抽象语法树(abstract syntax tree,AST)的单语言克隆检测已经取得了较为显著的效果,但跨语言代码的AST节点存在同义词、近义词且手工标注数据集成本高等问题,限制了... 代码克隆检测是提高软件开发效率、软件质量和可靠性的重要手段。基于抽象语法树(abstract syntax tree,AST)的单语言克隆检测已经取得了较为显著的效果,但跨语言代码的AST节点存在同义词、近义词且手工标注数据集成本高等问题,限制了现有克隆检测方法的有效性和实用性。针对上述问题,提出一种基于对比学习的树卷积神经网络(contrastive tree convolutional neuraln etwork,CTCNN)的跨语言代码克隆检测方法。该方法首先将不同编程语言的代码解析为AST,并对AST的节点类型和节点值作同义词转换处理,以降低不同编程语言AST之间的差异;同时,采用对比学习扩充负样本并对模型进行训练,使得在小样本数据集下能够最小化克隆对之间的距离,最大化非克隆对之间的距离。最后在公开数据集上进行了评测,精确度达到95.26%、召回率为99.98%、F_(1)为97.56%。结果表明,相较于现有的最好的CLCDSA和C4方法,该模型的检测精度分别提高了432%和3.73%,其F_(1)值分别提升了29.84%和6.29%,证明了所提模型是一种有效的跨语言代码克隆检测方法。 展开更多
关键词 跨语言 代码克隆 对比学习 抽象语法树
下载PDF
基于依赖增强的分层抽象语法树的代码克隆检测
9
作者 万泽轩 谢春丽 +1 位作者 吕泉润 梁瑶 《计算机应用》 CSCD 北大核心 2024年第4期1259-1268,共10页
在软件工程领域,基于语义相似的代码克隆检测方法可以降低软件维护的成本并预防系统漏洞,抽象语法树(AST)作为典型的代码抽象表征形式,已成功应用于多种程序语言的代码克隆检测任务,然而现有工作主要利用原始AST提取代码的语义,没有深... 在软件工程领域,基于语义相似的代码克隆检测方法可以降低软件维护的成本并预防系统漏洞,抽象语法树(AST)作为典型的代码抽象表征形式,已成功应用于多种程序语言的代码克隆检测任务,然而现有工作主要利用原始AST提取代码的语义,没有深入挖掘AST中的深层语义和结构信息。针对上述问题,提出一种基于依赖增强的分层抽象语法树(DEHAST)的代码克隆检测方法。首先,对AST进行分层处理,将AST划分得到不同的语义层次;其次,为AST的不同层次添加相应的依赖增强边构建DEHAST,将简单的AST变成具有更丰富程序语义的异构图;最后,使用图匹配网络(GMN)模型检测异构图的相似性,实现代码克隆检测。在BigCloneBench和Google Code Jam两个数据集上的实验结果显示,DEHAST能够检测100%的Type-1和Type-2代码克隆、99%的Type-3代码克隆和97%的Type-4代码克隆;与基于树的方法ASTNN(AST-based Neural Network)相比,F1分数均提高了4个百分点,验证了DEHAST可以较好地完成代码语义克隆检测。 展开更多
关键词 代码克隆检测 语义克隆 抽象语法树 深度学习 图匹配网络
下载PDF
雄激素受体调控的lncRNA ARLNC1对前列腺癌细胞增殖、克隆、迁移和细胞周期的影响
10
作者 郑江婷 尹冶 +1 位作者 寸淑娥 王玉明 《现代肿瘤医学》 CAS 2024年第2期220-226,共7页
目的:探讨雄激素受体(androgen receptor,AR)调控的长链非编码RNA(long non-coding RNA,lncRNA)ARLNC1对前列腺癌细胞增殖、克隆、迁移和细胞周期的影响。方法:选取正常前列腺上皮细胞株WPMY-1和前列腺癌细胞株PC3、VCaP、22RV1、DU145... 目的:探讨雄激素受体(androgen receptor,AR)调控的长链非编码RNA(long non-coding RNA,lncRNA)ARLNC1对前列腺癌细胞增殖、克隆、迁移和细胞周期的影响。方法:选取正常前列腺上皮细胞株WPMY-1和前列腺癌细胞株PC3、VCaP、22RV1、DU145和LNCaP为研究对象,qRT-PCR分析lncRNA ARLNC1的表达水平;双氢睾酮(DHT)以时间和浓度依赖的方式刺激LNCaP细胞,分析lncRNA ARLNC1的转录水平;采用数据库预测和双荧光素酶报告基因系统分析雄激素受体与lncRNA ARLNC1的关系;将LNCaP细胞分为sh-NC和sh-lncRNA ARLNC1组,采用CCK-8分析细胞增殖,检测细胞克隆和迁移能力;流式细胞仪分析细胞周期变化,Western blot分析细胞周期蛋白CyclinD1、CDK6、p27的表达水平。结果:与正常前列腺上皮细胞相比,lncRNA ARLNC1在雄激素依赖性前列腺癌细胞株(LNCaP、VCaP、22RV1)中的表达水平明显增加,而在雄激素非依赖性前列腺癌细胞株(PC3、DU145)中几乎不表达(P<0.05),其中LNCaP细胞变化最显著,所以下续选用LNCaP细胞作为实验株。100 nmol/L DHT刺激LNCaP细胞0、6、12、18、24 h后,lncRNA ARLNC1的转录水平相对于对照组以时间依赖的方式逐渐升高(P<0.05);不同浓度(0、0.1、1、10、100 nmol/L)DHT刺激LNCaP细胞24 h后,lncRNA ARLNC1转录水平随浓度不断增加(P<0.05);JASPAR数据库预测到lncRNA ARLNC1启动子区域有AR结合的位点,双荧光素酶报告基因系统表明AR能结合在lncRNA ARLNC1启动子区域,并激活其转录(P<0.05);与sh-NC组相比,sh-lncRNA ARLNC1组细胞增殖、迁移和克隆能力减弱,细胞周期阻滞在S、G 2期(P<0.05);sh-NC组相对于sh-lncRNA ARLNC1组,CyclinD1、CDK6蛋白水平增加,而p27蛋白水平降低(P<0.05)。结论:AR调控的lncRNA ARLNC1作为癌基因在雄激素受体阳性的前列腺癌细胞系中高表达,能促进前列腺癌细胞的增殖、克隆、迁移和细胞周期进展。 展开更多
关键词 前列腺癌 长链非编码RNA 雄激素受体 增殖 克隆 迁移 细胞周期
下载PDF
A Recommendation Approach Based on Bayesian Networks for Clone Refactor
11
作者 Ye Zhai Celimuge Wu +1 位作者 Dongsheng Liu Rongrong She 《Computers, Materials & Continua》 SCIE EI 2020年第9期1999-2012,共14页
Reusing code fragments by copying and pasting them with or without minor adaptation is a common activity in software development.As a result,software systems often contain sections of code that are very similar,called... Reusing code fragments by copying and pasting them with or without minor adaptation is a common activity in software development.As a result,software systems often contain sections of code that are very similar,called code clones.Code clones are beneficial in reducing software development costs and development risks.However,recent studies have indicated some negative impacts as a result.In order to effectively manage and utilize the clones,we design an approach for recommending refactoring clones based on a Bayesian network.Firstly,clone codes are detected from the source code.Secondly,the clones that need to be refactored are identified,and the static and evolutions features are extracted to build the feature database.Finally,the Bayesian network classifier is used for training and evaluating the classification results.Based on more than 640 refactor examples of five open source software developed in C,we observe a considerable enhancement.The results show that the accuracy of the approach is larger than 90%.We believe our approach will provide a more accurate and reasonable code refactoring and maintenance advice for software developers. 展开更多
关键词 clone code clone refactor feature extraction Bayesian network
下载PDF
牦牛DRA基因克隆测序及生物信息学分析
12
作者 张丽 王媛媛 +1 位作者 王瑞 刘丽霞 《浙江农业学报》 CSCD 北大核心 2023年第7期1564-1570,共7页
为全面解析牦牛MHCⅡ类基因结构与功能,采用分子克隆测序技术对大通牦牛DRA基因编码区进行等位基因频率估算并进行生物信息学分析。结果显示:大通牦牛DRA基因编码区含有762 bp的开放阅读框,共编码253个氨基酸;共有3个SNPs(g.2376C>T... 为全面解析牦牛MHCⅡ类基因结构与功能,采用分子克隆测序技术对大通牦牛DRA基因编码区进行等位基因频率估算并进行生物信息学分析。结果显示:大通牦牛DRA基因编码区含有762 bp的开放阅读框,共编码253个氨基酸;共有3个SNPs(g.2376C>T、g.2851C>G、g.3016C>A),其中第2、3外显子分别存在1个C→T的同义突变和C→A的错义突变(L→M),这两个突变均降低了大通牦牛DRA基因mRNA二级结构的稳定性;g.3016C>A突变前后编码蛋白质的分子量、原子总数、脂肪系数、不稳定系数、总平均亲水性方面存在差异;生物信息学的方法分析显示,BoLA-DRA基因是MHC基因家族中高度保守的基因。该研究结果可以为大通牦牛DRA基因结构与功能的研究奠定基础。 展开更多
关键词 DRA基因 编码区克隆 突变位点 生物信息学 大通牦牛
下载PDF
数据挖掘技术在计算机软件工程中的应用研究 被引量:1
13
作者 陈利 《信息与电脑》 2023年第18期26-29,共4页
随着计算机技术的发展和数据的增长,数据挖掘在各领域都有广泛的应用前景。基于此,文章分析了数据挖掘技术在计算机软件工程中的应用。首先,介绍数据挖掘技术,了解该技术在计算机软件工程中的应用流程。其次,总结数据挖掘技术的常用方... 随着计算机技术的发展和数据的增长,数据挖掘在各领域都有广泛的应用前景。基于此,文章分析了数据挖掘技术在计算机软件工程中的应用。首先,介绍数据挖掘技术,了解该技术在计算机软件工程中的应用流程。其次,总结数据挖掘技术的常用方法。最后,从软件项目管理、代码克隆检测、程序规约、版本控制信息、软件故障检测与修复以及源代码开发6方面,总结数据挖掘技术的应用要点。通过分析数据挖掘技术在计算机软件工程中应用的价值和优势,以期为从事数据挖掘技术和研究的相关读者提供参考。 展开更多
关键词 数据挖掘技术 软件项目管理 代码克隆检测 程序规约
下载PDF
基于代码相似性的测试用例重用及生成方法
14
作者 刘巧韵 杨秋辉 +2 位作者 洪玫 刘美英 刘盈盈 《计算机工程与设计》 北大核心 2023年第10期2950-2955,共6页
为在测试用例自动化生成中有效利用现有用例信息,降低测试用例生成成本,提高生成效率,提出一种基于代码相似性的测试用例重用及生成方法。设计基于文本和度量的被测代码相似性检测方法,分别从语法和语义上检测并划分相似类型;针对不同... 为在测试用例自动化生成中有效利用现有用例信息,降低测试用例生成成本,提高生成效率,提出一种基于代码相似性的测试用例重用及生成方法。设计基于文本和度量的被测代码相似性检测方法,分别从语法和语义上检测并划分相似类型;针对不同相似类型,采用更名重用和补充重用生成测试用例。将代码相似性应用于测试用例生成,综合考虑代码的语法、语义等多维相似信息,提升代码相似性检测的准确性,能更有效运用重用技术提升测试用例生成效率。实验结果表明,所提方法具有更高的重用召回率和重用精度,在相同时间成本下生成的测试用例覆盖率更高。 展开更多
关键词 单元测试 测试用例自动化生成 测试用例重用 代码相似性检测 代码克隆 语法相似性 语义相似性
下载PDF
基于Transformer和卷积神经网络的代码克隆检测
15
作者 贲可荣 杨佳辉 +1 位作者 张献 赵翀 《郑州大学学报(工学版)》 CAS 北大核心 2023年第6期12-18,共7页
基于深度学习的代码克隆检测方法往往作用在代码解析的词序列上或是整棵抽象语法树上,使用基于循环神经网络的时间序列模型提取特征,这会遗漏源代码的重要语法语义信息并诱发梯度消失。针对这一问题,提出一种基于Transformer和卷积神经... 基于深度学习的代码克隆检测方法往往作用在代码解析的词序列上或是整棵抽象语法树上,使用基于循环神经网络的时间序列模型提取特征,这会遗漏源代码的重要语法语义信息并诱发梯度消失。针对这一问题,提出一种基于Transformer和卷积神经网络的代码克隆检测方法(TCCCD)。首先,TCCCD将源代码表示成抽象语法树,并将抽象语法树切割成语句子树输入给神经网络,其中,语句子树由先序遍历得到的语句结点序列构成,蕴含了代码的结构和层次化信息。其次,在神经网络设计方面,TCCCD使用Transformer的Encoder部分提取代码的全局信息,再利用卷积神经网络捕获代码的局部信息。再次,融合2个不同网络提取出的特征,学习得到蕴含词法、语法和结构信息的代码向量表示。最后,采用两段代码向量的欧氏距离表征语义关联程度,训练一个分类器检测代码克隆。实验结果表明:在OJClone数据集上,精度、召回率、F 1值分别能达到98.9%、98.1%和98.5%;在BigCloneBench数据集上,精度、召回率、F 1值分别能达到99.1%、91.5%和94.2%。与其他方法对比,精度、召回率、F 1值均有提升,所提方法能够有效检测代码克隆。 展开更多
关键词 代码克隆检测 抽象语法树(AST) TRANSFORMER 卷积神经网络 代码特征提取
下载PDF
基于克隆检测技术的性能Bugs查找
16
作者 邓子含 徐云 《计算机系统应用》 2023年第7期57-64,共8页
性能bug是指代码中降低程序运行效率的缺陷.现有的检测工具只能查找特定类型的性能bug并且需要复杂的程序分析过程,因而缺乏通用性并且时空开销巨大.同时,有许多经典的克隆检测技术被用于一般性相似代码检测,但是它们只能检测高度相似... 性能bug是指代码中降低程序运行效率的缺陷.现有的检测工具只能查找特定类型的性能bug并且需要复杂的程序分析过程,因而缺乏通用性并且时空开销巨大.同时,有许多经典的克隆检测技术被用于一般性相似代码检测,但是它们只能检测高度相似的代码或者需要依赖训练集,使得它们难以用于在真实数据集中查找性能bug.基于此,通过构建带有标记token的代码模板,本文提出一种使用克隆检测技术来查找多种类型的性能bug的方法.通过对不同类型和频度的token标记不同的权重,本文提出的方法可以区分其重要性并因此提取出代码中的关键信息.在真实项目构成的数据集上的实验表明,本方法可以发现更多类型的性能bug同时比现有工具耗时更少.另一项实验也证明了本方法显著提升了基于token的克隆检测技术的检测能力,相比于现有的克隆检测方法更适合用于性能bug查找. 展开更多
关键词 性能bug检测 代码克隆检测 代码模板 带标记的token
下载PDF
基于Token编辑距离检测克隆代码 被引量:13
17
作者 张久杰 王春晖 +2 位作者 张丽萍 侯敏 刘东升 《计算机应用》 CSCD 北大核心 2015年第12期3536-3543,共8页
针对当前Type-3克隆代码检测工具较少、效率偏低等问题,提出了一种基于Token的能有效检测Type-3克隆代码的检测方法。该方法同时能有效检测Type-1和Type-2克隆代码。首先将源代码Token化得到特定代码粒度的Token串,其次将所有Token串的... 针对当前Type-3克隆代码检测工具较少、效率偏低等问题,提出了一种基于Token的能有效检测Type-3克隆代码的检测方法。该方法同时能有效检测Type-1和Type-2克隆代码。首先将源代码Token化得到特定代码粒度的Token串,其次将所有Token串的定长子串进行映射,在对映射信息进行查询的基础上,利用编辑距离算法确定克隆对,然后通过并查集算法快速构建克隆群,最终反馈克隆代码信息。实现了原型工具FClones,利用基于代码突变的框架对工具进行了评价,并与领域内较优秀的两款工具Ni Cad及Sim Cad进行了对比。实验结果表明,FClones在检测三类克隆代码时查全率均不低于95%,查准率均不低于98%,能更好地检测Type-3克隆代码。 展开更多
关键词 克隆代码 克隆检测 编辑距离 Type-3 TOKEN
下载PDF
基于软件多版本演化提取克隆谱系 被引量:10
18
作者 涂颖 张丽萍 +2 位作者 王春晖 侯敏 刘东升 《计算机应用》 CSCD 北大核心 2015年第4期1169-1173,1178,共6页
针对单个版本克隆检测结果不足以体现克隆特征这一问题,从软件多版本中自动提取克隆谱系,获得克隆在软件演化过程中表现出的模式和特征。首先基于克隆代码Token表示及其所在文件名称、函数名称等位置属性,准确映射软件历时演化版本间的... 针对单个版本克隆检测结果不足以体现克隆特征这一问题,从软件多版本中自动提取克隆谱系,获得克隆在软件演化过程中表现出的模式和特征。首先基于克隆代码Token表示及其所在文件名称、函数名称等位置属性,准确映射软件历时演化版本间的克隆代码,进而识别克隆演化模式;然后匹配克隆类ID号,合并所有相邻版本间的映射结果及演化模式信息,得到克隆谱系。同时开发了相应的克隆谱系自动提取工具FCG对6款开源软件进行了测试,发现当前版本中克隆代码平均生命周期占所研究版本总数的70%以上,且大部分没有发生变化,说明大部分克隆能被较好地维护,但也存在少量不稳定的克隆可能导致软件缺陷,需要修改或重构。实验结果表明FCG可高效提取克隆谱系,有助于更好地理解克隆及有针对性地管理克隆。 展开更多
关键词 克隆代码 克隆谱系 多版本 克隆演化 软件维护
下载PDF
克隆代码技术研究综述 被引量:13
19
作者 史庆庆 孟繁军 +1 位作者 张丽萍 刘东升 《计算机应用研究》 CSCD 北大核心 2013年第6期1617-1623,共7页
软件系统中克隆代码的检测与管理是软件工程中的基本问题之一,在软件的质量、维护、架构、进化、专利和剽窃等众多领域有着广泛的应用需求。综述了克隆检测的过程、技术及其优缺点、克隆进化方向上的相关研究,以及克隆管理的一些技术,... 软件系统中克隆代码的检测与管理是软件工程中的基本问题之一,在软件的质量、维护、架构、进化、专利和剽窃等众多领域有着广泛的应用需求。综述了克隆检测的过程、技术及其优缺点、克隆进化方向上的相关研究,以及克隆管理的一些技术,并特别介绍了克隆重构技术。最后概括了该领域所取得的研究成果,并讨论了目前克隆代码研究中所遇到的挑战性问题。 展开更多
关键词 克隆代码 克隆检测 克隆进化 克隆管理 克隆重构
下载PDF
基于主题建模技术的克隆群映射方法 被引量:11
20
作者 张瑞霞 张丽萍 +1 位作者 王春晖 侯敏 《计算机工程与设计》 北大核心 2015年第6期1524-1529,共6页
针对对源代码进行拷贝、粘贴及修改活动会导致软件中出现大量的克隆代码的问题,将主题建模技术应用于克隆代码,提出一种克隆群映射方法。运用主题建模技术将映射问题由高维的代码空间转化到低维的主题空间上,通过主题的映射间接实现映... 针对对源代码进行拷贝、粘贴及修改活动会导致软件中出现大量的克隆代码的问题,将主题建模技术应用于克隆代码,提出一种克隆群映射方法。运用主题建模技术将映射问题由高维的代码空间转化到低维的主题空间上,通过主题的映射间接实现映射相邻版本克隆群的目的。对4款开源软件进行方法评估,实验结果表明,使用该方法的查全率和查准率均高达0.99,其能够有效准确地实现相邻版本的克隆群映射。 展开更多
关键词 克隆代码 软件演化 主题 主题建模 克隆群映射
下载PDF
上一页 1 2 8 下一页 到第
使用帮助 返回顶部