Quiz versioning/archiving

Quiz versioning/archiving

by Bart Du Bois -
Number of replies: 4

I intend to evolve my quiz activity through continuous improvement.
E.g., taking answers to essay questions into account to add new questions.

This continuous improvement introduces the need for quiz versioning, for which I'd like to know whether I'm missing out on a better approach?

I have the following quiz versioning requirements:

  • keep access to previous quiz attempts;
  • keep multiple versions of my quiz - identifying each version;
  • keep merely one active version of a quiz, closing old versions (date-based);
  • hiding old quiz versions from students - such that they don't get confused

My current approach is to create a new version of a quiz by duplicating the previous one, renaming the previous quiz to reflect that it's an old version, and moving the previous quiz to a hidden topic.

Do you have similar needs and a better approach?
Really looking forward to learn from you.

Average of ratings: -
In reply to Bart Du Bois

Re: Quiz versioning/archiving

by Marcus Green -
Picture of Core developers Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers
There is no simple solution to what you are asking and I suggest you double check that duplicating the quiz is doing what you think it is doing.
Average of ratings: Useful (2)
In reply to Marcus Green

Re: Quiz versioning/archiving

by Bart Du Bois -

Hi Marcus,

I get that quiz duplication:

  • does not copy attempts in the new quiz activity - but it does copy the questions (as links to the question bank)
  • modifying a question affects all quiz activities in which the question is used, hence not isolating the original quiz from changes.

Perhaps a cleaner approach is to do versioning at course level, duplicating the course through backup/restore. This would create an unrelated question bank, isolating changes to the new version only.

Kind regards,
Bart.

In reply to Bart Du Bois

Re: Quiz versioning/archiving

by Tim Hunt -
Picture of Core developers Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers
Versioning of quizzes and is a notable missing feature - for the minority of people who actually need it.

The main reason it has not happened - well first it is a small minority who need it - and second, it is very complicated, and the quiz is already too complicated for some people. So, before anything could be implemented, we need a design for how it could work, so it is there where necessary, without over-complicating the user-interface, and simple enough to understand that we can develop and maintain the back-end without infinite bugs. To date, I have not managed to think of a design like that. Mainly, because I have not spent enough time on it.
Average of ratings: Useful (2)
In reply to Tim Hunt

Re: Quiz versioning/archiving

by Iphigenia Symeonidis -

Hi,

I too have the same issue as described by original poster with the extra requirement of allowing users who completed a now-outdated version of the quiz, to still have access to their attempt (in other words, I can't completely hide it).

As I cannot state a circular condition "only see old_quiz if old_quiz is complete" (old_quiz cannot reference itself) what was useful was to place my old quiz in it's own topic and then apply the condition to the topic " only see this topic is old_quiz is complete". 

This enabled a kind of versioning but the issue I now face is that the course completion never reaches 100% as no user will ever see both versions of the quiz (if I figure out how to  fix this, I will update the post).

The above is not too major but my versioning approach is still problematic because:

  • it is cumbersome, for the gradebook to work, I need to place both versions in the same gradebook folder and set it to select the higher grade (since one version will never be seen by some users and will always be null)
  • all of the manipulations I make lead to 3 or 4 gradebook recalculation while the course is still ongoing (not ideal, I take the course offline while I do the change, but there is always the chance I insert a mistake)
  • mistakes always slip-in: having a second version of the quiz set up, a mistake with a wrong category getting called was inserted (and despite QAing, the mistake still got through). This was only realized after it went live with attempts already made. Now I need to create a third version and do the same thing and split my users into three visibility groups based on conditions 

All this to say, I think automated quiz versioning is essential especially for ongoing courses (not a session based course) that have a long life span and cannot be versioned at each end of session for instance. Even with versioning every 3-4 months, you can't wait for weeks to pass in order to version the course and fix an issue in a quiz. 

If this is ever on the table, I would be happy to help with the front-end design of the versioning. I am not aware of all the implications in the back-end and the bugs generated but there is hopefully a way around it if a quiz instance is versioned along with a gradebook instance (?). So the calculation of the grade of a specific user gets calculated based on the quiz instance he/she did and the gradebook instance that quiz is attached to. The gradebook gets archived when the quiz does, and the new current gradebook is updated only for users who will attempt the new version of the quiz associated to this new version of the gradebook.

Just some thoughts, I'll keep daydreaming of quiz versioning smile

Thanks