大学向けSPI対策講座に利用しているMoodleでは、「コースメタリンク」機能を活用している。
コースメタリンク機能とは、1つのコースに登録すると、他のコースにも登録される機能である。
弊社の大学向けSPI対策講座システムは、数学が苦手な学生のために、足し算や引き算、分数の計算など基礎から難度の高い問題(たとえば3軸の集合や確率など…)まで1000問以上を取り揃えている。
内容が多い故に、「SPI対策講座」を1つのコースにまとめると学習が大変なことになる。そこで、いくつかのレベルにわけて複数コースを作成し、学生は数学レベルごとにコースを選択し、学習を進める。
管理者の仕事の一つは、学生をコースに登録することである。
そこで、コースメタリンクが大活躍をする。
この機能を使うまでは、各コースごとに学生を登録していた。
CSVファイルで一括登録できるので、そんなに大変なことではないが、
学生をコースから削除しようとするとまたそれぞれのコースから削除する必要がある。
手間である。
そこで、コースメタリンク機能である。
コースメタリンク
本家のメタコースの説明によると
コースメタリンクプラグインでは「メタコース」と呼ばれる1つのコースに他の複数のコースから受講登録者を持ってくることができます。
ちなみに、私が聞いた説明の中で一番把握できたのは
「図書館のような使いかたができる」=コースに登録すると自動的にそのコースも使えるようになる
という説明だった。
上記の場合、コースX、Y、ZそれぞれからコースAへのメタリンクを貼る必要がある。
コースXを表示させ、登録方法から「コースメタリンク」を選択する。
設定画面が表示されたら子コースを表示し、登録する。グループに追加はしない(後ほどグループシンクを利用するので)
これをコースY、コースZと繰り返す。
これにより、コースAに登録されたら、コースX,Y,Zに自動的に登録される。
相互メタリンクに注意!
上記の操作をした後で、コースAからもコースX,Y,Zにメタリンクを張ると、ピンポンダッシュのようになってしまい、Moodleがおかしくなるので要注意。
実際にやってしまい、データベースが肥大化したことがある。
理由は、後述のメタグループを設定していたために、グループが何万も生成されたことによるが、原因がわかり、データベース側の操作により相互メタリンクを止めるまでは本当に大変だった。思い出しても胃が痛い。
ちなみに、登録方法が格納されているデータは「enrol」である。ここのmetaを消したか何かでどうにかなった覚えがある
参考
私が参加している「Moodleトーキョーカフェ」でしくじり先生として発表しました。ひとりのしくじり、みんなの参考。
もう二度とやりたくない。これが本当のメタメタである。
メタコースグループシンク
大学のSPI対策講座は、学年全員を登録し、誰もが使っていいようにしている。
(これのおかげで、この大学の学生はSPI対策をいつでもすることができる。大学向けSPI対策講座はこちらから)
(これを書いている3月も学生が必死でログインし、学習を進めているログが残っている)
さらに、オンデマンドとは別に授業もあるため、授業用のコースを作成し、履修をしている学生を登録している。
そのコースでは出欠管理やアンケート、ちょっとした講義動画を掲載している。
そして、初回の授業で履修者のレベル分けテストを行い、レベルに応じたところから学習するように促している。
レベルによりA~D(今年からはもっと増やすつもりだが)に分け、進捗や学習状況、出欠状況などを確認するということをやっている。
そこで役立つのが、このプラグインである。
これは、子コースのグループをメタコースでも引き継いでくれるという優れものだ。
上のしくじりさえしなければ非常に役に立つ。
ただし、このプラグインを回すためには、cronが回っている必要がある。
弊社ではサーバはPleskというサービスで管理しているため、スケジュール済みタスクという項目で毎日1回
/var/www/vhosts/ドメイン名/httpdocs/local/metagroups/cli/sync.php
を回している。