EMMA: a web-based report system for programming course--automated verification and enhanced feedback

EMMA is a web-based system supporting programming language education. It provides an integrated environment enabling students to upload programming assignments and teachers to evaluate them. EMMA automatically executes all programs submitted by students and provides different sets of inputs for them to test their programs. This has the benefit of letting teachers concentrate only on further hands-on verification. It also enables students to study individually and improve the quality of their programs before submission. The system also offers various communication methods between students and teachers. Students can write to teachers with problems and questions and receive both suggestions and evaluations. Also, notable results can be made available to all users, so that students can see their classmates’ results. Among previous web-based tools, many approaches have been applied to solve various problems: some tools offer learning environments adapting to students’ levels [2], while others facilitate building a local environment suitable for assignments [1]. Above all, we developed a system that automates some part of program verification without losing the flexibility of the submission format as programs.