Code Quality Defects in Introductory Programming
Identifikátory výsledku
Kód výsledku v 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>
Výsledek na webu
<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>
Alternativní jazyky
Jazyk výsledku
angličtina
Název v původním jazyce
Code Quality Defects in Introductory Programming
Popis výsledku v původním jazyce
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.
Název v anglickém jazyce
Code Quality Defects in Introductory Programming
Popis výsledku anglicky
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.
Klasifikace
Druh
J<sub>imp</sub> - Článek v periodiku v databázi Web of Science
CEP obor
—
OECD FORD obor
10201 - Computer sciences, information science, bioinformathics (hardware development to be 2.2, social aspect to be 5.8)
Návaznosti výsledku
Projekt
—
Návaznosti
S - Specificky vyzkum na vysokych skolach
Ostatní
Rok uplatnění
2025
Kód důvěrnosti údajů
S - Úplné a pravdivé údaje o projektu nepodléhají ochraně podle zvláštních právních předpisů
Údaje specifické pro druh výsledku
Název periodika
ACM Transactions on Computing Education
ISSN
1946-6226
e-ISSN
1946-6226
Svazek periodika
25
Číslo periodika v rámci svazku
4
Stát vydavatele periodika
US - Spojené státy americké
Počet stran výsledku
32
Strana od-do
1-32
Kód UT WoS článku
001615773900009
EID výsledku v databázi Scopus
2-s2.0-105020854398