基于软件多版本演化的克隆家系提取研究

基本信息
批准号:61462071
项目类别:地区科学基金项目
资助金额:44.00
负责人:张丽萍
学科分类:
依托单位:内蒙古师范大学
批准年份:2014
结题年份:2018
起止时间:2015-01-01 - 2018-12-31
项目状态: 已结题
项目参与者:刘东升,王春晖,范鹏程,侯敏,尹丽丽,涂颖,张瑞霞,张久杰
关键词:
克隆群映射克隆家系克隆演化模式克隆代码
结项摘要

Clone detection, management and understanding are significant researches in software engineering. They have wide requirements and applications in many fields, such as software maintenance, evolution, architecture, reuse, licensing, anti-plagiarism and so on.For the key problem clone genealogies extraction, we carry out further studies on clone detection, clone group mapping, clone evolution pattern recognition, and clone genealogy extraction based on available results. By choosing the proper granularity of clones, present an optimized algorithm implement the efficient clone detection and reduces the time and space complexity of existing algorithm, map clone groups between adjacent versions of software accurately based on clone detection results, identify the origin of a code clone by its content and position, and then determine evolution pattern between clone groups, extract clone genealogies by combine clone lineages originated from the same clone group, and realize its visualization. At last, an experimental system is obtained, which is portable, language-independent, and visual, for automatically extract clone genealogies. The achievements will provide reference of code clones evolution analysis, thus provide powerful support to the management and maintenance of code clones.

克隆代码检测、管理和理解是软件工程的重要研究内容,其在软件维护、演化、架构、复用及软件授权、反剽窃等众多领域有广泛的需求与应用。基于已有研究成果,针对"克隆家系提取"这一关键问题,围绕"检测克隆代码"、"建立克隆群映射"、"识别克隆演化模式"、"提取克隆家系"四个具体核心问题深入开展研究。通过选取适当克隆代码粒度,提出改进算法实现高效检测克隆代码,并达到降低现有算法时空复杂度的目的;基于克隆检测结果,准确映射历时演化文件版本间的克隆群;从克隆片段的内容和位置两个方面来确定克隆片段的起源,从而确定克隆群之间的演化模式;把具有共同祖先的直系克隆提取出来组成克隆家系,并对其实现可视化。最终,设计开发一个与程序设计语言无关的、可移植的、可视化的克隆家系提取实验系统。预期成果将为克隆代码的演化分析提供参考,从而为克隆代码的管理和维护提供有力的支持。

项目摘要

在软件工程领域中,克隆代码检测、分析和管理是其重要的研究内容,在软件维护、演化、架构、复用及软件授权、反剽窃等众多领域有着广泛的需求与应用。本项目针对“克隆家系提取”这一关键问题,从检测克隆代码、建立克隆群映射、识别克隆演化模式、提取克隆家系四个方面进行研究。主要包括如下内容:通过选取适当克隆代码粒度,开发了一款基于Token编辑距离的克隆检测工具以实现高效检测克隆代码,该检测工具的匹配过程更加严格,进一步提高了查全率与查准率;基于克隆检测结果,提出了基于LDA和DBSCAN的软件多版本克隆群映射方法,准确映射历时演化文件多版本间的克隆群;结合克隆群内克隆片段数量以及内容的变化方式将克隆群分为静态、新增、去除、相同、分离、合并、 一致和不一致等八种短期演化模式,使克隆的演化过程更加清晰全面;串联所有版本中的克隆映射关系和演化模式构建克隆家系,将获得的克隆家系结果存储在XML文件中,便于后续研究中的提取使用。运用多种方法进行克隆映射和演化模式的识别,解决了克隆映射粒度较粗和演化模式识别繁琐等问题,构建了多版本的克隆家系。“克隆家系”的研究是本项目的核心,也是项目申请的主要内容。随着项目的推进,在克隆家系的基础上,项目组还分析了克隆代码不同演化模式的Bugs倾向性研究,并利用软件的演化历史,对需要重构的克隆代码进行识别与推荐。这些扩展研究不仅丰富了“克隆家系”的研究内容,还对克隆家系的研究结果进一步应用与实践。围绕本项目研究内容,项目组成员发表论文14篇,申请软件著作权5项,实现克隆群映射系统和克隆家系提取系统各一个,超额完成了项目计划任务书中预订的各项任务。项目的完成对有克隆代码的深入研究有重要理论意义,为克隆代码的演化分析提供参考,为克隆代码的管理和维护提供有力的支持,这些研究工作对学界和产业界的相关工作都具有非常重要的研究价值和现实意义。

