01 August 2024
09:00 Doctoral defense IC3 Auditorium
Comprehension Problems in Correct Code: Assisting Instructors and Students by Illuminating What is Potentially Obfuscated by Autocorrect
Eryck Pedro da Silva
Advisor / Teacher
Rodolfo Jardim de Azevedo - Co-supervisor: Ricardo Edgard Caceffo
Brief summary
One of the challenges of teaching-learning introduction to programming at universities (CS1) is the development of adequate feedback for students: a high number of students per class creates difficulties or even makes individual interaction between instructor and student unfeasible. In this scenario, feedback generation is usually carried out through automatic code evaluation systems. However, as these tools usually only check whether the code is correct, other features present may be being ignored. In this thesis, Comprehension Problems in Correct Codes (PC³) were identified, which are behaviors that potentially indicate incomplete or incorrect understanding of CS1 concepts. In total, 45 PC³ were identified by manually analyzing 2,441 student codes in an introduction to Python programming class taught in the structured paradigm. The initial validation of the PC³ was carried out through teacher and student consultation, with the aim of identifying the potential causes of students committing these behaviors. Consultation with teachers also made it possible to list 15 CP³ considered more serious, that is, which have a higher priority for correction in the classroom. With the focus of the thesis redirected to these more serious CP³, educational artifacts were constructed to assist the teaching and learning of CS1 with respect to these behaviors: an automatic detection tool and the development of teaching materials that address the explanation of why these CP³ should be avoided. The automatic detection tool was used in a large-scale study to evaluate the frequency of the most severe CP³ over eight academic semesters of a CS1 discipline, totaling more than 40.000 submissions. The results obtained demonstrate that the most serious CP³ occur continuously throughout an academic semester, and do not appear to be corrected by the students on their own. Half of these more serious PC³ encompass topics about decision and repetition commands, crucial subjects in CS1. The other half concerns students' lack of concern for maintaining code organization and readability. The educational materials were evaluated in a case study with 23 students from a CS1 class. The results obtained suggest that instruction, inside or outside the classroom, has the power to influence both the occurrence and correction of CP³. However, the application of materials alone does not appear to be sufficient to mitigate CP³, as the educational environment needs to reinforce, in more aspects, the need for students to avoid these behaviors. This thesis proposes that teachers and students of introductory programming subjects pay attention to checking the PC³ in addition to the correctness of the codes, as the results suggest that students pass these subjects and can obtain maximum marks, but still carry an incomplete understanding. or incorrect concepts learned.
Examination Board
Rodolfo Jardim de Azevedo IC / UNICAMP
Jacques Wainer IC / UNICAMP
Julio Cesar dos Reis IC / UNICAMP
Rodrigo Silva Duran IFMS
Leandro Silva Galvao de Carvalho IComp / UFAM
Ricardo de Oliveira Anido IC / UNICAMP
Yorah Bosse CPPP/UFMS
Ronaldo Celso Messias Correia FCT/UNESP