A New Family of Software Anti-Patterns: Linguistic Anti-Patterns. Arnaoudova, V., Di Penta, M., Antoniol, G., & Guéhéneuc, Y. In Cleve, A. & Ricca, F., editors, Proceedings of the 17<sup>th</sup> European Conference on Software Maintenance and Reengineering (CSMR), pages 187–196, March, 2013. IEEE CS Press. 10 pages.Paper abstract bibtex Recent and past studies have shown that poor source code lexicon negatively affects software understandability, 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, ı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 dectector 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.
@INPROCEEDINGS{Arnaoudova13-CSMR-LinguisticAntipatterns,
author = {Venera Arnaoudova and Massimiliano {Di Penta} and Giuliano Antoniol and Yann-Ga{\"e}l Gu{\'e}h{\'e}neuc},
title = {A New Family of Software Anti-Patterns: Linguistic Anti-Patterns},
booktitle = {Proceedings of the 17<sup>{th}</sup> European Conference on Software Maintenance and Reengineering ({CSMR})},
year = {2013},
month = {March},
editor = {Anthony Cleve and Filippo Ricca},
publisher = {IEEE CS Press},
note = {10 pages.},
abstract = {Recent and past studies have shown that poor source code lexicon negatively affects software understandability, maintainabi\-lity, 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, \ie 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 dectector 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.},
grant = {NSERC DG and CRC on Software Patterns},
keywords = {Linguistic smells ; CSMR},
kind = {MISA},
language = {english},
url = {http://www.ptidej.net/publications/documents/CSMR13d.doc.pdf},
pdf = {http://www.ptidej.net/publications/documents/CSMR13d.ppt.pdf},
pages = {187--196}
}
Downloads: 0
{"_id":"MzXmFSvxakbwmnC7j","bibbaseid":"arnaoudova-dipenta-antoniol-guhneuc-anewfamilyofsoftwareantipatternslinguisticantipatterns-2013","downloads":0,"creationDate":"2018-01-17T20:29:42.307Z","title":"A New Family of Software Anti-Patterns: Linguistic Anti-Patterns","author_short":["Arnaoudova, V.","Di Penta, M.","Antoniol, G.","Guéhéneuc, Y."],"year":2013,"bibtype":"inproceedings","biburl":"http://www.yann-gael.gueheneuc.net/Work/BibBase/guehene (automatically cleaned).bib","bibdata":{"bibtype":"inproceedings","type":"inproceedings","author":[{"firstnames":["Venera"],"propositions":[],"lastnames":["Arnaoudova"],"suffixes":[]},{"firstnames":["Massimiliano"],"propositions":[],"lastnames":["Di Penta"],"suffixes":[]},{"firstnames":["Giuliano"],"propositions":[],"lastnames":["Antoniol"],"suffixes":[]},{"firstnames":["Yann-Gaël"],"propositions":[],"lastnames":["Guéhéneuc"],"suffixes":[]}],"title":"A New Family of Software Anti-Patterns: Linguistic Anti-Patterns","booktitle":"Proceedings of the 17<sup>th</sup> European Conference on Software Maintenance and Reengineering (CSMR)","year":"2013","month":"March","editor":[{"firstnames":["Anthony"],"propositions":[],"lastnames":["Cleve"],"suffixes":[]},{"firstnames":["Filippo"],"propositions":[],"lastnames":["Ricca"],"suffixes":[]}],"publisher":"IEEE CS Press","note":"10 pages.","abstract":"Recent and past studies have shown that poor source code lexicon negatively affects software understandability, 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, ı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 dectector 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.","grant":"NSERC DG and CRC on Software Patterns","keywords":"Linguistic smells ; CSMR","kind":"MISA","language":"english","url":"http://www.ptidej.net/publications/documents/CSMR13d.doc.pdf","pdf":"http://www.ptidej.net/publications/documents/CSMR13d.ppt.pdf","pages":"187–196","bibtex":"@INPROCEEDINGS{Arnaoudova13-CSMR-LinguisticAntipatterns,\n author = {Venera Arnaoudova and Massimiliano {Di Penta} and Giuliano Antoniol and Yann-Ga{\\\"e}l Gu{\\'e}h{\\'e}neuc},\n title = {A New Family of Software Anti-Patterns: Linguistic Anti-Patterns},\n booktitle = {Proceedings of the 17<sup>{th}</sup> European Conference on Software Maintenance and Reengineering ({CSMR})},\n year = {2013},\n month = {March},\n editor = {Anthony Cleve and Filippo Ricca},\n publisher = {IEEE CS Press},\n note = {10 pages.},\n abstract = {Recent and past studies have shown that poor source code lexicon negatively affects software understandability, maintainabi\\-lity, 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, \\ie 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 dectector 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.},\n grant = {NSERC DG and CRC on Software Patterns},\n keywords = {Linguistic smells ; CSMR},\n kind = {MISA},\n language = {english},\n url = {http://www.ptidej.net/publications/documents/CSMR13d.doc.pdf},\n pdf = {http://www.ptidej.net/publications/documents/CSMR13d.ppt.pdf},\n pages = {187--196}\n}\n\n","author_short":["Arnaoudova, V.","Di Penta, M.","Antoniol, G.","Guéhéneuc, Y."],"editor_short":["Cleve, A.","Ricca, F."],"key":"Arnaoudova13-CSMR-LinguisticAntipatterns","id":"Arnaoudova13-CSMR-LinguisticAntipatterns","bibbaseid":"arnaoudova-dipenta-antoniol-guhneuc-anewfamilyofsoftwareantipatternslinguisticantipatterns-2013","role":"author","urls":{"Paper":"http://www.ptidej.net/publications/documents/CSMR13d.doc.pdf"},"keyword":["Linguistic smells ; CSMR"],"metadata":{"authorlinks":{"gu�h�neuc, y":"https://bibbase.org/show?bib=http%3A%2F%2Fwww.yann-gael.gueheneuc.net%2FWork%2FPublications%2FBiblio%2Fcomplete-bibliography.bib&msg=embed","guéhéneuc, y":"https://bibbase.org/show?bib=http://www.yann-gael.gueheneuc.net/Work/BibBase/guehene%20(automatically%20cleaned).bib"}},"downloads":0,"html":""},"search_terms":["new","family","software","anti","patterns","linguistic","anti","patterns","arnaoudova","di penta","antoniol","guéhéneuc"],"keywords":["linguistic smells ; csmr"],"authorIDs":["AfJhKcg96muyPdu7S","xkviMnkrGBneANvMr"],"dataSources":["Sed98LbBeGaXxenrM","8vn5MSGYWB4fAx9Z4"]}