On the use of many quality attributes for software refactoring: a many-objective search-based software engineering approach

被引:0
|
作者
Mohamed Wiem Mkaouer
Marouane Kessentini
Slim Bechikh
Mel Ó Cinnéide
Kalyanmoy Deb
机构
[1] University of Michigan,
[2] University College Dublin,undefined
[3] Michigan State University,undefined
来源
关键词
Search-based software engineering; Refactoring; Software quality; Many-objective optimization;
D O I
暂无
中图分类号
学科分类号
摘要
Search-based software engineering (SBSE) solutions are still not scalable enough to handle high-dimensional objectives space. The majority of existing work treats software engineering problems from a single or bi-objective point of view, where the main goal is to maximize or minimize one or two objectives. However, most software engineering problems are naturally complex in which many conflicting objectives need to be optimized. Software refactoring is one of these problems involving finding a compromise between several quality attributes to improve the quality of the system while preserving the behavior. To this end, we propose a novel representation of the refactoring problem as a many-objective one where every quality attribute to improve is considered as an independent objective to be optimized. In our approach based on the recent NSGA-III algorithm, the refactoring solutions are evaluated using a set of 8 distinct objectives. We evaluated this approach on one industrial project and seven open source systems. We compared our findings to: several other many-objective techniques (IBEA, MOEA/D, GrEA, and DBEA-Eps), an existing multi-objective approach a mono-objective technique and an existing refactoring technique not based on heuristic search. Statistical analysis of our experiments over 31 runs shows the efficiency of our approach.
引用
收藏
页码:2503 / 2545
页数:42
相关论文
共 50 条
  • [1] On the use of many quality attributes for software refactoring: a many-objective search-based software engineering approach
    Mkaouer, Mohamed Wiem
    Kessentini, Marouane
    Bechikh, Slim
    Cinneide, Mel O.
    Deb, Kalyanmoy
    [J]. EMPIRICAL SOFTWARE ENGINEERING, 2016, 21 (06) : 2503 - 2545
  • [2] A survey of many-objective optimisation in search-based software engineering
    Ramirez, Aurora
    Raul Romero, Jose
    Ventura, Sebastian
    [J]. JOURNAL OF SYSTEMS AND SOFTWARE, 2019, 149 : 382 - 395
  • [3] Research Problems in Search-Based Software Engineering for Many-Objective Optimization A literature survey
    Qasim, Syed Zaffar
    Ismail, Muhammad Ali
    [J]. 2017 INTERNATIONAL CONFERENCE ON INNOVATIONS IN ELECTRICAL ENGINEERING AND COMPUTATIONAL TECHNOLOGIES (ICIEECT), 2017,
  • [4] A Many-Objective Estimation Distributed Algorithm Applied to Search Based Software Refactoring
    Botelho, Glauber
    Bezerra, Leonardo
    Britto, Andre
    Silva, Leila
    [J]. 2018 IEEE CONGRESS ON EVOLUTIONARY COMPUTATION (CEC), 2018, : 423 - 430
  • [5] Many-objective optimization of non-functional attributes based on of software models
    Cortellessa, Vittorio
    Di Pompeoa, Daniele
    Stoico, Vincenzo
    Tucci, Michele
    [J]. INFORMATION AND SOFTWARE TECHNOLOGY, 2023, 157
  • [6] Improving the Performance of Many-Objective Software Refactoring Technique Using Dimensionality Reduction
    Dea, Troh Josselin
    [J]. SEARCH BASED SOFTWARE ENGINEERING, SSBSE 2016, 2016, 9962 : 298 - 303
  • [7] Search-based refactoring for software maintenance
    O'Keeffe, Mark
    Cinneide, Mel O.
    [J]. JOURNAL OF SYSTEMS AND SOFTWARE, 2008, 81 (04) : 502 - 516
  • [8] Using a many-objective approach to investigate automated refactoring
    Mohan, M.
    Greer, D.
    [J]. INFORMATION AND SOFTWARE TECHNOLOGY, 2019, 112 : 83 - 101
  • [9] Dynamic Software Containers Workload Balancing via Many-Objective Search
    Ghammam, Anwar
    Ferreira, Thiago
    Aljedaani, Wajdi
    Kessentini, Marouane
    Husain, Ali
    [J]. IEEE TRANSACTIONS ON SERVICES COMPUTING, 2023, 16 (04) : 2575 - 2591
  • [10] An Interactive and Dynamic Search-Based Approach to Software Refactoring Recommendations
    Alizadeh, Vahid
    Kessentini, Marouane
    Mkaouer, Mohamed Wiem
    Ocinneide, Mel
    Ouni, Ali
    Cai, Yuanfang
    [J]. IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2020, 46 (09) : 932 - 961