Cloud Computing

Overarching Project


Let’s again continue with the overarching project. First, in the next step, you’ll modify the project so that each submission has an associated user identifier.

Loading Exercise...

Next, you’ll add solutions to the exercises and a new language “SQL”. You’ll also modify the concrete grading logic to use a naive distance-based metric.

Loading Exercise...


Better grading needed..

Grading just based on the distance between the solution and the submission is rather simplistic. In practice, you would need to use a more sophisticated approach, such as comparing the outputs of the submitted code against a set of expected outputs.

With databases, one could also create temporary in-memory databases and relevant tables, and compare the results of the submitted SQL queries against expected queries, also checking that the queries do not include expected outputs. This analysis could also include checking query performance and other aspects such as possible changes to the database schema.

Furthermore, in practice, we would want an overflow mechanism, where grading jobs would be dispatched to e.g. a serverless function if the grader queue would start to build up. For a description of such an approach, see the thesis Serverless Automated Assessment of Programming Assignments.