Publication details

Code Quality Defects in Introductory Programming

Authors

ŘECHTÁČKOVÁ Anna PELÁNEK Radek EFFENBERGER Tomáš

Year of publication 2025
Type Peer-reviewed scientific article
Magazine / Source ACM Transactions on Computing Education
MU Faculty or unit

Faculty of Informatics

Citation
web ACM Digital Library
Doi https://doi.org/10.1145/3749996
Keywords programming; code quality; defects; CS1
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.
Related projects:

You are running an old browser version. We recommend updating your browser to its latest version.

More info