最近英語のフォーラムで私にとってけっこう深刻な問題が発覚して皆様にお知らせします。英語フォーラムではことです。
http://moodle.org/mod/forum/discuss.php?d=6706
小テストを受けてから、フィードバックが表示されるとしましょう。フィードバック画面では回答の順番はシャッフルされません。小テストを入力した順で示されます。そこで、入力したときに全ての答えAを正解にした私の小テストはそのパターンを見抜く学生にとっては平均75%がすぐ得られます。
なぜなら、1回目の挑戦でランダムに答えると25%のスコアが得られる。しかし、フィードバックの画面ではどの答えが一番であるかを記録してもう一度挑戦したら100%が確実に得られます。平均して67.5%。もう1回挑戦したら、平均のスコアは75%。
挑戦の質問の順番とフィードバック画面の順番があわなくなりますが、二つの解決案があります。
1)フィードバックをいつもランドムにする
moodle/mod/quiz/attempt.php 143行ごろの
if ($quiz->feedback) {
$quiz->shuffleanswers = false; // Never shuffle answers in feedback
quiz_print_quiz_questions($quiz, $result, $questions, $shuffleorder);
print_continue("view.php?id=$cm->id");
}
というところを
if ($quiz->feedback) {
$quiz->shuffleanswers = true; // Always shuffle answers in feedback
quiz_print_quiz_questions($quiz, $result, $questions, $shuffleorder);
print_continue("view.php?id=$cm->id");
}
あるいは、ただshuffleanswersの値を変えないこと
if ($quiz->feedback) {
// $quiz->shuffleanswers = false; don't change this setting
quiz_print_quiz_questions($quiz, $result, $questions, $shuffleorder);
print_continue("view.php?id=$cm->id");
}
後者の方はテストしていません。