LATEX BASED TOOL FOR MANAGING MULTIPLE CHOICE QUESTION EXAMS
Evaluation through exams based on multiple choice questions has an important advantage: the results are completely objective. However, this kind of evaluation is seldom used due to its main drawback: cheating, or copying the answers from a classmate, is much easier for the students.
In order to avoid cheating, a common strategy is to produce different versions of the exam, so that students sitting close to each other during the test cannot share the results. Such a strategy, though effective, is not easy to manage: every different version of the exam requires a new document (in whatever the text processing software used) and increases the workload of the docent.
We present a simple software tool that manages multiple choice exams. The main idea is automating the generation of different exam versions by shuffling all question versions. Our tool is based on Latex processing software, so the first step is to create an initial version of the exam in Latex. Once this initial version is created, the docent may introduce different versions of each question by including markers in the Latex file (in scientific or engineering degrees, the simplest versioning strategy is just to modify the data of the problem, leaving the problem structure untouched).
The next step is using a simple Matlab script (easily portable to other programming languages) which produces a new Latex file where the different versions of each question are combined, resulting in a huge number of exam versions. As an example, a 4 questions test where every question has 4 different versions may offer 256 different exams. All exam versions are pages of a single document, so there is no extra management workload for the docent.
After creating the new Latex file, our Matlab script automatically runs the appropriate Latex commands in order to compile the file and produce two pdf outputs: one for the students (all the version of the exam to be solved) and one for the docent (which helps in the correction process).
The Matlab script, as well as usage instructions and examples are freely available from our website (http://lcsi.umh.es). Porting the code to other programming languages is straightforward; in particular, only minor changes are needed in order to run the script under Octave (the most popular GNU alternative to Matlab).