Creating a Quiz - CMUCTAT/CTAT GitHub Wiki

Creating a Quiz

Tutors provide feedback to teach the student how to solve the problem. The interface components will turn green or red, respectively, as the student enters correct or incorrect answers; the error messages seek to dispel common misconceptions; and the hints tell the student what to do next. Sometimes, however, your purpose may be not to teach but to simply assess the student's knowledge: you want to test what the student can do without hints or feedback.

CTAT can be used to create quizzes as well as tutors. In fact, almost any example-tracing tutor can be used as a quiz, pre-test, or post-test by simply changing the feedback policy set in a tutor's graph to one that suppresses feedback.

Create a new quiz

To create a quiz from scratch, you will need to create a new HTML interface and a new behavior graph. The process is essentially the same as creating a tutor in CTAT with some minor differences:

  • Interfaces don't require a Hint button or a Hint window.
  • Behavior graphs only need links for correct steps.

If you've never created a CTAT HTML interface, you can use the CTAT HTML Editor to build your interface (or you can create your .html file by hand using CTAT HTML components). Instructions for using the HTML editor can be found here. If you haven't created a behavior graph before, you might want to work through Creating an example-tracing tutor first.

Create a new HTML interface

You create an interface for a quiz the same way you create an interface for a tutor. Some interface components, however, are less useful in a quiz.

  • A CTATDoneButton is required in the interface.
  • A CTATHintButton is optional; if one is included, it will be hidden from the student.
  • A CTATHintWindow is optional.
  • A CTATSkillWindow is not recommended; if one is included and the graph defines skills, it might provide clues to the student that their answers are correct or incorrect.

Create a new behavior graph

As with tutors, you create a graph to be used for a quiz using the same initial steps. With CTAT running and your interface connected to a new Graph tab, create a graph for a quiz by

  1. Entering your problem's given values (fields that should be filled in before the student begins, if any) in the interface to set the "start state",
  2. Creating a "start state" node in a new Graph tab in CTAT, and
  3. Demonstrating correct input, including the Done step, in the interface.

Unlike tutors, there is no need to demonstrate incorrect steps or to define hint messages. Depending on the problem, there is often no need to demonstrate alternate paths. Add skills to the links in your graph if you want to track the student's knowledge of steps in the problem.

  • Graphs for quizzes typically contain a single path ending in a Done step.
  • Select a feedback policy to prevent feedback from being given to the student. The feedback policy can be set for a graph from the Graph > Feedback Policy menu in the authoring tools. (See Choose a feedback policy.)

Figure: Quiz interface with feedback policy set to Hide All Feedback.

Choose a feedback policy

CTAT supports several feedback policies. The policy set by default for all new graphs is Show All Feedback, which is the policy for tutors. There are three feedback policies that hide all feedback from the student. Of these three, Hide All Feedback and Hide feedback but require all steps are most commonly used for quizzes and tests:

  • Hide All Feedback: Behavior graphs that have this policy set display no feedback to the student. Hiding feedback includes the following:

    • Bug messages and success messages are not displayed.
    • If the interface includes a CTATHintButton, the hint button is hidden so that the student cannot request hints.
    • Interface components do not turn green or red based on the student's input.
    • Students can enter input in any order, and they can change their answers as many times as they like; only the final answer is submitted as the student's input when the Done button is clicked.
    • If using the Hide All Feedback policy, you might want to prompt the student to confirm that they are done before their answers are submitted. This prompt can be enabled from the Graph > Confirm Done menu.

    Figure: Prompt the student to confirm that they are done.

  • Hide feedback but require all steps: In addition to the behavior for Hide All Feedback, this policy also requires that the student provide an answer to every question before submitting. If the student presses the Done button but has not answered every question, a message is displayed in the Hint window informing the student that they must enter a value for every question. (If the HTML interface does not include a Hint window, this message is displayed in a popup window.)

  • Hide feedback but enforce constraints: Like Hide All Feedback, no feedback will be displayed, but ordering of steps and the number of attempts at steps (link traversal minimums and maximums) are enforced.

To set the feedback policy for a behavior graph:

  1. Open the behavior graph for your quiz in CTAT.
  2. Select Graph > Feedback Policy from the CTAT menu bar.

Figure: Setting a feedback policy.

Convert a tutor into a quiz

CTAT permits you to convert a tutor into a quiz by making the feedback invisible to the student. In a quiz, the system still determines (and logs) whether each student answer is right or wrong, and it still recalculates skill levels internally, but it suppresses all correct/incorrect indications, error messages and hints from the student interface.

Suppressing feedback is controlled by setting the "feedback policy" in the behavior graph for your tutor. If you do not want to change the feedback policy of an existing graph that you use for tutoring:

  • You can make a copy of the existing graph, name it to indicate that it is a quiz (e.g., problem1-quiz.brd), and set the feedback policy to suppress feedback; or
  • Create a new graph, demonstrate correct answers, and set the feedback policy. You can add skills to the links if desired. You don't need to demonstrate incorrect steps or define hint messages.

See Choose a feedback policy for a description of the feedback policies and how to set it for your graph.