Automatic grading systems have been in existence since the turn of the half-century. Several systems have been developed in the literature with either static analysis and dynamic analysis or a hybrid of both methodologies for computer science courses. This paper presents AutoGrad, a novel portable cross-platform automatic grading system for graphical Processing programs developed on Android smartphones during an online course. AutoGrad uses Processing, which is used in the emerging Interactive Media Arts, and pioneers grading systems utilized outside the sciences to assist tuition in the Arts. It also represents the first system built and tested in an African context across over thirty-five countries across the continent. This paper first explores the design and implementation of AutoGrad. AutoGrad employs APIs to download the assignments from the course platform, performs static and dynamic analysis on the assignment to evaluate the graphical output of the program, and returns the grade and feedback to the student. It then evaluates AutoGrad by analyzing data collected from the two online cohorts of 1000+ students of our SuaCode smartphone-based course. From the analysis and students' feedback, AutoGrad is shown to be adequate for automatic assessment, feedback provision to students, and easy integration for both cloud and standalone usage by reducing the time and effort required in grading the 4 assignments required to complete the course.
翻译:半个世纪到来以来,就已经存在自动分级系统。在文献中开发了数个系统,对计算机科学课程采用静态分析和动态分析或两种方法的混合方法。本文展示了AutoGrad(AutoGrad)(AutoGrad)(AutoGrad)(AutoGrad)(AutoGrad)(AutoGrad)(AutoGrad)(AutoGrad(Approid Approd)(AutoGrad)(AutoGrad)(AutoGrad)(AutoGrad)(AutoGrad)(AutoGrad(AutoGrad))(AutoGrad(AutoGrad))(AutoGrad)(AutoGrad))(AutoGrad(AutoGrad))(AutoGrad(AutoGrad))(AutoGrad(AutoGrad))(AutoGradol-GradroGrad(AGradad))(Aut))(AutoGrad(Aut Grad(Aut))(Aut))(Aut Aut Grad(AGrad))(AutoGradroGrad(AGrad))(AGrad) (AGrad(AGrad(AGrad))(Aut) (Aut) (AGrad) (Aut) (Aut) (AGrad) (AGrad) (Aut) (Aut) (Aut) (Aut) (Aut) (A) (A) (A) (A)) (Aut) (A) (Ad) (Ad) (Ad) (A) (Ad) (Aut) (A) (A) (A) (A) (Ad) (Ad) (Aut) (Ad) (Ad) (Ad) (AGradent) (A) (Auto) (A) (Auto) (A) (Auto) (Auto)