重构对Android应用质量指标影响的实证研究

Oumayma Hamdi, Ali Ouni, E. Alomar, Mel Ó Cinnéide, Mohamed Wiem Mkaouer
{"title":"重构对Android应用质量指标影响的实证研究","authors":"Oumayma Hamdi, Ali Ouni, E. Alomar, Mel Ó Cinnéide, Mohamed Wiem Mkaouer","doi":"10.1109/MobileSoft52590.2021.00010","DOIUrl":null,"url":null,"abstract":"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.","PeriodicalId":257528,"journal":{"name":"2021 IEEE/ACM 8th International Conference on Mobile Software Engineering and Systems (MobileSoft)","volume":"25 3 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2021-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"13","resultStr":"{\"title\":\"An Empirical Study on the Impact of Refactoring on Quality Metrics in Android Applications\",\"authors\":\"Oumayma Hamdi, Ali Ouni, E. Alomar, Mel Ó Cinnéide, Mohamed Wiem Mkaouer\",\"doi\":\"10.1109/MobileSoft52590.2021.00010\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"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.\",\"PeriodicalId\":257528,\"journal\":{\"name\":\"2021 IEEE/ACM 8th International Conference on Mobile Software Engineering and Systems (MobileSoft)\",\"volume\":\"25 3 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2021-05-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"13\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2021 IEEE/ACM 8th International Conference on Mobile Software Engineering and Systems (MobileSoft)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/MobileSoft52590.2021.00010\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2021 IEEE/ACM 8th International Conference on Mobile Software Engineering and Systems (MobileSoft)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/MobileSoft52590.2021.00010","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 13

摘要

移动应用程序必须不断发展,有时在时间压力下做出糟糕的设计或实现选择,这不可避免地导致结构性软件质量问题。重构是一种被广泛接受的改善这类质量问题的方法。虽然重构对软件质量的影响已经在面向对象的软件中得到了广泛的研究,但它对移动应用程序的影响仍然不清楚。本文报告了旨在解决这一差距的第一个实证研究。我们进行了一项大型实证研究,分析了300个开源Android应用的演变历史,共展示了42,181个重构操作。我们使用基于差中差(DiD)模型的因果推理方法分析了这些重构操作对10个常见质量指标的影响。我们的结果表明,当重构影响指标时,它通常会改进它们。在许多情况下,重构对指标没有显著的影响,而一个指标(LCOM)由于重构而整体恶化。这些发现为当前Android应用程序开发中的重构实践提供了实用的见解。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
An Empirical Study on the Impact of Refactoring on Quality Metrics in Android Applications
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.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信