Submitty
Homework Autograding and Course Management Tools
Technologies
Topics
About
Submitty is an open source programming assignment submission system with secure and automated testing and grading, efficient manual TA/instructor grading, and additional tools for overall course management and communication between students and instructional staff. Submitty was launched by the Rensselaer Center for Open Source Software (RCOS) in 2014.
Key Features
- Secure testing of many programming languages: Python, C/C++, Java, etc.
- Customizable automated grading with immediate feedback to students, and optional hidden or randomized tests.
- Advanced grading tools: static analysis, unit testing, code coverage, memory debuggers, networked assignments, custom Docker containers, and screenshots/GIFs of graphics programs.
- Individual or team assignments submitted by drag-and-drop or version control.
- Correct mistakes through multiple submissions, flexible ``late day’’ policy.
- Interface for complementary instructor/TA manual grading, regrade requests, anonymized peer grading.
- Instructor bulk upload of scanned .pdf exams, QR code name matching, pdf annotation.
- Supports course material hosting, term grades spreadsheet, plagiarism detection.
- Integrated discussion forum, email announcements, lecture polling, office hours queue, and student activity dashboard.
- Scales to multiple courses, thousands of students, multiple instructors and TAs per course.
- Open-source, free to use, install on your own hardware, or VPS.
Submitty has been used at a half dozen other universities and we aim to grow to more users and developers. The courses using Submitty cover the undergraduate and graduate curriculum from introductory programming courses, intermediate and advanced theory courses, popular junior/senior electives with team projects and written reports, and specialized graduate courses.
We regularly present our work at the annual ACM SIGCSE conference.