Metric and rule based automated detection of antipatterns in object-oriented software systems

Mehmed Taha Aras, Y. E. Selçuk
{"title":"Metric and rule based automated detection of antipatterns in object-oriented software systems","authors":"Mehmed Taha Aras, Y. E. Selçuk","doi":"10.1109/CSIT.2016.7549470","DOIUrl":null,"url":null,"abstract":"Patterns are techniques to improve design and enhance reusability. Design patterns are general solutions which are used for common problems in object oriented systems. Code and design smells are symptoms of weak design and development, problems that reside deep in code and reduce the quality of software. The antipattern concept is also introduced as poor solutions to solve recurring problems, even though developers think that they practice a design pattern. It is proven that antipatterns have negative effects on maintainability, flexibility and readability of object oriented software systems. In this research, we propose a metric and a rule based automated antipattern detection system for object oriented software. This system consists of three main mechanisms to detect an antipattern. These mechanisms are “Metric Analyzer”, “Static Code Analyzer” and “Filtering Mechanism”. We specified three antipatterns to analyze; namely Blob, Swiss Army Knife and Lava Flow. Thresholds that are used to detect antipatterns are determined considering six reference projects' results and averages of the analyzed project itself. Detection algorithms have been applied on a set of hand-crafted Java classes and accuracy percentages are measured according to the produced results.","PeriodicalId":210905,"journal":{"name":"2016 7th International Conference on Computer Science and Information Technology (CSIT)","volume":null,"pages":null},"PeriodicalIF":0.0000,"publicationDate":"2016-07-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"8","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2016 7th International Conference on Computer Science and Information Technology (CSIT)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/CSIT.2016.7549470","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 8

Abstract

Patterns are techniques to improve design and enhance reusability. Design patterns are general solutions which are used for common problems in object oriented systems. Code and design smells are symptoms of weak design and development, problems that reside deep in code and reduce the quality of software. The antipattern concept is also introduced as poor solutions to solve recurring problems, even though developers think that they practice a design pattern. It is proven that antipatterns have negative effects on maintainability, flexibility and readability of object oriented software systems. In this research, we propose a metric and a rule based automated antipattern detection system for object oriented software. This system consists of three main mechanisms to detect an antipattern. These mechanisms are “Metric Analyzer”, “Static Code Analyzer” and “Filtering Mechanism”. We specified three antipatterns to analyze; namely Blob, Swiss Army Knife and Lava Flow. Thresholds that are used to detect antipatterns are determined considering six reference projects' results and averages of the analyzed project itself. Detection algorithms have been applied on a set of hand-crafted Java classes and accuracy percentages are measured according to the produced results.
面向对象软件系统中基于度量和规则的反模式自动检测
模式是改进设计和增强可重用性的技术。设计模式是用于解决面向对象系统中常见问题的通用解决方案。代码和设计气味是设计和开发薄弱的症状,存在于代码深处的问题降低了软件的质量。反模式概念也是作为解决反复出现的问题的糟糕解决方案引入的,即使开发人员认为他们实践了设计模式。事实证明,反模式对面向对象软件系统的可维护性、灵活性和可读性有负面影响。在本研究中,我们提出了一种基于度量和规则的面向对象软件自动反模式检测系统。该系统由三种检测反模式的主要机制组成。这些机制是“度量分析器”、“静态代码分析器”和“过滤机制”。我们指定了三个要分析的反模式;即Blob, Swiss Army Knife和Lava Flow。用于检测反模式的阈值是根据六个参考项目的结果和所分析项目本身的平均值来确定的。检测算法已应用于一组手工制作的Java类,并根据生成的结果测量准确率百分比。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约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学术官方微信