Moodle plugins directory: CAPQuiz | Moodle.org
CAPQuiz
What is it?
CAP is short for /Computer Adaptive Practice/, a term coined by Klinkenberg, Straatemeier, and van der Maas (2011). Where most LMS quiz systems give the students a fixed sequence of questions regardless of how well the students answer, a CAP system will estimate student ability based on their answers, and try to find questions at the right level of difficulty.
In CAPQuiz, the proficiency is measured by a rating. Good answers increase the rating, and bad answers decrease it. To increase the rating, students need to give good answers more of than bad ones /over time/. We have used CAPQuiz as a mandatory assignment, where the students have to reach a certain rating in order to be allowed to sit the exam.
Estimating question difficulty is known to be difficult. CAPQuiz automates this process to some extent. The question author must provide an initial estimate, but CAPQuiz improves the estimates based by comparing how the same student answers different questions. Hence the rated question sets will improve over time.
Recent News
Apologies for the long lapse in maintenance. Now, we can at least offer a version which works, as far as we can tell, on Moodle 4.x.
30 April 2023 We released v0.7.0 for Moodle 4.x.
28 April 2023 We released v0.6.3 for Moodle 3.11 (and 3.9)
Bugs
There will still be bugs, but we hope to be able to fix them as they are reported, but we need details. Please report the problems you have, and include
- Details on the problems.
- Details on the version you use, both the CAPQuiz version and the Moodle version.
- Any error messages observed.
- Moodle XML of the question if you have questions which do not work.
- If possible, report the issues in github. We will try to follow up on issues reported below as well.
Documentation
See link below
History:
The idea of an adaptive learning system at NTNU in Ålesund (then Ålesund University College) was first conceived by Siebe van Albada. His efforts led to a prototype, known as MathGen, written as a standalone server in python.
The first prototype was tested by several lecturers, and was well received by students. There were, however, many problems which we lacked the resources to handle. Most of these problems had already been solved by Moodle and the STACK question type, and it made sense to reimplement the adaptive quiz functionality in Moodle to take advantage of this.
Credits:
Project lead: Hans Georg Schaathun: hasc@ntnu.no
Developers:
- Aleksander Skrede aleksander.l.skrede@ntnu.no
- Sebastian S. Gundersen sebastian@sgundersen.com
- André Storhaug andr3.storhaug@gmail.com
Original idea: Siebe Bruno Van Albada siebe.b.v.albada@ntnu.no
The first prototype was funded in part by Norgesuniversitetet.
The development of CAPQuiz has been funded in part by internal grants from Ålesund University College and NTNU Toppundervisning at NTNU - Norwegian University of Science and Technology.
Thank you for your quick reply.
I now understand making questions and also assigning a rating.
I have a follow-up question.
I would like to perform a conditional action based on the rating or number of stars achieved. How do I do this?
Thank you in advance for your response.
Sincerely,
Kees Koopman
I know we had some challenges with this, as we wanted to implement the stars as badges, rather than as a plugin internal score. It may or may not be related.
I'll try to talk to my colleagues. With a good example from another plugin, it might be an easy thing to fix.
Thank you for your response.
My question was: "I would like to perform a conditional action based on the rating or number of stars achieved. How do I do this?"
I think I mean something simpler than you may think.
For example: a student receives a grade in the gradebook after taking a test. I can then have a conditional action depend on that figure. If 'grade for test <6.0', then 'do repeat material'. Etc.
This 'repeat material' has a 'Restricted Access'. For example, a certain grade for a test, a certain stash object or a certain level (Level up!).
What I want is that there is a 'Restrict Access filter' that can filter on 'student level' or 'number of stars'.
See also: https://moodle.org/plugins/availability_xp and https://moodle.org/plugins/availability_stash.
I hope my explanation is clear; otherwise ask for an explanation.
Thanks in advance!
Regards, Kees Koopman.
It is still beyond my use of Moodle; I use Moodle only for activities, I do not organise taught modules. But obviously you are right. Issuing a grade makes sense, and I have a couple of students who will be working on CAPQuiz and JazzQuiz over the Summer, and this sounds like something we can fix in that timeframe.
I was just wondering what use case you have in mind. My own use case was to allow the students to continue work on the activity indefinately. There is a deadline for reaching three stars, and I simply record outside moodle who have achieved it soon after the deadline, without disrupting the flow for those heading for five stars.
How would you organise it (in an ideal world)? Close the activity at the deadline and use the number of stars as a grade? Issue a grade at the deadline and keep the activity open? Or?
:-- George
Hi George,
Thank you for your response.
I didn't mean so much that a student gets a grade. That also does not do justice to the intention of CAPQuiz, I think.
Somewhere in the Moodle database is the student's obtained rating. Joe Smith, for example, has a rating of 1565.
I have a document, certificate, test, web link or something available for students who have a rating of 1550 and higher. Joe Smith is eligible for this (after all: 1565> 1550).
In that follow-up document, with Restrict Access there is something like: if the student scores at CAPQuiz> 1550, then he can see the document.
Writing this I think of a wish.
At "Activity Completion" >> "Completion tracking" >> "Show activity as complete when conditions are with" >> "Require a rating of ....." (see stash or level up).
On the dots you can then enter the minimum rating where Moodle automatically ticks the CAPQuiz. This can then be used as input for the Progress Bar.
You write that you have a deadline for reaching three stars and that you register that outside of Moodle. I like to see the latter automatically and within Moodle .
The Moodle progress bar that I use is a fantastic instrument for that.
The student may (or must) continue to improve himself; In my opinion, CAPQuiz should simply remain open.
Regards, Kees Koopman.
CAPQuiz now supports the grading system. You can find the documentation here: https://github.com/KQMATH/moodle-mod_capquiz/wiki/Grading
If you try this feature, feedback is much appreciated.
Regards, Sebastian Gundersen.
I would be grateful, Kees, if you would tell me if the current solution meets your requirement. What we do is to export the number of stars to the gradebook, until the deadline.
Since I personally only manage single activities, and not complete courses, I do not really know what's needed.
:-- George
The screenshots show that the teacher needs to select the number of questions in the quiz (10 in the example). But you say in the description that students had to reach a certain rating in order to be allowed to sit the exam (how you used it). So, how does that work? Can the students take the same capquiz multiple times?
Or, Is there a way to not limit the number of questions in a quiz and require them continue solving problems until they reach a required rating?
Thanks,
1. In the module design, it is quite common in Norwegian HE to have compulsory assignments, which do not count towards the exam, but which are prerequisites to sit the exam. This is how my colleagues and I intended CAPQuiz to be used. Through the CAPQuiz activity the student earns a number of stars. We can require that the student achieve a certain number of stars as their compulsory assignment, which has to be achieved before being allowed to sit the exam. We have not considered if the number of stars could be factored into the final grade in a sensible way, and the plugin should mature beyond the current experimental stage before such use is considered in practice.
2. In the activity design, there is no limit on the number of questions. Obviously only a finite number of questions is added to the activity at any time. Because each question has to be assigned a rating, CAPQuiz will not automatically draw random questions from the question bank. It is possible to bulk add questions with the same starting rating, but I cannot remember how easy this is in the UI. There is no limit to the number of questions the students get, they will keep getting questions as long as they want to, usually repeating questions if they do not rapidly progress.
Does this answer you question?
Repeating questions is not a concern with parameterised questions in random variants as supported by STACK and Calculated. Other static question types will of course require an enormous number of questions to make repetitions few and far between. This will work out differently in different subjects.
Now, it should be noted that there is a performance limit in the moodle question bank. This is no problem for small quizzes or quizzes using light-weight question types, but with CAPQuiz we have been expecting quizzes with a large number of STACK questions in many deployed variants, and the combination of a computationally costly question type (STACK) and the large number of questions (40+ in 100+ variants), this broke down. We had one very successful student assignment without STACK questions, but I had to cancel the second one where STACK was used because of performance issues. Hopefully we can resolve this issue over the next six months.
Let’s say a students takes a capquiz activity which has 10 problems to solve and finishes the test but doesn’t reach the required level (the rating or the stars) to pass (like the rating you require them to be able sit an exam). What happens? Do they take it again until they pass?
And if there are a large number of questions in a capquiz activity (say 100), can the student leave the test when they are tired and continue where they left off the next day?
Thanks a lot
When I use it as a compulsory assignment, the requirement is that the student achieve three stars at any point before the deadline. While skilled students can do this in less than an hour, the assumption is that most students will have to try, fail, return to the book, ask a friend, and get back to CAPQuiz to continue another evening. But this obviously depends a lot on the topic and the question design.