School of Computing

Programming Languages and Systems: AQuest

Auto-Question

AQuest logo

 

Teaching: CO527

AQuest is a terminal-based multiple-choice quiz program. It features:

  • Questions and quiz configuration written in XML.
  • Questions grouped into specific categories.
  • Different weightings for each question.
  • Partially correct answers and negative scoring.
  • Free-text input that can be used to collect descriptive answers (cannot mark these though!).
  • Quiz divided into sections, each of which can draw questions from multiple category.
  • Quiz can be timed on a per-question or per-category basis.
  • Random selection of questions and answers within each category used, either up to a maximum number of questions (all), or a maximum weighting.
  • Wrapper that can be installed suid/sgid for handling large cohorts of students, automatically recording the attempts (and optionally up to a maximum number of attempts).
  • Support for extra-time/less-time for particular users.
  • Couple of scripts that post-process the XML output, generating mark summaries and individual feedback (optionally generating a graph that shows the individual's score with each attempt).

Below is a screen-shot of the quiz software running in a standard X-terminal (click for a full-size version). On the right is an example XML question file.

AQuest screenshot
<question type="multichoice" weight="7" id="5">
    <text>The following shows the page-table for some virtual machine,
        using 4k pages.  The format of virtual addresses is <em>0xPPPPPooo</em>,
        where <em>0xPPPPP</em> is the 20-bit page number and <em>0xooo</em> is
        the 12-bit offset.<pre>
    page  V  R  M  pfn
    ------------------
     3    0  0  0  42
     2    1  1  1  42
     1    1  1  1  16
     0    1  0  0  5
        </pre>
        What would be the effect of the virtual machine reading from
        address <em>0x00003000</em>?
    </text>
    <answers>
        <answer score="100" id="1"><text>a page fault</text></answer>
        <answer score="0" id="2"><text>a read from real memory at 0x00042000
            and setting of the R flag</text></answer>
        <answer score="0" id="3"><text>a read from real memory at 0x0002a000
            and setting of the R flag</text></answer>
        <answer score="30" id="4"><text>setting of the R flag and a page
            fault</text></answer>
        <answer score="0" id="5"><text>a segmentation fault</text></answer>
    </answers>
</question>

Download

The latest version of the code can be downloaded here: aquest-0.2.4.tar.gz.

People:

Publications:

(no publications recorded for this project)

School of Computing, University of Kent, Canterbury, Kent, CT2 7NF

Enquiries: +44 (0)1227 824180 or contact us.

Last Updated: 18/01/2012 23:13