Android Code Smells: From Introduction to Refactoring - Inria - Institut national de recherche en sciences et technologies du numérique Access content directly
Journal Articles Journal of Systems and Software Year : 2021

Android Code Smells: From Introduction to Refactoring


Object-oriented code smells are well-known concepts in software engineering that refer to bad design and development practices commonly observed in software systems. With the emergence of mobile apps, new classes of code smells have been identified by the research community as mobile-specific code smells. These code smells are presented as symptoms of important performance issues or bottlenecks. Despite the multiple empirical studies about these new code smells, their diffuseness and evolution along change histories remains unclear. We present in this article a large-scale empirical study that inspects the introduction, evolution, and removal of Android code smells. This study relies on data extracted from 324 apps, a manual analysis of 561 smell-removing commits, and discussions with 25 Android developers. Our findings reveal that the high diffuseness of mobile-specific code smells is not a result of releasing pressure. We also found that the removal of these code smells is generally a side effect of maintenance activities as developers do not refactor smell instances even when they are aware of them.
Fichier principal
Vignette du fichier
2010.07121.pdf (1.18 Mo) Télécharger le fichier
Origin Files produced by the author(s)

Dates and versions

hal-03182277 , version 1 (22-02-2024)




Sarra Habchi, Naouel Moha, Romain Rouvoy. Android Code Smells: From Introduction to Refactoring. Journal of Systems and Software, 2021, 177, ⟨10.1016/j.jss.2021.110964⟩. ⟨hal-03182277⟩
108 View
5 Download



Gmail Mastodon Facebook X LinkedIn More