Code Quality Defects in Introductory Programming
The result's identifiers
Result code in IS VaVaI
<a href="https://www.isvavai.cz/riv?ss=detail&h=RIV%2F00216224%3A14330%2F25%3A00143414" target="_blank" >RIV/00216224:14330/25:00143414 - isvavai.cz</a>
Result on the web
<a href="https://dl.acm.org/doi/10.1145/3749996" target="_blank" >https://dl.acm.org/doi/10.1145/3749996</a>
DOI - Digital Object Identifier
<a href="http://dx.doi.org/10.1145/3749996" target="_blank" >10.1145/3749996</a>
Alternative languages
Result language
angličtina
Original language name
Code Quality Defects in Introductory Programming
Original language description
Code quality is a critical aspect of programming, as high-quality code is easier to maintain, and code maintenance constitutes the majority of software costs. Consequently, code quality should be emphasized in programming education. While previous research has identified numerous code quality defects commonly made by students, the current state lacks a clear organization and prioritization of these defects. In this work, we systematically address code quality defects in introductory programming from multiple perspectives. We present a comprehensive catalog of over 100 specific defects, organized through a structured classification of defect types and their associated programming constructs, along with an importance ranking. We conducted a survey among computer science educators regarding the severity of various defects. Our findings indicate that while individual opinions vary, there is general consensus on many code quality issues. We also review automated methods for detecting code quality defects and introduce a novel tool with extensive defect coverage. Finally, we analyze the prevalence of these defects using multiple datasets and prevalence metrics, demonstrating the importance of contextual interpretation when evaluating defect prevalence.
Czech name
—
Czech description
—
Classification
Type
J<sub>imp</sub> - Article in a specialist periodical, which is included in the Web of Science database
CEP classification
—
OECD FORD branch
10201 - Computer sciences, information science, bioinformathics (hardware development to be 2.2, social aspect to be 5.8)
Result continuities
Project
—
Continuities
S - Specificky vyzkum na vysokych skolach
Others
Publication year
2025
Confidentiality
S - Úplné a pravdivé údaje o projektu nepodléhají ochraně podle zvláštních právních předpisů
Data specific for result type
Name of the periodical
ACM Transactions on Computing Education
ISSN
1946-6226
e-ISSN
1946-6226
Volume of the periodical
25
Issue of the periodical within the volume
4
Country of publishing house
US - UNITED STATES
Number of pages
32
Pages from-to
1-32
UT code for WoS article
001615773900009
EID of the result in the Scopus database
2-s2.0-105020854398