A Brief Review on Multi-objective Software Refactoring and a New Method for Its Recommendation

被引:0
|
作者
Satnam Kaur
Lalit K. Awasthi
A. L. Sangal
机构
[1] Dr B R Ambedkar National Institute of Technology,Department of Computer Science and Engineering
关键词
Search-based software engineering; Code smell; Software refactoring; Multi-objective optimization; MOSHO algorithm; Software quality;
D O I
暂无
中图分类号
学科分类号
摘要
Software refactoring is a commonly accepted means of improving the software quality without affecting its observable behaviour. It has gained significant attention from both academia and software industry. Therefore, numerous approaches have been proposed to automate refactoring that consider software quality maximization as their prime objective. However, this objective is not enough to generate good and efficient refactoring sequences as refactoring also involves several other uncertainties related to smell severity, history of applied refactoring activities and class severity. To address these concerns, we propose a multi-objective optimization technique to generate refactoring solutions that maximize the (1) software quality, (2) use of smell severity and (3) consistency with class importance. To this end, we provide a brief review on multi-objective search-based software refactoring and use a multi-objective spotted hyena optimizer (MOSHO) to obtain the best compromise between these three objectives. The proposed approach is evaluated on five open source datasets and its performance is compared with five different well-known state-of-the-art meta-heuristic and non-meta-heuristic approaches. The experimental results exhibit that the refactoring solutions provided by MOSHO are significantly better than other algorithms when class importance and code smell severity scores are used.
引用
收藏
页码:3087 / 3111
页数:24
相关论文
共 50 条
  • [21] A New Method for Multi-Objective Optimization Problem
    Jiang Hong
    Yang Meng-fei
    Zhang Shao-lin
    Wang Ruo-chuan
    2013 IEEE 4TH INTERNATIONAL CONFERENCE ON ELECTRONICS INFORMATION AND EMERGENCY COMMUNICATION (ICEIEC), 2014, : 209 - 212
  • [22] A New Method For Objective Weights Computing In Multi-objective Optimization
    Zhang Hongxia
    Zhang Huajun
    PROCEEDINGS OF THE 2014 9TH IEEE CONFERENCE ON INDUSTRIAL ELECTRONICS AND APPLICATIONS (ICIEA), 2014, : 2019 - +
  • [23] A Multi-Objective Approach for Entity Refactoring Set Selection Problem
    Chisalita-Cretu, Camelia
    2009 SECOND INTERNATIONAL CONFERENCE ON THE APPLICATIONS OF DIGITAL INFORMATION AND WEB TECHNOLOGIES (ICADIWT 2009), 2009, : 790 - 795
  • [24] Identification of Web Service Refactoring Opportunities as a Multi-Objective Problem
    Wang, Hanzhang
    Ouni, Ali
    Kessentini, Marouane
    Maxim, Bruce
    Grosky, William I.
    2016 IEEE INTERNATIONAL CONFERENCE ON WEB SERVICES (ICWS), 2016, : 586 - 593
  • [25] The Optimal Refactoring Selection Problem - A Multi-Objective Evolutionary Approach
    Chisalita-Cretu, Camelia
    PROCEEDINGS OF THE 5TH INTERNATIONAL CONFERENCE ON VIRTUAL LEARNING, ICVL 2010, 2010, : 410 - 417
  • [26] MOBO A NEW SOFTWARE FOR MULTI-OBJECTIVE BUILDING PERFORMANCE OPTIMIZATION
    Palonen, Matti
    Hamdy, Mohamed
    Hasan, Ala
    BUILDING SIMULATION 2013: 13TH INTERNATIONAL CONFERENCE OF THE INTERNATIONAL BUILDING PERFORMANCE SIMULATION ASSOCIATION, 2013, : 2567 - 2574
  • [27] Multi-objective optimization for long tail recommendation
    Wang, Shanfeng
    Gong, Maoguo
    Li, Haoliang
    Yang, Junwei
    KNOWLEDGE-BASED SYSTEMS, 2016, 104 : 145 - 155
  • [28] A review of multi-objective optimization: Methods and its applications
    Gunantara, Nyoman
    COGENT ENGINEERING, 2018, 5 (01): : 1 - 16
  • [29] Personalised Multi-Objective Travel Route Recommendation Based on Super Multi-Objective Optimization Algorithm
    Zhang, Xiang-Rong
    Wang, Xue-Ying
    Ebara, Takeshi
    Journal of Network Intelligence, 2024, 9 (03): : 1625 - 1640
  • [30] Multi-Objective Reconstruction of Software Architecture
    Schmidt, Frederick
    MacDonell, Stephen
    Connor, Andy M.
    INTERNATIONAL JOURNAL OF SOFTWARE ENGINEERING AND KNOWLEDGE ENGINEERING, 2018, 28 (06) : 869 - 892