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.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
面向对象软件系统中基于度量和规则的反模式自动检测
模式是改进设计和增强可重用性的技术。设计模式是用于解决面向对象系统中常见问题的通用解决方案。代码和设计气味是设计和开发薄弱的症状,存在于代码深处的问题降低了软件的质量。反模式概念也是作为解决反复出现的问题的糟糕解决方案引入的,即使开发人员认为他们实践了设计模式。事实证明,反模式对面向对象软件系统的可维护性、灵活性和可读性有负面影响。在本研究中,我们提出了一种基于度量和规则的面向对象软件自动反模式检测系统。该系统由三种检测反模式的主要机制组成。这些机制是“度量分析器”、“静态代码分析器”和“过滤机制”。我们指定了三个要分析的反模式;即Blob, Swiss Army Knife和Lava Flow。用于检测反模式的阈值是根据六个参考项目的结果和所分析项目本身的平均值来确定的。检测算法已应用于一组手工制作的Java类,并根据生成的结果测量准确率百分比。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
An ontology for Juz' Amma based on expert knowledge Privacy preserving data mining on published data in healthcare: A survey Metric and rule based automated detection of antipatterns in object-oriented software systems Arabic OCR evaluation tool Emotion estimation from EEG signals during listening to Quran using PSD features
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1