首页> 外文期刊>Software >Automated scheduling for clone-based refactoring using a competent GA
【24h】

Automated scheduling for clone-based refactoring using a competent GA

机译:使用主管GA自动调度基于克隆的重构

获取原文
获取原文并翻译 | 示例
       

摘要

Refactoring is a widely accepted technique to improve the software quality by restructuring its design without changing its behavior. In general, a sequence of refactorings needs to be applied until the quality of the code is improved satisfactorily. In this case, the final design after refactoring can vary with the application order of refactorings, thereby producing different quality improvements. Therefore, it is necessary to determine a proper refactoring schedule to obtain as many benefits as possible. However, there is little research on the problem of generating appropriate schedules to maximize quality improvement. In this paper, we propose an approach to automatically determine an appropriate schedule to maximize quality improvement through refactoring. We first detect code clones that are suitable for refactoring and generate the most beneficial refactoring schedule to remove them. It is straightforward to select the best from the exhaustively enumerated schedules. However, such a technique becomes NP-hard, as the number of available refactorings increases. We apply a genetic algorithm (GA) to generate the best refactoring schedule within a reasonable time to cope with this problem. We compare the GA-based approach with manual scheduling, greedy heuristic-based, and exhaustive approaches for four open systems. The results show that the proposed GA-based approach generates more beneficial schedules than the others.
机译:重构是一种广泛接受的技术,它通过在不改变其行为的情况下对其结构进行重组来提高其软件质量。通常,需要执行一系列重构,直到令人满意地提高代码质量为止。在这种情况下,重构后的最终设计会随重构的应用顺序而变化,从而产生不同的质量改进。因此,有必要确定适当的重构时间表以获取尽可能多的好处。但是,关于生成适当的时间表以最大程度提高质量的问题的研究很少。在本文中,我们提出了一种方法,该方法可以自动确定适当的时间表,以通过重构最大程度地提高质量。我们首先检测适合重构的代码克隆,并生成最有利的重构计划以将其删除。从详尽列举的时间表中选择最佳是很简单的。但是,随着可用重构次数的增加,这种技术变得难以处理。我们应用遗传算法(GA)在合理的时间内生成最佳的重构计划来解决此问题。我们将基于GA的方法与手动调度,基于贪婪启发式的方法以及针对四个开放系统的详尽方法进行了比较。结果表明,所提出的基于遗传算法的方法产生了比其他方法更有利的进度。

著录项

  • 来源
    《Software》 |2011年第5期|p.521-550|共30页
  • 作者单位

    Department of Computer Science, College of Information Science and Technology, KAIST, 335 Gwahak-ro,Yuseong-gu, Daejeon, South Korea;

    Department of Computer Science, College of Information Science and Technology, KAIST, 335 Gwahak-ro,Yuseong-gu, Daejeon, South Korea;

    Pusan National University, Geumjeong-gu, Busan, South Korea;

    Department of Computer Science, College of Information Science and Technology, KAIST, 335 Gwahak-ro,Yuseong-gu, Daejeon, South Korea;

    Department of Computer Science, College of Information Science and Technology, KAIST, 335 Gwahak-ro,Yuseong-gu, Daejeon, South Korea;

  • 收录信息 美国《科学引文索引》(SCI);美国《工程索引》(EI);
  • 原文格式 PDF
  • 正文语种 eng
  • 中图分类
  • 关键词

    refactoring; scheduling; genetic algorithm;

    机译:重构排程遗传算法;
  • 入库时间 2022-08-17 13:03:52

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号