Rodrigo Elias Francisco
◽
Ana Paula Laboissière Ambrósio
◽
Cleon Xavier Pereira Junior
◽
Márcia Aparecida Fernandes
Online judges, initially used in programming marathons, have also been adopted to teach Introductory Programming (CS1), presenting some advantages, as reducing teacher workload and instant feedback to students, and disadvantages by of not being fully adapted as a tool for teaching. This paper presents a Systematic Review of Literature (SRL) about online judges for teaching CS1, which focused on aspects: benefits, problems; functional requirements and nonfunctional requirements. The result contributed to an online judge specification that meets the CS1 discipline. Also a practical experience was realized with the use of online judge BOCA (developed for programming marathons) in the teaching of CS1's classes. The lessons learned from practical experience and the knowledge gained at SRL contributed to a judge online proposal for teaching CS1, focusing primarily on three requirements considered essential: building exercise lists, personalized feedback, and plagiarism. Thus, this research contributes to the teaching of introductory programming by presenting an approach based on results found in the literature, through articles presenting different online judges for teaching, and practical experiences with real classes.