TY - GEN
T1 - An Empirical Study on the Impact of Refactoring on Quality Metrics in Android Applications
AU - Hamdi, Oumayma
AU - Ouni, Ali
AU - Alomar, Eman Abdullah
AU - O Cinneide, Mel
AU - Mkaouer, Mohamed Wiem
N1 - Publisher Copyright:
© 2021 IEEE.
PY - 2021/5
Y1 - 2021/5
N2 - Mobile applications must continuously evolve, sometimes under such time pressure that poor design or implementation choices are made, which inevitably result in structural software quality problems. Refactoring is the widely-accepted approach to ameliorating such quality problems. While the impact of refactoring on software quality has been widely studied in object-oriented software, its impact is still unclear in the context of mobile apps. This paper reports on the first empirical study that aims to address this gap. We conduct a large empirical study that analyses the evolution history of 300 open-source Android apps exhibiting a total of 42,181 refactoring operations. We analyze the impact of these refactoring operations on 10 common quality metrics using a causal inference method based on the Difference-in-Differences (DiD) model. Our results indicate that when refactoring affects the metrics it generally improves them. In many cases refactoring has no significant impact on the metrics, whereas one metric (LCOM) deteriorates overall as a result of refactoring. These findings provide practical insights into the current practice of refactoring in the context of Android app development.
AB - Mobile applications must continuously evolve, sometimes under such time pressure that poor design or implementation choices are made, which inevitably result in structural software quality problems. Refactoring is the widely-accepted approach to ameliorating such quality problems. While the impact of refactoring on software quality has been widely studied in object-oriented software, its impact is still unclear in the context of mobile apps. This paper reports on the first empirical study that aims to address this gap. We conduct a large empirical study that analyses the evolution history of 300 open-source Android apps exhibiting a total of 42,181 refactoring operations. We analyze the impact of these refactoring operations on 10 common quality metrics using a causal inference method based on the Difference-in-Differences (DiD) model. Our results indicate that when refactoring affects the metrics it generally improves them. In many cases refactoring has no significant impact on the metrics, whereas one metric (LCOM) deteriorates overall as a result of refactoring. These findings provide practical insights into the current practice of refactoring in the context of Android app development.
KW - Android
KW - Mobile app
KW - empirical study
KW - quality metrics
KW - refactoring
UR - http://www.scopus.com/inward/record.url?scp=85113256014&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85113256014&partnerID=8YFLogxK
U2 - 10.1109/MobileSoft52590.2021.00010
DO - 10.1109/MobileSoft52590.2021.00010
M3 - Conference contribution
AN - SCOPUS:85113256014
T3 - Proceedings - 2021 IEEE/ACM 8th International Conference on Mobile Software Engineering and Systems, MobileSoft 2021
SP - 28
EP - 39
BT - Proceedings - 2021 IEEE/ACM 8th International Conference on Mobile Software Engineering and Systems, MobileSoft 2021
T2 - 8th IEEE/ACM International Conference on Mobile Software Engineering and Systems, MobileSoft 2021
Y2 - 17 May 2021 through 19 May 2021
ER -