基于监控与反馈的软件重构机会检测方法研究

结题报告
项目介绍
AI项目解读

基本信息

  • 批准号:
    61472034
  • 项目类别:
    面上项目
  • 资助金额:
    80.0万
  • 负责人:
  • 依托单位:
  • 学科分类:
    F0203.软件理论、软件工程与服务
  • 结题年份:
    2018
  • 批准年份:
    2014
  • 项目状态:
    已结题
  • 起止时间:
    2015-01-01 至2018-12-31

项目摘要

Software refactoring is an effective means to improve software quality. Automated identification of refactoring opportunities is a hot topic in this field. Existing approaches identify refactoring opportunities by detecting code smells based on static source code analysis. They ignored the fact that characters of refactoring participants and software applications might influence identification of refactoring opportunities. To this end, we would investigate how to adjust thresholds for existing approaches according to feedback from users. We would also investigate how to identify similar refactoring opportunities according to current refactorings. Finally, we would investigate how to discover refactoring orders by minding refactoring history, and how to identify related refactoring opportunities according to current refactorings. Identification of refactoring opportunities according to current refactorings relies less on formal definition of code smells and characters of refactoring participants and software applications. Besides this benefit, the proposed approach could cooperate with existing code smell-based approaches to improve recall.
软件重构是提高软件质量的一个有效手段。重构机会的自动检测是其中的一个难点和热点问题。现有检测方法主要基于源代码的静态分析,通过检测代码坏味以寻找重构机会。现有方法过于依赖代码坏味的形式描述以及代码静态分析技术,忽视了程序员以及应用程序的个体差异对重构机会检测的影响。为此本项目计划研究如何根据程序员对检测结果的反馈动态优化调整现有检测算法的阈值设置,从而降低程序员和应用程序的个体差异对检测算法的影响;拟以"重命名"为例研究如何根据程序员的当前重构推荐类似重构机会及重构方案;计划挖掘重构历史数据找出时序上紧密相连的重构操作,分析前后重构之间的内在联系,进而提出相应的规则以根据当前重构推荐相关重构机会及重构方案。基于当前重构推荐相似及相关重构的方法既降低了对代码坏味形式化描述的依赖,也降低了程序员和应用程序的个体差异对检测算法的影响。此外该方法与基于代码坏味的检测方法可互为补充从而提高查全率。

结项摘要

软件重构机会的自动检测对软件开发与维护具有重要意义,但现有的检测方法过于依赖代码坏味的形式化描述以及源代码的静态分析,忽视了重构参与人员及应用程序的个体差异对重构机会检测的影响。为此,本项目研究分析了重构参与者对重构机会检测结果的反馈,提出了基于反馈的代码坏味阈值动态优化方法;研究分析了重构操作的内在联系,提出了基于监控的相似重构机会检测方法;研究分析了需求-代码追踪关系对软件重构的影响,提出了基于需求追踪关系的重构方案推荐方法。这些方法很好地利用了软件重构的上下文信息,避免了对代码静态结构的过度依赖,提高了重构机会推荐的准确率和召回率。此外,项目探索研究了基于深度学习的重构机会推荐方法,提出了反重构(anti-refactoring)的概念,很好地解决了训练数据的问题,为基于深度学习的重构推荐奠定了基础。在此基础上,研究提出了基于深度学习的特征依恋检测方法、基于深度学习的上帝类检测方法、基于深度学习的长函数检测方法等一系列的代码坏味检测方法,大幅度提高了重构推荐的准确率和召回率。针对最常见的重命名重构,提出了基于文本相似性的重命名推荐方法以及缩写词自动扩展方法。针对冗长重构菜单的选择困难,研究分析了重构参与者针对不同重构类型的代码选择模式,提出了重构菜单项的动态排序方法等。课题组还设计并实施相关实验,初步证明了以上研究成果的有效性。上述研究成果深入探索了基于多源信息和深度学习的重构推荐方法,对后续软件重构的研究具有重要意义。基于理论研究成果研发的相关工具也较大幅度地提高了软件重构的自动化水平以及软件重构的效率和效果。相关研究成果发表于国内外一流学术期刊与学术会议。在软件工程领域的顶级国际期刊IEEE Transactions on Software Engineering上发表论文3篇;在ICSE、ASE等软件工程领域顶级国际会议发表论文2篇;在重要国际SCI期刊与主流国际会议发表录用论文10篇;在国内一级学报发表论文3篇;培养中青年学术骨干3人、博士研究生8人、硕士研究生9人。

项目成果

期刊论文数量(13)
专著数量(1)
科研奖励数量(3)
会议论文数量(5)
专利数量(4)
Automatic approval prediction for software enhancement requests
软件增强请求的自动批准预测
  • DOI:
    10.1007/s10515-017-0229-y
  • 发表时间:
    2018-06-01
  • 期刊:
    AUTOMATED SOFTWARE ENGINEERING
  • 影响因子:
    3.4
  • 作者:
    Nizamani, Zeeshan Ahmed;Liu, Hui;Niu, Zhendong
  • 通讯作者:
    Niu, Zhendong
