Software evolution, an integral part of the software development process, encompasses frequent and numerous changes and updates that may lead to complex and poor-quality systems. Software engineers and quality practitioners continually refactor the software components to mitigate the negative effects of code and design smells. Although these smells are not directly connected to design and coding bugs, they are high indicators of technical debt that may arise as bugs in future software releases. Therefore, refactoring plays a significant role in the overall software evolution process. To fix the underlying code and design smells, they must be first detected and classified. As code smells have been the focus of research in the literature, this paper focuses on detecting design smells. A novel design smell detection scheme is proposed using adaptive neuro-fuzzy approaches. This scheme can be seamlessly integrated with any refactoring scheduling and prioritization models as it is efficiently designed using a fast-training scheme based on a neuro-fuzzy architecture. In addition, the design smell detection solution relies on a reduced set of software metrics. A large custom dataset with more than 30,000 class records is created to assess the performance of the design smell detection solution. The reported performance scores confirm the superiority of the proposed technique over the existing ones. The accuracy, precision, recall, and area-under-the-curve (AUC) scores attained 0.97, 0.98, 0.98, and 0.99, respectively. Thanks to the high detection scores, design smell refactoring sequencing and prioritization routines can be further enhanced.
|Number of pages||17|
|Journal||International Journal of Fuzzy Systems|
|State||Published - Jun 2022|
Bibliographical noteFunding Information:
A. AbuHassan and M. Alshayeb would like to acknowledge the support provided by the Deanship of Scientific Research at King Fahd University of Petroleum and Minerals. L. Ghouti acknowledges the support of Prince Sultan University.
© 2022, The Author(s) under exclusive licence to Taiwan Fuzzy Systems Association.
- Benchmark design smell detection dataset
- Design smell detection
- Empirical study
- Fuzzy rules
ASJC Scopus subject areas
- Theoretical Computer Science
- Computational Theory and Mathematics
- Artificial Intelligence