The Gradiance service for Compilers comes with a collection of root questions. These root questions are packaged into homework sets on the various topics normally covered in a first or second course on Compilers. The instructor is able to use these materials in a variety of ways:
- Select which homework sets and lab projects to use, and set the open date and due date for each.
- Select homework sets as in Option (1), and customize them for the class by deleting or adding questions.
- Create new homework sets from the available question bank.
- Create new questions, and use them in homework sets.
For the area of Compilers, Gradiance offers a collection of homework sets using a special technique called root questions. In a root question, the student is given a problem to work out, and their knowledge is sampled by randomly chosen multiple-choice questions. As with labs, students are encouraged to try an assignment, consisting of several root questions, until they get them all correct. Each time they give a wrong answer to a question, they immediately receive a choice explanation, a bit of advice that either explains why that answer is wrong, gives a hint, or suggests the general approach to the problem.
Advantage: Because the assignments are in the form of multiple-choice questions, the grading is automatic, and solutions are made available as soon as the assignment is completed. However, because students are given randomly selected answer choices each time they try a problem, they are encouraged to solve the complete underlying problem, and are given hints until they can do so. Thus, students get the benefit of long-answer problems graded by the course staff, without the staff having to wade through a pile of papers.