It seemed like time to give an update on this project especially since Monday of this week was Code Freeze for Moodle 4.0. The existing thread was getting extremely long, so I decided to start a new one.
Current state of play
In summary, a huge amount has been done. Most of that is already integrated into the 4.0-development version, and the remaining items are going through the various stages of review. More on that below. This is still being tracked through the project Epic MDL-70329, and either already is on https://qa.moodledemo.net/ or will be arriving there in the next few weeks.
If you want to see where we have got to, this project will be the summary of the Moodle developer meeting next week. Obviously, that is aimed at developers, so will include some technical information about the new plugin type, etc. However, it will also include a bit of a demo. (And MUA members are getting a demo in the current round of town hall meetings.)
The bad news is that not everything we hoped to achieve was completed in time. From the original plan, two things will have to wait for Moodle 4.1:
- New filtering API for searching in the question bank (and associated enhancement to the flexibility of random questions in the quiz).
- Question banks as a type of activity, where you can control which instances exist (and hence the more flexible sharing system).
That work is being tracked through MDL-72752, and the plan is to continue working on this, and get the code written now, and integrated as soon as development for 4.1 opens (which will be around the end of this calendar year.)
What is included in 4.0 (or should be soon)
The real focus of this email is everything that has been done for Moodle 4.0. The following summary is by Antonia, and I am just re-using it.
Question usage
In the question bank users can see, how many times a question (or a specific version) was used in a quiz, in which quizzes and which courses it was used. It is possible to change directly from the usage window to a specific quiz or course. This makes cleaning up old versions and quizzes much easier.
Aggregated statistics
Moodle 4.0 introduces a new statistics page for the question bank. On this page well known quiz statistics (e.g. mean, standard deviation, facility index) are aggregated for a specific question over all question versions in all quizzes. On the versions page (see below) you may also have a look into aggregated statistics for a specific question version.
Plugin structure
The whole quiz and question bank will be based on plugins. This gives everyone (well, everyone able to code PHP) the possibility to write their own question bank plugin adding new and specific features.
Comments
It will be possible to add comments to a question. Comments are displayed in the question preview and users can see if, and if how many, comments have been made on a specific question directly in the question bank. This feature facilitates reviewing and refining questions.
Custom fields
The idea of custom fields is known from Moodle activities, where additional information of all kinds may be added to an activity. This possibility will be added for questions, too.
Question versioning
Moodle 4.0 will probably introduce a versioning of questions. As each edit of a question leads to a new version, changes to a question become transparent.
The version of a question can be changed on the quiz edit page and quizzes can be configured to always use the latest version. Once an attempt is started by a student, the version for this attempt does not change, however. In the question preview one can click trough the versions of a questions and on the brand new version page one can see all the details of all versions of a specific question (including statistics).
Several nice, tiny bits
- Question get statuses that define where questions are visible and usable. So a draft for example cannot be used in a quiz, whereas a ready question can.
- Category management is improved in such a way that categories can be moved by drag-and-drop and collapsed/expanded.
- Improved bulk action UI