Dynamic and Automatic Feedback-Based Threshold Adaptation for Code Smell Detection
用于代码气味检测的动态和自动基于反馈的阈值自适应
  • DOI:
    10.1109/tse.2015.2503740
  • 发表时间:
    2016-06
  • 期刊:
    IEEE Transactions on Software Engineering
  • 影响因子:
    7.4
  • 作者:
    Liu Hui;Liu Qiurong;Niu Zhendong;Liu Yang
  • 通讯作者:
    Liu Yang
基于代码库和特征匹配的函数名称推荐方法
  • DOI:
    --
  • 发表时间:
    2015
  • 期刊:
    软件学报
  • 影响因子:
    --
  • 作者:
    高原;刘辉;樊孝忠;牛振东
  • 通讯作者:
    牛振东
Dynamic Ranking of Refactoring Menu Items for Integrated Development Environment
集成开发环境重构菜单项动态排序
  • DOI:
    10.1109/access.2018.2883769
  • 发表时间:
    2018
  • 期刊:
    IEEE Access
  • 影响因子:
    3.9
  • 作者:
    Thida Oo;Hui Liu;Bridget Nyirongo
  • 通讯作者:
    Bridget Nyirongo
Automatic and Accurate Expansion of Abbreviations in Parameters
自动准确扩展参数缩写
  • DOI:
    10.1109/tse.2018.2868762
  • 发表时间:
    2020-07
  • 期刊:
    IEEE Transactions on Software Engineering
  • 影响因子:
    7.4
  • 作者:
    Yanjie Jiang;Hui Liu;Jiaqi Zhu;Lu Zhang
  • 通讯作者:
    Lu Zhang

数据更新时间:{{ journalArticles.updateTime }}

{{ item.title }}
{{ item.translation_title }}
  • DOI:
    {{ item.doi || "--"}}
  • 发表时间:
    {{ item.publish_year || "--" }}
  • 期刊:
    {{ item.journal_name }}
  • 影响因子:
    {{ item.factor || "--"}}
  • 作者:
    {{ item.authors }}
  • 通讯作者:
    {{ item.author }}

数据更新时间:{{ journalArticles.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.authors }}

数据更新时间:{{ monograph.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.authors }}

数据更新时间:{{ sciAawards.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.authors }}

数据更新时间:{{ conferencePapers.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.authors }}

数据更新时间:{{ patent.updateTime }}

其他文献

A New Model Using Multiple Feature Clustering and Neural Networks for Forecasting Hourly PM2.5 Concentrations, and Its Applications in China
使用多特征聚类和神经网络预测每小时 PM2.5 浓度的新模型及其在中国的应用
  • DOI:
    10.1016/j.eng.2020.05.009
  • 发表时间:
    2020-06
  • 期刊:
    Engineering
  • 影响因子:
    12.8
  • 作者:
    刘辉;龙治豪;段铸;施惠鹏
  • 通讯作者:
    施惠鹏
Wind speed forecasting using multi-scale feature adaptive extraction ensemble model with error regression correction
使用带有误差回归校正的多尺度特征自适应提取集成模型进行风速预测
  • DOI:
    10.1016/j.eswa.2022.117358
  • 发表时间:
    2022-04
  • 期刊:
    Expert Systems With Applications
  • 影响因子:
    8.5
  • 作者:
    陈俊;刘辉;陈超;段铸
  • 通讯作者:
    段铸
胃肠道癌症预后预测模型研究进展
  • DOI:
    10.19539/j.cnki.2095-2694.2020.05.016
  • 发表时间:
    2020
  • 期刊:
    华北理工大学学报(医学版)
  • 影响因子:
    --
  • 作者:
    常紫薇;刘辉;张秋萌;李兴雨;景丽伟;张超
  • 通讯作者:
    张超
太阳局部高分辨观测像的日球坐标自动标定
  • DOI:
    10.1360/n972019-00092
  • 发表时间:
    2019
  • 期刊:
    科学通报
  • 影响因子:
    --
  • 作者:
    季凯帆;刘辉;金振宇;尚振宏;强振平
  • 通讯作者:
    强振平
基于VSC的双馈风电场群宽频带次同步谐振抑制作用分析与实验
  • DOI:
    10.16081/j.epae.201909043
  • 发表时间:
    2019
  • 期刊:
    电力自动化设备
  • 影响因子:
    --
  • 作者:
    廖坤玉;肖湘宁;罗超;陶顺;杨志超;于弘洋;刘宗烨;刘辉
  • 通讯作者:
    刘辉

其他文献

{{ item.title }}
{{ item.translation_title }}
  • DOI:
    {{ item.doi || "--" }}
  • 发表时间:
    {{ item.publish_year || "--"}}
  • 期刊:
    {{ item.journal_name }}
  • 影响因子:
    {{ item.factor || "--" }}
  • 作者:
    {{ item.authors }}
  • 通讯作者:
    {{ item.author }}