项目成果
{{index+1}}

{{i.achievement_title}}

{{i.achievement_title}}

DOI:{{i.doi}}
发表时间:{{i.publish_year}}

暂无此项成果

数据更新时间:2023-05-31

其他相关文献

1

演化经济地理学视角下的产业结构演替与分叉研究评述

演化经济地理学视角下的产业结构演替与分叉研究评述

DOI:10.15957/j.cnki.jjdl.2016.12.031
发表时间:2016
2

监管的非对称性、盈余管理模式选择与证监会执法效率?

监管的非对称性、盈余管理模式选择与证监会执法效率?

DOI:
发表时间:2016
3

宁南山区植被恢复模式对土壤主要酶活性、微生物多样性及土壤养分的影响

宁南山区植被恢复模式对土壤主要酶活性、微生物多样性及土壤养分的影响

DOI:10.7606/j.issn.1000-7601.2022.03.25
发表时间:2022
4

青藏高原狮泉河-拉果错-永珠-嘉黎蛇绿混杂岩带时空结构与构造演化

青藏高原狮泉河-拉果错-永珠-嘉黎蛇绿混杂岩带时空结构与构造演化

DOI:10.3799/dqkx.2020.083
发表时间:2020
5

基于全模式全聚焦方法的裂纹超声成像定量检测

基于全模式全聚焦方法的裂纹超声成像定量检测

DOI:10.19650/j.cnki.cjsi.J2007019
发表时间:2021

张丽萍的其他基金

批准号:20472092
批准年份:2004
资助金额:23.00
项目类别:面上项目
批准号:30973732
批准年份:2009
资助金额:32.00
项目类别:面上项目
批准号:31471586
批准年份:2014
资助金额:80.00
项目类别:面上项目
批准号:29972042
批准年份:1999
资助金额:13.00
项目类别:面上项目
批准号:41471221
批准年份:2014
资助金额:82.00
项目类别:面上项目
批准号:40271071
批准年份:2002
资助金额:30.00
项目类别:面上项目
批准号:20672122
批准年份:2006
资助金额:32.00
项目类别:面上项目
批准号:81673911
批准年份:2016
资助金额:61.00
项目类别:面上项目
批准号:30660231
批准年份:2006
资助金额:21.00
项目类别:地区科学基金项目
批准号:30671371
批准年份:2006
资助金额:8.00
项目类别:面上项目
批准号:30460161
批准年份:2004
资助金额:18.00
项目类别:地区科学基金项目
批准号:20973189
批准年份:2009
资助金额:35.00
项目类别:面上项目
批准号:20073051
批准年份:2000
资助金额:16.00
项目类别:面上项目
批准号:11402224
批准年份:2014
资助金额:25.00
项目类别:青年科学基金项目
批准号:41877065
批准年份:2018
资助金额:61.00
项目类别:面上项目
批准号:41606193
批准年份:2016
资助金额:20.00
项目类别:青年科学基金项目
批准号:40802086
批准年份:2008
资助金额:20.00
项目类别:青年科学基金项目
批准号:30960134
批准年份:2009
资助金额:25.00
项目类别:地区科学基金项目

相似国自然基金

1

基于多版本技术的自适应编译优化方法研究

批准号:60873057
批准年份:2008
负责人:吴承勇
学科分类:F0202
资助金额:31.00
项目类别:面上项目
2

基于分片复用的多版本容器镜像加载方法研究

批准号:61602454
批准年份:2016
负责人:徐继伟
学科分类:F0204
资助金额:20.00
项目类别:青年科学基金项目
3

基于人声检测及分离的多版本流行音乐检索关键技术研究

批准号:61171128
批准年份:2011
负责人:李伟
学科分类:F0117
资助金额:60.00
项目类别:面上项目
4

网构软件多策略信任演化博弈机制研究

批准号:61272186
批准年份:2012
负责人:印桂生
学科分类:F0201
资助金额:80.00
项目类别:面上项目