Litcius/Paper detail

Catalog of Code Quality Defects in Introductory Programming

Anna Řechtáčková, Radek Pelánek, Tomáš Effenberger

202416 citationsDOIOpen Access PDF

Abstract

Code quality is an important aspect of programming, as quality code is easier to maintain, and code maintenance makes up the majority of software cost. For that reason, code quality should be emphasized in programming education. Previous work has identified many code quality defects commonly made by students. However, the current state lacks a clear organization and prioritization of these defects. In this paper, we propose an organization framework for code quality defects, presenting a catalog that describes 80 defects, with a specific focus on defects frequently encountered in code by novice programmers. To determine which defects are worth pointing out to students, we conducted a survey among 72 educators, who rated the priority with which each defect should be reported to a student. These presented results serve multiple purposes: they facilitate comparison across various research studies, support the advancement of software tools, and offer inspiration for programming education.

Topics & Concepts

Computer scienceProgramming languageCode (set theory)Quality (philosophy)Software qualityParallel computingSoftwareSoftware developmentPhysicsSet (abstract data type)Quantum mechanicsTeaching and Learning ProgrammingSoftware Testing and Debugging TechniquesSoftware Engineering Research