arrow
Return

Many-Objective Software Remodularization Using NSGA-III

delete2015-05-13
delete206
delete
OA
AI
M
Mohamed Wiem Mkaouer *
M
Marouane Kessentini
A
Adnan Shaout
P
Patrice Koligheu
S
Slim Bechikh
K
Kalyanmoy Deb
A
Ali Ouni
DOI:10.1145/2729974delete
deleteOriginal
deleteShare
deleteSave
View PDF
Abstract

Abstract

En 中文
Software systems nowadays are complex and difficult to maintain due to continuous changes and bad design choices. To handle the complexity of systems, software products are, in general, decomposed in terms of packages/modules containing classes that are dependent. However, it is challenging to automatically remodularize systems to improve their maintainability. The majority of existing remodularization work mainly satisfy one objective which is improving the structure of packages by optimizing coupling and cohesion. In addition, most of existing studies are limited to only few operation types such as move class and split packages. Many other objectives, such as the design semantics, reducing the number of changes and maximizing the consistency with development change history, are important to improve the quality of the software by remodularizing it. In this article, we propose a novel many-objective search-based approach using NSGA-III. The process aims at finding the optimal remodularization solutions that improve the structure of packages, minimize the number of changes, preserve semantics coherence, and reuse the history of changes. We evaluate the efficiency of our approach using four different open-source systems and one automotive industry project, provided by our industrial partner, through a quantitative and qualitative study conducted with software engineers.
Keywords:
Algorithms
Reliability
Search-based software engineering
software maintenance
software quality
remodularization
AI Summary

AI Summary

Key information extracted from the uploaded paper, including a brief overview, abstract, background, key highlights, visual analysis, and future outlook.

Journal

A
ACM Transactions on Software Engineering and Methodology
IF:
6.2
Papers:
1.2K
Citations:
3.4K

Organization

U
University of Michigan
Scholars:
6.4W
Papers: 5.3W
Citations: 124
U
university of michigan system
Scholars:
9.1W
Papers: 8.6W
Citations: 133