Detecting Modularity Flaws of Evolving Code: What the History Can Reveal?

Leandra Mara, F. Dantas, Gustavo Honorato, Alessandro F. Garcia, C. Lucena
{"title":"Detecting Modularity Flaws of Evolving Code: What the History Can Reveal?","authors":"Leandra Mara, F. Dantas, Gustavo Honorato, Alessandro F. Garcia, C. Lucena","doi":"10.1109/SBCARS.2010.11","DOIUrl":null,"url":null,"abstract":"Modularity flaws can hamper the reuse and maintainability of code or even indicating the architecture degradation of a system. Therefore, researchers have increasingly investigated new mechanisms to assist the detection of these anomalies. Strategies for detection these flaws usually ignore information about the software change history. However, recent studies report that these strategies have been considered counter-productive. This article proposes and evaluates the use of detection strategies consisting of metrics that consider historic properties of evolving source code. It also proposes tool support for history-sensitive detection of modularity flaws. The strategies are evaluated in terms of precision and recall to detect three classic modularity flaws over 16 versions of two systems. Several observations were made, including: (i) exploiting information about the code evolution can contribute to effective detection of modularity flaws; and (ii) in both systems, history-sensitive strategies presented results superior to conventional strategies.","PeriodicalId":114216,"journal":{"name":"2010 Fourth Brazilian Symposium on Software Components, Architectures and Reuse","volume":"890 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2010-09-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"4","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2010 Fourth Brazilian Symposium on Software Components, Architectures and Reuse","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/SBCARS.2010.11","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 4

Abstract

Modularity flaws can hamper the reuse and maintainability of code or even indicating the architecture degradation of a system. Therefore, researchers have increasingly investigated new mechanisms to assist the detection of these anomalies. Strategies for detection these flaws usually ignore information about the software change history. However, recent studies report that these strategies have been considered counter-productive. This article proposes and evaluates the use of detection strategies consisting of metrics that consider historic properties of evolving source code. It also proposes tool support for history-sensitive detection of modularity flaws. The strategies are evaluated in terms of precision and recall to detect three classic modularity flaws over 16 versions of two systems. Several observations were made, including: (i) exploiting information about the code evolution can contribute to effective detection of modularity flaws; and (ii) in both systems, history-sensitive strategies presented results superior to conventional strategies.
进化代码的模块化缺陷检测:历史可以揭示什么?
模块化缺陷会阻碍代码的重用和可维护性,甚至表明系统的架构退化。因此,研究人员越来越多地研究新的机制来帮助检测这些异常。检测这些缺陷的策略通常会忽略有关软件变更历史的信息。然而,最近的研究报告称,这些策略被认为是适得其反的。本文提出并评估了由度量组成的检测策略的使用,这些度量考虑了演化源代码的历史属性。它还提出了工具支持模块化缺陷的历史敏感检测。在两个系统的16个版本中,评估了这些策略的精度和召回率,以检测三个经典的模块化缺陷。得出了以下几点结论:(1)利用代码演化的信息有助于有效地检测模块化缺陷;(ii)在这两个系统中,历史敏感策略的结果优于传统策略。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约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学术官方微信