MIRROR: multi-objective refactoring recommendation via correlation analysis

被引:0
|
作者
Yang Zhang
Ke Guan
Lining Fang
机构
[1] Hebei University of Science and Technology,School of Information Science and Engineering
[2] Hebei Technology Innovation Center of Intelligent IoT,undefined
来源
关键词
Refactoring; Multi-objective optimization; Refactoring recommendation; Correlation analysis;
D O I
暂无
中图分类号
学科分类号
摘要
Refactoring is a critical but complex process to improve code quality by altering software structure without changing the observable behavior. Search-based approaches have been proposed to recommend refactoring solutions. However, existing works tend to leverage all the sub-attributes in an objective and ignore the relationship between the sub-attributes. Furthermore, the types of refactoring operations in the existing works can be further augmented. To this end, this paper proposes a novel approach, called MIRROR, to recommend refactoring by employing a multi-objective optimization across three objectives: (i) improving quality, (ii) removing code smell, and (iii) maximizing the similarity to refactoring history. Unlike previous works, MIRROR provides a way to further optimize attributes in each objective. To be more specific, given an objective, MIRROR investigates the possible correlations among attributes and selects those attributes with low correlations as the representation of this objective. MIRROR is evaluated on 6 real-world projects by answering 6 research questions. The experimental results demonstrate that MIRROR recommends an average of 43 solutions for each project. Furthermore, we compare MIRROR against existing tools JMove and QMove, and show that the F1 of MIRROR is 5.63% and 3.75% higher than that of JMove and QMove, demonstrating the effectiveness of MIRROR.
引用
收藏
相关论文
共 50 条
  • [41] Maximizing Refactoring Coverage in an Automated Maintenance Approach using Multi-Objective Optimization
    Mohan, Michael
    Greer, Des
    McMullan, Paul
    2019 IEEE/ACM 3RD INTERNATIONAL WORKSHOP ON REFACTORING (IWOR 2019), 2019, : 31 - 38
  • [42] On the value of quality attributes for refactoring ATL model transformations: A multi-objective approach
    Alkhazi, Bader
    Abid, Chaima
    Kessentini, Marouane
    Wimmer, Manuel
    INFORMATION AND SOFTWARE TECHNOLOGY, 2020, 120
  • [43] Model refactoring by example: A multi-objective search based software engineering approach
    Ghannem, Adnane
    Kessentini, Marouane
    Hamdi, Mohammad Salah
    El Boussaidi, Ghizlane
    JOURNAL OF SOFTWARE-EVOLUTION AND PROCESS, 2018, 30 (04)
  • [44] Dynamic multi-objective sequence-wise recommendation framework via deep reinforcement learning
    Xiankun Zhang
    Yuhu Shang
    Yimeng Ren
    Kun Liang
    Complex & Intelligent Systems, 2023, 9 : 1891 - 1911
  • [45] Dynamic multi-objective sequence-wise recommendation framework via deep reinforcement learning
    Zhang, Xiankun
    Shang, Yuhu
    Ren, Yimeng
    Liang, Kun
    COMPLEX & INTELLIGENT SYSTEMS, 2023, 9 (02) : 1891 - 1911
  • [46] The Use of Development History in Software Refactoring Using a Multi-Objective Evolutionary Algorithm
    Ouni, Ali
    Kessentini, Marouane
    Sahraoui, Houari
    Hamdi, Mohamed Salah
    GECCO'13: PROCEEDINGS OF THE 2013 GENETIC AND EVOLUTIONARY COMPUTATION CONFERENCE, 2013, : 1461 - 1468
  • [47] Multi-view refactoring of class and activity diagrams using a multi-objective evolutionary algorithm
    Mansoor, Usman
    Kessentini, Marouane
    Wimmer, Manuel
    Deb, Kalyanmoy
    SOFTWARE QUALITY JOURNAL, 2017, 25 (02) : 473 - 501
  • [48] Multi-view refactoring of class and activity diagrams using a multi-objective evolutionary algorithm
    Usman Mansoor
    Marouane Kessentini
    Manuel Wimmer
    Kalyanmoy Deb
    Software Quality Journal, 2017, 25 : 473 - 501
  • [49] Multi-objective contextual bandits in recommendation systems for smart tourism
    Sara Qassimi
    Said Rakrak
    Scientific Reports, 15 (1)
  • [50] Multi-objective optimization of operation loop recommendation for kill web
    YANG Kewei
    XIA Boyuan
    CHEN Gang
    YANG Zhiwei
    LI Minghao
    Journal of Systems Engineering and Electronics, 2022, 33 (04) : 969 - 985