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 条
  • [1] MIRROR: multi-objective refactoring recommendation via correlation analysis
    Zhang, Yang
    Guan, Ke
    Fang, Lining
    AUTOMATED SOFTWARE ENGINEERING, 2024, 31 (01)
  • [2] MORCoRA: Multi-Objective Refactoring Recommendation Considering Review Availability
    Chen, Lei
    Hayashi, Shinpei
    INTERNATIONAL JOURNAL OF SOFTWARE ENGINEERING AND KNOWLEDGE ENGINEERING, 2024, 34 (12) : 1919 - 1947
  • [3] A Brief Review on Multi-objective Software Refactoring and a New Method for Its Recommendation
    Kaur, Satnam
    Awasthi, Lalit K.
    Sangal, A. L.
    ARCHIVES OF COMPUTATIONAL METHODS IN ENGINEERING, 2021, 28 (04) : 3087 - 3111
  • [4] A Brief Review on Multi-objective Software Refactoring and a New Method for Its Recommendation
    Satnam Kaur
    Lalit K. Awasthi
    A. L. Sangal
    Archives of Computational Methods in Engineering, 2021, 28 : 3087 - 3111
  • [5] THE MULTI-OBJECTIVE REFACTORING SELECTION PROBLEM
    Chisalita-Cretu, Camelia
    Vescan, Andreea
    KEPT 2009: KNOWLEDGE ENGINEERING PRINCIPLES AND TECHNIQUES, 2009, : 291 - 298
  • [6] Multi-Objective Recommendation via Multivariate Policy Learning
    Jeunen, Olivier
    Mandav, Jatin
    Potapov, Ivan
    Agarwal, Nakul
    Vaid, Sourabh
    Shi, Wenzhe
    Ustimenko, Aleksei
    PROCEEDINGS OF THE EIGHTEENTH ACM CONFERENCE ON RECOMMENDER SYSTEMS, RECSYS 2024, 2024, : 712 - 721
  • [7] Overview of the Multi-Objective Refactoring Selection Problem
    Chisalita-Cretu, Camelia
    PROCEEDINGS OF THE 9TH INTERNATIONAL CONFERENCE ON VIRTUAL LEARNING, 2014, : 321 - 328
  • [8] Intelligent Change Operators for Multi-Objective Refactoring
    Abid, Chaima
    Ivers, James
    Ferreira, Thiago do N.
    Kessentini, Marouane
    Kahla, Fares E.
    Ozkaya, Ipek
    2021 36TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING ASE 2021, 2021, : 768 - 780
  • [9] MORE: A multi-objective refactoring recommendation approach to introducing design patterns and fixing code smells
    Ouni, Ali
    Kessentini, Marouane
    Cinneide, Mel O.
    Sahraoui, Houari
    Deb, Kalyanmoy
    Inoue, Katsuro
    JOURNAL OF SOFTWARE-EVOLUTION AND PROCESS, 2017, 29 (05)
  • [10] Enabling Decision and Objective Space Exploration for Interactive Multi-Objective Refactoring
    Rebai, Soumaya
    Alizadeh, Vahid
    Kessentini, Marouane
    Fehri, Houcem
    Kazman, Rick
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2022, 48 (05) : 1560 - 1578