A Web-Based Application for Automatic Evaluation of Programming Assignments
AdvisorHarris, Frederick C
StatisticsView Usage Statistics
The assessment of programming assignments are complicated and time-consuming. Also, the number of students enrolling for programming courses is increasing tremendously. The instructors or graders have to dedicate more time to grade the assignment manually with tasks such as downloading source files, compiling and running the program, and entering the grade. This thesis presents an online assignment submission and automatic evaluation web platform for programming classes (Submit). This application allows instructors to create new courses, manage enrolled students for the course, create assignments, etc. The students are able to enroll in courses with a specific join token given by the instructor. Then the students are able to access the assignment and upload the program files for the assignment. They are also able to test the code against the public test cases created by the instructor. The source code compiles and runs automatically and compares the student output with the expected output created by the instructor. The student will get instant feedback for their submission such as output, whether the test is passed or not, what output was expected, and the difference between those two outputs. The instructors are able to grade the assignment and comment on the submitted program via a web interface. The application has been developed with Ruby on Rails and Flask and can utilize the features of both frameworks.