Editorial chain of exercises (project C3)

Dynamic tests

The web is a natural way to have interactive activities. The most common assessments activities are interactive worksheets. Students give their answers on-line and receive feedbacks either after each response or at the end of the assessment. Some are enriched with on-line hints on students' request.
In these activities, the variability is light and results from the use of parameters in the exercises.

But, new technologies give the possibility to create assessment activities much more adapted to each learner, giving them various sequences of exercises according to their responses.

An IMS-QTI 2.1 test, represented by an assessmentTest element is designed for dynamic planning of sequence of exercises. An assessmentTest is a set of assessmentItemRef elements, referencing the assessmentItem elements, associated with a set of rules that determine which of the items (exercises) the learner sees, in what order, and the way the learner interacts with them.
Each test is divided into one or more parts, elements of the testPart class. Each part may be divided into sections and sub-sections, elements of the assessmentSection class. At the part level, the section level and the item level, preCondition and branchRule can be defined:

With these mechanisms, teachers plan dynamic sequences of exercises taking into account students' responses as they go along.

Three examples of dynamic tests on the web

Figure 13: example of section 1

Analyze of the mathematical test

Section 1 (see Figure 13)

  • If the score obtained at squareroot1 is the maximal score, then the next item will be squareroot4 (branchRule) (else the next exercise will be squareroot2, which is a less difficult exercise)
  • squareroot3 is executed only if the score obtained at squareroot2 is zero (preCondition)
  • If the score obtained at squareroot3 is different from the maximal score, then the test will be stopped (branchRule to EXIT_TEST) (the test is too difficult for the learner)
  • If the score obtained at squareroot4 is the maximal score, then the test will continue with the next section (branchRule to EXIT_SECTION) (else the next exercise will be squareroot5)
  • squareroot6 is executed only if the score obtained at squareroot5 is zero (preCondition) (it allows the learner to do another try)
  • If the score obtained at squareroot6 is zero, the test will be stopped (branchRule to EXIT_TEST)

Section 2 (see Figure 14)

  • If the score obtained at squareroot7 is the maximal score, then the next item will be squareroot10 (branchRule) (else the learner will execute the sub-section 2-1 and begin with squareroot8)
  • squareroot9 is executed only if the score obtained at squareroot8 is zero (preCondition)
  • if the score obtained at squareroot9 is zero, the test will be stopped (branchRule to EXIT_TEST) (else the next exercise will be squareroot10)
  • If the score obtained at squareroot10 is the maximal score, then the test will continue with the next section (branchRule to EXIT_SECTION) (else the next exercise will be squareroot11)
Figure 14: example of section 2

We have designed and implemented QTI Test Editor, an editor of tests which creates QTI files (see Figure 15), and QTI Test Generator, a generator of web pages which, from QTI files, creates PHP files.

QTI Test Editor is connected with our base of exercises.

Teachers build tests by declaring parts, sections and sub-sections to which they associate exercise templates.

These are chosen using the functionalities of the base which allow to search for competencies and sub-competencies and to display exercise characteristics such as maximum score.

Figure 15: the QTI Test Editor

QTI_Test_Generator creates from the IMS-QTI file of an assessmentTest a PHP page guiding the learner in regard to his/her results [ICCE 2009] (figure 18).

For example, for the section 1 shown in Figure 13, if the answer of the learner to the first exercise is correct, the next exercise is squareroot4 (see Figure 16).

Figure 16: execution of section 1

For the section 2 shown in Figure 14, if the answer of the learner to the first exercise is wrong, the next exercise is squareroot8 (see Figure 17).

Figure 17: execution of section 2
Figure 18: tests creation

Return to Summary