There has been a paper, or more, about the automated grading system. The key point is that many, many automated system is invented, tested and use in contest and/or online judge environment — without releasing the source code.

See the problem?

There has been a try to create one, unified grading system (Mares, 2007) called MO-Eval. But due the complication of the system and lag of good documentation, it can be said that the project fail miserably. It is, though, success in establish as a Czech national grading system.

The main problem with  MO-Eval system is the project is aimed with IOI-based contest, and it makes an extensive use of shell script, make it very had to migrate to other platform. Also, the interface isn’t very clear and the set of shell scripts is very complicated (at least for newer programming, who usually code in very clean Python, Java or C#). And most importantly, each module has very high coupling rate.

So far, I will introduce you to my new Active-Grader (previously OpenGrader, but due name conflict it was changed to this name). It will only provide the grading part with configurable interface. There is no UI, so you can write your own UI and connect them the the grader. The grader will read each evaluation request, process them and store the result for the UI.

Currently it is still under heavy development, but expected to make a first release before October.