An Empirical Study on the Evolution of Design Smells
The evolution of software systems often leads to its architectural degradation due to the presence of design problems. In the literature, design smells have been defined as indicators of such problems. In particular, the presence of design smells could indicate the use of constructs that are harmful...
Main Authors: | , , |
---|---|
Format: | Article |
Language: | English |
Published: |
MDPI AG
2020-07-01
|
Series: | Information |
Subjects: | |
Online Access: | https://www.mdpi.com/2078-2489/11/7/348 |
_version_ | 1797416935741194240 |
---|---|
author | Lerina Aversano Umberto Carpenito Martina Iammarino |
author_facet | Lerina Aversano Umberto Carpenito Martina Iammarino |
author_sort | Lerina Aversano |
collection | DOAJ |
description | The evolution of software systems often leads to its architectural degradation due to the presence of design problems. In the literature, design smells have been defined as indicators of such problems. In particular, the presence of design smells could indicate the use of constructs that are harmful to system maintenance activities. In this work, an investigation on the nature and presence of design smells has been performed. An empirical study has been conducted considering the complete history of eight software systems, commit by commit. The detection of instances of multiple design smell types has been performed at each commit, and the analysis of the relationships between the detected smells and the maintenance activities, specifically due to refactoring activities, has been investigated. The proposed study evidenced that classes affected by design smells are more subject to change, especially when multiple smells are detected in the same classes. Moreover, it emerged that in some cases these smells are removed, and this occurs involving more smells at the same time. Finally, results indicate that smells removals are not correlated to the refactoring activities. |
first_indexed | 2024-03-09T06:11:34Z |
format | Article |
id | doaj.art-6896908b5b044358b890f66dd8382bc6 |
institution | Directory Open Access Journal |
issn | 2078-2489 |
language | English |
last_indexed | 2024-03-09T06:11:34Z |
publishDate | 2020-07-01 |
publisher | MDPI AG |
record_format | Article |
series | Information |
spelling | doaj.art-6896908b5b044358b890f66dd8382bc62023-12-03T11:57:54ZengMDPI AGInformation2078-24892020-07-0111734810.3390/info11070348An Empirical Study on the Evolution of Design SmellsLerina Aversano0Umberto Carpenito1Martina Iammarino2Department of Engineering, University of Sannio, 82100 Benevento, ItalyDepartment of Engineering, University of Sannio, 82100 Benevento, ItalyDepartment of Engineering, University of Sannio, 82100 Benevento, ItalyThe evolution of software systems often leads to its architectural degradation due to the presence of design problems. In the literature, design smells have been defined as indicators of such problems. In particular, the presence of design smells could indicate the use of constructs that are harmful to system maintenance activities. In this work, an investigation on the nature and presence of design smells has been performed. An empirical study has been conducted considering the complete history of eight software systems, commit by commit. The detection of instances of multiple design smell types has been performed at each commit, and the analysis of the relationships between the detected smells and the maintenance activities, specifically due to refactoring activities, has been investigated. The proposed study evidenced that classes affected by design smells are more subject to change, especially when multiple smells are detected in the same classes. Moreover, it emerged that in some cases these smells are removed, and this occurs involving more smells at the same time. Finally, results indicate that smells removals are not correlated to the refactoring activities.https://www.mdpi.com/2078-2489/11/7/348technical debtdesign smellssoftware maintenancesoftware evolution |
spellingShingle | Lerina Aversano Umberto Carpenito Martina Iammarino An Empirical Study on the Evolution of Design Smells Information technical debt design smells software maintenance software evolution |
title | An Empirical Study on the Evolution of Design Smells |
title_full | An Empirical Study on the Evolution of Design Smells |
title_fullStr | An Empirical Study on the Evolution of Design Smells |
title_full_unstemmed | An Empirical Study on the Evolution of Design Smells |
title_short | An Empirical Study on the Evolution of Design Smells |
title_sort | empirical study on the evolution of design smells |
topic | technical debt design smells software maintenance software evolution |
url | https://www.mdpi.com/2078-2489/11/7/348 |
work_keys_str_mv | AT lerinaaversano anempiricalstudyontheevolutionofdesignsmells AT umbertocarpenito anempiricalstudyontheevolutionofdesignsmells AT martinaiammarino anempiricalstudyontheevolutionofdesignsmells AT lerinaaversano empiricalstudyontheevolutionofdesignsmells AT umbertocarpenito empiricalstudyontheevolutionofdesignsmells AT martinaiammarino empiricalstudyontheevolutionofdesignsmells |