Author:
Aversano Lerina,Carpenito Umberto,Iammarino Martina
Abstract
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.
Reference30 articles.
1. Combating architectural degeneration: a survey
2. Toward a Catalogue of Architectural Bad Smells;Garcia,2009
3. Architectural-based speculative analysis to predict bugs in a software system;Le,2016
4. Refactoring: Improving the Design of Existing Code;Fowler,2002
5. Software Design Smell Detection: a systematic mapping study
Cited by
7 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献