An empirical catalog of code smells for the presentation layer of Android apps

被引:0
|
作者
Suelen Goularte Carvalho
Maurício Aniche
Júlio Veríssimo
Rafael S. Durelli
Marco Aurélio Gerosa
机构
[1] University of São Paulo,
[2] Delft University of Technology,undefined
[3] Federal University of Lavras,undefined
[4] Northern Arizona University,undefined
来源
关键词
Android mobile applications; Code smells; Empirical software engineering; Software maintenance and evolution;
D O I
暂无
中图分类号
学科分类号
摘要
Software developers, including those of the Android mobile platform, constantly seek to improve their applications’ maintainability and evolvability. Code smells are commonly used for this purpose, as they indicate symptoms of design problems. However, although the literature presents a variety of code smells, such as God Class and Long Method, characteristics that are specific to the underlying technologies are not taken into account. The presentation layer of an Android app, for example, implements specific architectural decisions from the Android platform itself (such as the use of Activities, Fragments, and Listeners) as well as deal with and integrate different types of resources (such as layouts and images). Through a three-step study involving 246 Android developers, we investigated code smells that developers perceive for this part of Android apps. We devised 20 specific code smells and collected the developers’ perceptions of their frequency and importance. We also implemented a tool that identifies the proposed code smells and studied their prevalence in 619 open-source Android apps. Our findings suggest that: 1) developers perceive smells specific to the presentation layer of Android apps; 2) developers consider these smells to be of high importance and frequency; and 3) the proposed smells occur in real-world Android apps. Our domain-specific smells can be leveraged by developers, researchers, and tool developers for searching potentially problematic pieces of code.
引用
收藏
页码:3546 / 3586
页数:40
相关论文
共 50 条
  • [1] An empirical catalog of code smells for the presentation layer of Android apps
    Carvalho, Suelen Goularte
    Aniche, Mauricio
    Verissimo, Julio
    Durelli, Rafael S.
    Gerosa, Marco Aurelio
    [J]. EMPIRICAL SOFTWARE ENGINEERING, 2019, 24 (06) : 3546 - 3586
  • [2] The impact of the code smells of the presentation layer on the diffuseness of aesthetic defects of Android apps
    Mabrouka Chouchane
    Makram Soui
    Khaled Ghedira
    [J]. Automated Software Engineering, 2021, 28
  • [3] The impact of the code smells of the presentation layer on the diffuseness of aesthetic defects of Android apps
    Chouchane, Mabrouka
    Soui, Makram
    Ghedira, Khaled
    [J]. AUTOMATED SOFTWARE ENGINEERING, 2021, 28 (02)
  • [4] An Empirical Study of the Performance Impacts of Android Code Smells
    Hecht, Geoffrey
    Moha, Naouel
    Rouvoy, Romain
    [J]. 2016 IEEE/ACM INTERNATIONAL CONFERENCE ON MOBILE SOFTWARE ENGINEERING AND SYSTEMS (MOBILESOFT 2016), 2016, : 59 - 69
  • [5] An empirical study of Android behavioural code smells detection
    Prestat, Dimitri
    Moha, Naouel
    Villemaire, Roger
    [J]. EMPIRICAL SOFTWARE ENGINEERING, 2022, 27 (07)
  • [6] An empirical study of Android behavioural code smells detection
    Dimitri Prestat
    Naouel Moha
    Roger Villemaire
    [J]. Empirical Software Engineering, 2022, 27
  • [7] An Empirical Study on Code Smells Co-occurrences in Android Applications
    Hamdi, Oumayma
    Ouni, Ali
    AlOmar, Eman Abdullah
    Mkaouer, Mohamed Wiem
    [J]. 2021 36TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING WORKSHOPS (ASEW 2021), 2021, : 26 - 33
  • [8] Security code smells in Android ICC
    Pascal Gadient
    Mohammad Ghafari
    Patrick Frischknecht
    Oscar Nierstrasz
    [J]. Empirical Software Engineering, 2019, 24 : 3046 - 3076
  • [9] An Empirical Investigation on the Effect of Code Smells on Resource Usage of Android Mobile Applications
    Alkandari, Mohammad A.
    Kelkawi, Ali
    Elish, Mahmoud O.
    [J]. IEEE ACCESS, 2021, 9 : 61853 - 61863
  • [10] Security code smells in Android ICC
    Gadient, Pascal
    Ghafari, Mohammad
    Frischknecht, Patrick
    Nierstrasz, Oscar
    [J]. EMPIRICAL SOFTWARE ENGINEERING, 2019, 24 (05) : 3046 - 3076