Authors:
Amanda Lima Sabóia
1
;
Antônio Diogo Forte Martins
2
;
Cristiano Sousa Melo
2
;
José Maria Monteiro
2
;
Cidcley Teixeira de Souza
1
and
Javam de Castro Machado
2
Affiliations:
1
Department of Computing, Federal Institute of Ceará, Fortaleza - Ceará, Brazil
;
2
Department of Computing, Federal University of Ceará, Fortaleza - Ceará, Brazil
Keyword(s):
Bad Smell, Prevalence, C#.
Abstract:
Bad smell can be defined as structures in code that suggest the possibility of refactoring. In object-oriented languages such as C# and Java, Bad Smells are heavily exploited as a way to avoid potential software failures. The presence of a high number of bad smells in a software project makes the system maintenance and evolution hard. So, identifying smells in code and refactoring them helps to improve and maintain software quality. Anti-patterns are considered inadequate programming practices, but not an error, they are bad solutions to recurring software problems. In this work, we propose an exploratory study on open source projects written in C# and published in GitHub. We empirically analyzed a total of 25 projects, studying the prevalence of Bad Smells, in a quantitatively and qualitatively manner, and their relationship in order to identify possible anti-patterns. Our results showed that implementation smells are the most common. Besides, some smells occur together, such as Mis
sing Default and Unutilized Abstraction that are perfectly correlated, and ILS and IMN detected by association rules. Thus, the proposed study aims to assist software developers in avoiding future problems during the development of C# projects.
(More)