Code Smells Incidence: Does It Depend on the Application Domain?

J. Reis, G. Carneiro
{"title":"Code Smells Incidence: Does It Depend on the Application Domain?","authors":"J. Reis, G. Carneiro","doi":"10.1109/QUATIC.2016.044","DOIUrl":null,"url":null,"abstract":"Background: Code smells are considered detrimental to maintainability. To plan QA preventive initiatives (e.g. refactoring actions) it is important to know if the application domain is likely to affect the incidence of those problems. Objective: The main goal of this paper is to check if the application domain has a statistically significant impact on the incidence of code smells. Methods: We conducted a quasi-experiment using 118 Java applications, classified into 6 application domains, and including 7 types of code smells. To test the formulated hypotheses, we used the Kruskal-Wallis and ANOVA tests. Results: Our results show that the incidence of most code smells does not depend on the application domain, with the exception of Duplicated Code smell, where it was found that its incidence in the domain Home & Education is superior to the others. Limitations: This study was based on medium sized open source applications written in Java. Therefore, its external validity will be questionable outside this scope. Conclusions: For 6 out of 7 code smell types, our results corroborate previous studies where no difference could be found on code smells incidence across applications. However, statistically significant differences were found for the Duplicated Code (aka Clone) smell. This result confirmed the claim produced by Martin Fowler almost 20 years ago that software clones may be induced by the application domain.","PeriodicalId":157671,"journal":{"name":"2016 10th International Conference on the Quality of Information and Communications Technology (QUATIC)","volume":"73 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2016-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"10","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2016 10th International Conference on the Quality of Information and Communications Technology (QUATIC)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/QUATIC.2016.044","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 10

Abstract

Background: Code smells are considered detrimental to maintainability. To plan QA preventive initiatives (e.g. refactoring actions) it is important to know if the application domain is likely to affect the incidence of those problems. Objective: The main goal of this paper is to check if the application domain has a statistically significant impact on the incidence of code smells. Methods: We conducted a quasi-experiment using 118 Java applications, classified into 6 application domains, and including 7 types of code smells. To test the formulated hypotheses, we used the Kruskal-Wallis and ANOVA tests. Results: Our results show that the incidence of most code smells does not depend on the application domain, with the exception of Duplicated Code smell, where it was found that its incidence in the domain Home & Education is superior to the others. Limitations: This study was based on medium sized open source applications written in Java. Therefore, its external validity will be questionable outside this scope. Conclusions: For 6 out of 7 code smell types, our results corroborate previous studies where no difference could be found on code smells incidence across applications. However, statistically significant differences were found for the Duplicated Code (aka Clone) smell. This result confirmed the claim produced by Martin Fowler almost 20 years ago that software clones may be induced by the application domain.
代码气味的发生率:它是否依赖于应用领域?
背景:代码气味被认为不利于可维护性。为了计划QA预防性活动(例如重构操作),了解应用程序域是否可能影响这些问题的发生率是很重要的。目的:本文的主要目的是检查应用程序域是否对代码气味的发生率有统计上显著的影响。方法:我们对118个Java应用程序进行了准实验,将其分为6个应用程序域,并包含7种代码气味。为了检验制定的假设,我们使用了Kruskal-Wallis和ANOVA检验。结果:我们的结果表明,大多数代码气味的发生率不依赖于应用程序领域,除了重复代码气味,我们发现它在家庭和教育领域的发生率高于其他领域。限制:本研究基于用Java编写的中等规模的开源应用程序。因此,在此范围之外,其外部有效性将受到质疑。结论:对于7种代码气味类型中的6种,我们的结果证实了之前的研究,即在应用程序之间的代码气味发生率没有差异。然而,在统计上发现了复制代码(又名克隆)气味的显著差异。这一结果证实了Martin Fowler大约20年前提出的软件克隆可能由应用领域引起的说法。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
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学术文献互助群
群 号:481959085
Book学术官方微信