View Full Version : Question Pool - favor unanswered questions in pool across all tests and quizzes

06-26-2008, 01:15 AM
I maintain a test that is given through Prometric testing centers. One of the features my provider has on question pools is the ability to favor presenting students with the questions from the pool that they have not answered yet.

This is generally on retakes so that a retake will not have all the same questions - but in the case of JoomlaLMS it could also be used when multiple quizzes use the same pools.

Her is a sample configuration where this would be useful:

QuestionPoolCategory1 - 10 questions
QuestionPoolCategory2 - 10 questions
QuestionPoolCategory3 - 10 questions

ToipcalQuiz1 - 5 questions from QuestionPoolCategory1 ONLY (randomized)
ToipcalQuiz2 - 5 questions from QuestionPoolCategory2 ONLY (randomized)
ToipcalQuiz3 - 5 questions from QuestionPoolCategory3 ONLY (randomized)
SectionReviewQuiz - 2 questions from each QuestionPoolCategory (randomized)

FinalExam - 5 questions from each QuestionPoolCategory (randomized)

If the system tracked what questions had been already answered by a given user, the above configuration would present a different question from each topical category for all four quizzes, the final exam would present 3 new questions from each category (finally hitting all 10 for each category) and 2 questions that had been previously answered.

06-26-2008, 09:28 PM
The idea is certainly valid, but is hard and costly to implement. You would have to store and evaluate a complete answer pattern for students.... And it really only helps, if you have x times the amount of questions you allow students to repeat the exam.

Pooling and randomizing seem to be more than sufficient to me:

If your pool has 12 questions and your test needs 6, it means you will statistically repeat 3 questions while there will be 3 new ones the second time round.
It furthermore is likely, that at least some of the "repeat" questions were answered wrong the first time - and you WANT the student to answer it again, to make sure he/she now knows the correct answer.
Last - but not least - randomizing the questions is a great help against "mechanical" answering. Question actually have to be reread and reflecte.

06-27-2008, 02:56 AM
I don't think it has to be hard and costly - depending on how things were stored the PHP array functions such as array_diff should be pretty quick.

Also the idea is to prefer questions that have not been seen yet - not be guarenteed no repeats - so it would not be necessary to have double the questions in the pool.

A quick diff of what questions are available and those that have been taken before random selection wouldn't be too hard. If that leaves zero questions, just go back to random selection - it does not need to evenly present all questions after they have been presented at least once.


06-27-2008, 11:08 AM
I don't think it has to be hard and costly - depending on how things were stored the PHP array functions such as array_diff should be pretty quick.
It is not such easy as it seems. In each next user attempt we should research all his previous attempts and get list of questions from them. It require many additional quiries, especially with the situation then quiz can has its own questions additionally to the pool questions.
Another issue: In our quizzes there is no strong attempt limitation (the only way is to set big amount of seconds between attempts) adn user can pas quiz several times and see all your pool quiestions. So, firstly we should create possibility to set number of attempts to take the quiz. And again, it is not such easy - it will require some additional improvements - i.e. interface to null user attempts (what we should do, if user will not pass the only allowed attempt in the first step of the course learningpath?).
But the idea is interesting ;)