empty
内容获取失败,请点击重试
重试联系客服
title开始分析
查看分析示例
此项目为已结题,我已根据课题信息分析并撰写以下内容,帮您拓宽课题思路:

AI项目思路

AI技术路线图

刘辉的其他基金

大规模高质量软件缺陷库的自动构建与应用
  • 批准号:
    62232003
  • 批准年份:
    2022
  • 资助金额:
    279 万元
  • 项目类别:
    重点项目
基于深度学习的软件重构推荐方法
  • 批准号:
  • 批准年份:
    2021
  • 资助金额:
    58 万元
  • 项目类别:
复杂服役环境车辆机电复合传动系统动力学设计及调控机制研究
  • 批准号:
    62172037
  • 批准年份:
    2021
  • 资助金额:
    310 万元
  • 项目类别:
    重点项目
车辆机电复合传动振动能量传递机理及主动控制研究
  • 批准号:
    51775040
  • 批准年份:
    2017
  • 资助金额:
    60.0 万元
  • 项目类别:
    面上项目
基于文本相似性的参数推荐与错误参数检测方法研究
  • 批准号:
    61772071
  • 批准年份:
    2017
  • 资助金额:
    60.0 万元
  • 项目类别:
    面上项目
基于正负刚度并联的汽车传动系统半主动扭振控制研究
  • 批准号:
    51375047
  • 批准年份:
    2013
  • 资助金额:
    83.0 万元
  • 项目类别:
    面上项目
软件重构对回归测试用例的影响及其修复方法研究
  • 批准号:
    61272169
  • 批准年份:
    2012
  • 资助金额:
    80.0 万元
  • 项目类别:
    面上项目
软件重构调度方法研究
  • 批准号:
    61003065
  • 批准年份:
    2010
  • 资助金额:
    20.0 万元
  • 项目类别:
    青年科学基金项目
车辆传动换挡过程非线性动力学建模与求解
  • 批准号:
    50905018
  • 批准年份:
    2009
  • 资助金额:
    20.0 万元
  • 项目类别:
    青年科学基金项目

相似国自然基金

{{ item.name }}
  • 批准号:
    {{ item.ratify_no }}
  • 批准年份:
    {{ item.approval_year }}
  • 资助金额:
    {{ item.support_num }}
  • 项目类别:
    {{ item.project_type }}

相似海外基金

{{ item.name }}
{{ item.translate_name }}
  • 批准号:
    {{ item.ratify_no }}
  • 财政年份:
    {{ item.approval_year }}
  • 资助金额:
    {{ item.support_num }}
  • 项目类别:
    {{ item.project_type }}
{{ showInfoDetail.title }}

作者:{{ showInfoDetail.author }}

知道了

AI项目解读示例

课题项目:调控A型流感病毒诱导IFN-β表达的机制研究

AI项目摘要:

本研究聚焦于TRIM2蛋白在A型流感病毒诱导的IFN-β表达中的调控机制。A型流感病毒是全球性健康问题,其感染可导致严重的呼吸道疾病。IFN-β作为关键的抗病毒因子,其表达水平对抗病毒防御至关重要。然而,TRIM2如何调控IFN-β的表达尚未明确。本研究假设TRIM2通过与病毒RNA或宿主因子相互作用,影响IFN-β的产生。我们将采用分子生物学、细胞生物学和免疫学方法,探索TRIM2与A型流感病毒诱导IFN-β表达的关系。预期结果将揭示TRIM2在抗病毒免疫反应中的作用,为开发新的抗病毒策略提供理论基础。该研究对理解宿主抗病毒机制具有重要科学意义,并可能对临床治疗流感病毒感染提供新的视角。

AI项目思路:

科学问题:TRIM2如何调控A型流感病毒诱导的IFN-β表达?
前期研究:已有研究表明TRIM2参与抗病毒反应,但其具体机制尚不明确。
研究创新点:本研究将深入探讨TRIM2在IFN-β表达中的直接作用机制。
技术路线:包括病毒学、分子生物学、细胞培养和免疫检测技术。
关键技术:TRIM2与病毒RNA的相互作用分析,IFN-β启动子活性检测。
实验模型:使用A型流感病毒感染的细胞模型进行研究。

AI技术路线图

        graph TD
          A[研究起始] --> B[文献回顾与假设提出]
          B --> C[实验设计与方法学准备]
          C --> D[A型流感病毒感染模型建立]
          D --> E[TRIM2与病毒RNA相互作用分析]
          E --> F[TRIM2对IFN-β启动子活性的影响]
          F --> G[IFN-β表达水平测定]
          G --> H[TRIM2功能丧失与获得研究]
          H --> I[数据收集与分析]
          I --> J[结果解释与科学验证]
          J --> K[研究结论与未来方向]
          K --> L[研究结束]
      
关闭
close
客服二维码