If you want to create a new page for developers, you should create it on the Moodle Developer Resource site.

Moodle 2.1 release notes/New question engine

From MoodleDocs

This is a major rewrite of the Moodle question system to make it much more robust and to support lots of new possible functionality. It was implemented by developers at the Open University, primarily Tim Hunt. There is a site on OpenLearn that is running the new question engine (back-ported into Moodle 1.9) at We recommend you start with 'A Moudle Quiz' (not a misspelling: M+OU+DLE). You'll need to register on the site and join the module to interact.

Details at dev:Question_Engine_2 and in MDL-20636.

The main user-visible change is that the old Quiz setting Adaptive mode: yes/no has been replaced by a new option How questions behave. This provides a range of possible behaviours:

Deferred feedback
what used to be called Adaptive mode: no, but with an important addition. With deferred feedback behaviour, it is finally the case that wrong answers to questions can give negative score - one of the oldest outstanding feature requests MDL-1647.
Adaptive mode & Adaptive mode (no penalties)
what used to be called Adaptive mode: yes
Manual grading
used for essay questions (irrespective of what the quiz is set to) but you can now choose to have every question in the quiz manually graded, if you wish.
Interactive mode
This is a new behaviour created by the OU. It is similar to the old adaptive mode, but with a few changes:
  • After submitting one answer, and reading the feedback, the student has to click a 'Try again' button before they can try a new response.
  • Once the student has got the question right, they can no longer change their response.
  • Once the student has got the question wrong too many times, they are just graded wrong (or partially correct) and get shown the feedback and can no longer change their answer.
  • There can be different feedback after each try the student makes.
Immediate feedback
this is a bit like Adaptive/Interactive mode, in that the student can submit their response immediately during the quiz attempt, and get it graded. However, they can only submit one response, they cannot change it later.
Deferred feedback or Immediate feedback with Certainty-based marking
with Certainty-based marking, the student does not only answer the question, but they also indicate how sure they are they got the question right. The grading is adjusted by the choice of certainty, so that students have to reflect honestly on their own level of knowledge in order to get the best mark.

There are corresponding changes in places that use questions, like the quiz and question preview. In particular the quiz manual grading report has been greatly improved.

The question types themselves have not changed very much in this release. The main change is students can attach files to essay question responses if the teacher allows it. Also, the teacher can choose whether the HTML editor is used.

The new system has extensive automated tests, which should ensure that bugs are much rarer in future.


  • This change requires a major database upgrade. Currently the best information about preparing for this is on dev:Question_Engine_2:Testing#Testing_the_upgrade.
  • The one existing feature is its not possible to support in the new system is the Random short-answer matching question type. Therefore, we propose to move this question type out of the main Moodle release, and make it a optional plugin (which will not be compatible with Moodle 2.1 unless someone works out how to fix it). If this change will cause you problems, please explain in this Quiz forum thread.

Note for question-type developers

Unfortunately, the extent of this change means that question types that are compatible with Moodle 2.0 will not work with Moodle 2.1 until they have been updated. Brief instructions for updating your question type are at dev:Developing_a_Question_Type#Converting_a_Moodle_2.0_question_type. If you need more help than this, please ask in the Quiz forum. I (Tim) will respond, and update the documentation. As a rough guide, I was able to upgrade most of the standard and OU-specific question types in about two days each. Of course, I know exactly how the new system works.