The TRY system -or- how to avoid testing student programs
SIGCSE '89 Proceedings of the twentieth SIGCSE technical symposium on Computer science education
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Grading student programs using ASSYST
SIGCSE '97 Proceedings of the twenty-eighth SIGCSE technical symposium on Computer science education
An automatic grading scheme for simple programming exercises
Communications of the ACM
Fully automatic assessment of programming exercises
Proceedings of the 6th annual conference on Innovation and technology in computer science education
The marking system for CourseMaster
Proceedings of the 7th annual conference on Innovation and technology in computer science education
Experiences in automatic assessment on mass courses and issues for designing virtual courses
Proceedings of the 7th annual conference on Innovation and technology in computer science education
Multiple implementations for component based software using Java interfaces
Journal of Computing Sciences in Colleges
Teaching software testing: automatic grading meets test-first coding
OOPSLA '03 Companion of the 18th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
"Objects first, interfaces next" or interfaces before inheritance
OOPSLA '04 Companion to the 19th annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
Making program grading easier: but not totally automatic
Journal of Computing Sciences in Colleges
Integrated online courseware for computer science courses
Proceedings of the 12th annual SIGCSE conference on Innovation and technology in computer science education
Integrated online courseware for computer science courses
Proceedings of the 12th annual SIGCSE conference on Innovation and technology in computer science education
A tablet-based paper exam grading system
Proceedings of the 13th annual conference on Innovation and technology in computer science education
Review of recent systems for automatic assessment of programming assignments
Proceedings of the 10th Koli Calling International Conference on Computing Education Research
Adapting moodle to better support CS education
Proceedings of the 2010 ITiCSE working group reports
SpecCheck: automated generation of tests for interface conformance
Proceedings of the 17th ACM annual conference on Innovation and technology in computer science education
MyPyTutor: an interactive tutorial system for Python
ACE '11 Proceedings of the Thirteenth Australasian Computing Education Conference - Volume 114
Hi-index | 0.00 |
AutoGrader is a framework developed at Miami University for the automatic grading of student programming assignments written in the Java programming language. AutoGrader leverages the abstract concept of interfaces, as implemented by the Java interface language construct, in both the assignment and grading of programming assignments. The use of interfaces reinforces the role of procedural abstraction in object-oriented programming and allows for a common API to all student code. This common API then enables automatic grading of program functionality. AutoGrader provides a simple instructor API and enables the automatic testing of student code through the Java languagefeatures of interfaces and reflection. AutoGrader alsosupports static code analysis using PMD [4] to detect possible bugs, dead code, suboptimal, and overcomplicated code. While AutoGrader is written in and only handles Java programs, this style of automated grading is adaptable to any language that supports (or can mimic) named interfaces and/or abstract functions and that also supports runtime reflection.