A New Family of Software Anti-patterns: Linguistic Anti-patterns

V. Arnaoudova, M. D. Penta, G. Antoniol, Yann-Gaël Guéhéneuc
{"title":"A New Family of Software Anti-patterns: Linguistic Anti-patterns","authors":"V. Arnaoudova, M. D. Penta, G. Antoniol, Yann-Gaël Guéhéneuc","doi":"10.1109/CSMR.2013.28","DOIUrl":null,"url":null,"abstract":"Recent and past studies have shown that poor source code lexicon negatively affects software understand ability, maintainability, and, overall, quality. Besides a poor usage of lexicon and documentation, sometimes a software artifact description is misleading with respect to its implementation. Consequently, developers will spend more time and effort when understanding these software artifacts, or even make wrong assumptions when they use them. This paper introduces the definition of software linguistic antipatterns, and defines a family of them, i.e., those related to inconsistencies (i) between method signatures, documentation, and behavior and (ii) between attribute names, types, and comments. Whereas \"design\" antipatterns represent recurring, poor design choices, linguistic antipatterns represent recurring, poor naming and commenting choices. The paper provides a first catalogue of one family of linguistic antipatterns, showing real examples of such antipatterns and explaining what kind of misunderstanding they can cause. Also, the paper proposes a detector prototype for Java programs called LAPD (Linguistic Anti-Pattern Detector), and reports a study investigating the presence of linguistic antipatterns in four Java software projects.","PeriodicalId":309343,"journal":{"name":"2013 17th European Conference on Software Maintenance and Reengineering","volume":"41 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2013-03-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"72","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2013 17th European Conference on Software Maintenance and Reengineering","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/CSMR.2013.28","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 72

Abstract

Recent and past studies have shown that poor source code lexicon negatively affects software understand ability, maintainability, and, overall, quality. Besides a poor usage of lexicon and documentation, sometimes a software artifact description is misleading with respect to its implementation. Consequently, developers will spend more time and effort when understanding these software artifacts, or even make wrong assumptions when they use them. This paper introduces the definition of software linguistic antipatterns, and defines a family of them, i.e., those related to inconsistencies (i) between method signatures, documentation, and behavior and (ii) between attribute names, types, and comments. Whereas "design" antipatterns represent recurring, poor design choices, linguistic antipatterns represent recurring, poor naming and commenting choices. The paper provides a first catalogue of one family of linguistic antipatterns, showing real examples of such antipatterns and explaining what kind of misunderstanding they can cause. Also, the paper proposes a detector prototype for Java programs called LAPD (Linguistic Anti-Pattern Detector), and reports a study investigating the presence of linguistic antipatterns in four Java software projects.
一种新的软件反模式:语言反模式
最近和过去的研究表明,糟糕的源代码词典会对软件的可理解性、可维护性以及总体质量产生负面影响。除了对词汇和文档的不良使用之外,有时软件工件的描述在其实现方面会产生误导。因此,开发人员在理解这些软件构件时将花费更多的时间和精力,甚至在使用它们时做出错误的假设。本文介绍了软件语言反模式的定义,并定义了一类反模式,即与(i)方法签名、文档和行为之间的不一致性以及(ii)属性名称、类型和注释之间的不一致性相关的反模式。“设计”反模式表示反复出现的、糟糕的设计选择,而语言反模式表示反复出现的、糟糕的命名和注释选择。本文提供了一类语言反模式的第一个目录,展示了此类反模式的真实示例,并解释了它们会引起什么样的误解。此外,本文还提出了一个Java程序的检测器原型,称为LAPD(语言反模式检测器),并报告了一项研究,调查了四个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学术文献互助群
群 号:604180095
Book学术官方微信
小红书