【Software Clone】2014-IEEE-Towards a Big Data Curated Benchmark of Inter-Project Code Clones

Abstract
大数据的克隆检测和搜索算法已经作为嵌入在应用中的一部分.
本文推出一个代码检测基准.包含一些已知的真假克隆代码.其中包括600万条真克隆(包含type-1,type-2,type-3,type-4).
S1 Introduction
IJaDataset 2.0包含25,000个系统,365MLOC(Million Lines of Code).通过人工标记找出实现相似功能的代码,10个功能,包含6百万真克隆对,26万假克隆对.其他的基准都不存在对语义克隆的检测.
S2 background
代码段:包含一个三元组(l,s,e):l表示源文件,s表示开始的行号,e表示结束的行号.
克隆对:(f1, f2, φ),f1和f2表示相似片段,φ表示相似度;
克隆类:(f1, f2, ..., fn, φ),相似代码片段的集合.
参考之前4中类型的代码克隆:
Type-1: Syntactically identical code snippets, except fordifferences in white space, layout and comments.
Type-2: Syntactically identical code snippets, except for differences in identifier names, literal values, white space,layout and comments.
Type-3: Syntactically similar code snippets that differ at the statement level. Snippets have statements added, modified and/or removed with respect to each other.
Type-4: Syntactically dissimilar code snippets that implement the same functionality.
S3 建立基准的方法
确定一个常用的代码功能,然后寻找可能是克隆的代码(候选代码).通过人工标记这些代码的真假.
A.片段标记
B.真克隆对
C.假克隆对
S4 总结
S5 评估克隆检测工具
:基准中的所有的真克隆对集合
:检测工具检测到的克隆对
召回率
精确度
S6 数据集的应用
S6 效度威胁
S7 总结
数据集既考虑的语义,也考虑了语法相似.
总:本文主要是讲IJaDataset 2.0这个数据集的介绍.下载地址.下载下来之后,解压可以看到

sample:


这个sql文件有3.72G
创建postgresql数据库,然后直接执行sql语句就可以了.
【Software Clone】2014-IEEE-Towards a Big Data Curated Benchmark of Inter-Project Code Clones的更多相关文章
- 【Software Test】Introduction to Software Testing
Introduction to Software Testing 文章目录 Going to Learn --. Evolution of The Software Industry Errors, ...
- 【Software Test】Basic Of ST
文章目录 Learning Objective Introduction Software Applications Before Software Testing What is testing? ...
- 【编程练习】最近准备开始找工作,这篇文章作为一个code练手题目的总结吧
找工作时候一般需要准备的算法题目类型,其实参考leetcode和poj或者剑指offer基本能够摆平大部分的题目了 1.图的遍历,BFS.DFS: 2.递归的回溯剪枝: 3.树的建立和遍历: 4.状态 ...
- 【Deep Learning】Hinton. Reducing the Dimensionality of Data with Neural Networks Reading Note
2006年,机器学习泰斗.多伦多大学计算机系教授Geoffery Hinton在Science发表文章,提出基于深度信念网络(Deep Belief Networks, DBN)可使用非监督的逐层贪心 ...
- 60款开源云应用【Part 2】(60 Open Source Apps You Can Use in the Cloud)
60款开源云应用[Part 2](60 Open Source Apps You Can Use in the Cloud) 本篇翻译自http://www.datamation.com/open-s ...
- 【Oracle经典】132个oracle热门精品资料——下载目录
电子书为网友wglzaj精心整理,这批资料下载量好评率都非常高,广受oracle学习者欢迎.文档共整理了12个精品专题和120个热门资料的下载地址,推荐给大家希望大家喜欢. 目录0豆下载地址:http ...
- 【读书笔记】《Computer Organization and Design: The Hardware/Software Interface》(1)
笔记前言: <Computer Organization and Design: The Hardware/Software Interface>,中文译名,<计算机组成与设计:硬件 ...
- 【更新链接】U盘启动制作工具(UDTOOL) v3.0.2014.0427
[校验值] 文件: UDTOOLV3_Setup.exe大小: 525 MB版本: 3.0.2014.0427时间: 2014年4月27日MD5: 2E5187B7D9081E8A69B4DC45C8 ...
- 大学生程序猿IT情书“2014爱的告白挑战赛”获奖名单及优秀情书展示系列之 - 【IT术语】情书+【搞笑另类】情书
经过专家评委们的层层精心评选和认真讨论,恭喜下面同学终于入选CSDN高校俱乐部"大学生程序猿IT情书2014爱的告白挑战赛活动"优胜者名单.获奖者将在本周内收到邮件通知.请依照邮件 ...
随机推荐
- 微信小程序笔记(二)
微信小程序环境搭建与开发工具介绍 2-1 开篇介绍及下载工具 1.开发工具下载地址: http://t.cn/RVKH0HS 2.下载安装对应版本:win32,win64,mac; 2-2 小程序 ...
- python连接数据库
使用pymysql://安装pymysqlpip install pymysql 代码: # coding=utf8 import pymysql # 创建连接对象 conn = pymysql.co ...
- UWP开发-二维变换以及三维变换
在开发中,由于某些需求,我们可能需要做一些平移,缩放,旋转甚至三维变换,所以我来讲讲在UWP中这些变换的实现方法. 一. 二维变换: UIElement.RenderTransform a.Trans ...
- iOS开发中使用CocoaPods来管理第三方的依赖程序
之前也碰到类似的问题,怎样去管理这些第三方的文件,虽然手动添加也不算麻烦. 写这篇文章主要参考了唐巧的博文,链接如下: http://blog.devtang.com/blog/2012/12/02/ ...
- delegate 集成在类中,还是单独写在.h文件中?
转:http://stackoverflow.com/questions/11382057/declaring-a-delegate-protocol There definitely are sub ...
- iptables防火墙原理详解
1. netfilter与iptables Netfilter是由Rusty Russell提出的Linux 2.4内核防火墙框架,该框架既简洁又灵活,可实现安全策略应用中的许多功能,如数据包过滤.数 ...
- Xamarin.Forms bug? System.ObjectDisposedException: Cannot access a disposed object
Hi, My Android Xamarin.Forms application uses a Navigation stack to display various views, I often h ...
- Java web实时进度条整个系统共用(如java上传进度条、导入excel进度条等)
先上图: 这上文件上传的: 这是数据实时处理的: 1:先说说什么是进度条:进度条即计算机在处理任务时,实时的,以图片形式显示处理任务的速度,完成度,剩余未完成任务量的大小,和可能需要处理时间,显示方式 ...
- cer pfx格式数字证书区别
作为文件形式存在的证书一般有这几种格式: 1.带有私钥的证书 由Public Key Cryptography Standards #12,PKCS#12标准定义,包含了公钥和私钥的二进制格式的证书形 ...
- asp 时间倒数后按钮可用
<asp:Button runat="server" ID="btn" Text="免费获取验证码" onclick="bt ...


:基准中的所有的真克隆对集合
:检测工具检测到的克隆对
召回率
精确度