<論 説>
VBA を利用した Moodle の穴埋め問題支援ツールの試み
五月女 仁 子
目 次
1.Moodleについて 2.実際の利用
3.プログラミング環境
4.穴埋め問題作成支援ツールを作るに当たり 5.穴埋め問題作成支援ツールの使用について 6.考察
はじめに
文系学生のプログラミング教育に反復学習がよいといわれるが,週1回の講義時間で時間内に 反復学習を実施することは難しい。そのため,e−Learningのシステムとして知られているMoo- dleの小テスト機能を利用して,講義時間以外の学習支援を実施した。この小テスト機能が反復 学習として有効に機能するためには,よい問題を多く蓄える必要があるが,この問題を作成する には特別なタグの入力が必要なため時間がかかる。そこで,問題作成のための支援ツールの作成 を試みた。
1.Moodle について
(1)Moodleとは
Moodleとは,オーストラリア・パースにあるカーティン工科大学に在籍 し て い たMartin
Dougiamas氏が開 発 し た コ ー ス 管 理 シ ス テ ム(Course Management System, CMS)で あ る。
ネットワークを利用した教育システムをe−Learningといい,遠隔教育が代表的だが,コース管 理システムの場合は,講義資料の配布,小テスト機能,連絡機能など,もっと身近な利用が考え られる。
また,Moodleはオープンソースソフトで,GNU(General Public License)に基づいて自由に 配布される。プログラムのソースコードが公開されていることにより,利用環境に合わせて改良 や拡張が可能である(図1)。
(2)小テスト機能
Moodleには小テスト機能があり,表1のような多くの種類の問題形式が用意されている。
筆者はプログラムの一部分を穴埋め問題とする形式での小テストの実施を想定していたため,
上記のように多数存在する問題形式の中で「穴埋め問題(Cloze)」を利用した。
小テストの問題を作成するには専用のエディタが存在する。「○/×問題」や「多肢選択問題」
などはエディタの下部に正誤の決定や多肢選択問題の作成画面が用意されているため,比較的容 易に問題を作成できる(図2,図3,図4,図5)。
問題の種類 問題の管理方法
多肢選択問題 1問単位
○/×問題 1問単位
記述問題 1問単位
数値問題 1問単位
計算問題 1問単位
組み合わせ問題 1問単位
説明 1問単位
ランダム記述組み合わせ問題 QuestionBankに依存 穴埋め問題(Cloze) 1セット単位
図1 Moodle 画面
表1 小テストの種類
図2 ○/×問題の編集画面
図3 ○/×問題のプレビュー画面
図4 多肢選択問題の編集画面
(3)穴埋め問題(Cloze)
穴埋め問題(Cloze)には更に3種類の問題形式があり,多肢選択問題,記述問題,数値問題 がある。問題を作成するには図2や図4と同じエディタを使用するのだが,下部に専用の作成画 面はなく,エディタの中に表2のようなタグを直接入力しなければならない。ここでの多肢選択 問題は,(2)でみられたような多肢ではなく,コンボボックスの▼をクリックして選択できる形 式のものである。
ここで,タグのチルダー(〜)がつくものは選択肢となり,イコール(=)がつくものは解答
問題の種類 タグ
多肢選択問題 { : MULTICHOICE : ~ = ~ } 記述問題 { : SHORTANSWER : ~ = ~ } 数値問題 { : NUMERICAL : ~ = ~ } 図5 多肢選択問題のプレビュー画面
表2
図6 穴埋め問題(Close)の編集画面
となる。図6の画面は実際に作成した画面であり,これを保存して,プレビューでみると,図7 の画面となる。
2.実際の利用
(1)Moodle画面
実際にMoodleを利用した講義運営は図8のとおりである。この画面はコンピュータ演習Ⅵの
画面であり,講義予定,講義内容,配布資料,講義内での板書資料,宿題,他の学生からの質問 事項,連絡機能,小テスト機能を利用した。
(2)小テスト画面
小テストは,図9の小テストのリンク(VBA復習問題Ⅰ)をクリックする。
図7 穴埋め問題プレビュー画面
図8 Moodle コンピュータ演習Ⅵの運営画面
次の図10の画面が表示されるので,[小テストを受験]ボタンをクリックすると,試験が開始 される(図11)。
ここで,図10の問題はExcelベースのVBA(Visual Basic for Application)における文法の復 習問題であり,6回の受験が可能で,制限時間は1時間,2011年10月9日00:00まで受験がで きるものである。
解き終わって,画面下部にある[すべてを送信して終了]ボタンをクリックする(図12)
と,教員側には問題を解いた時刻と問題を解くことに費やした時間の情報とともに,点数などが 送られる(図13)。
図9 小テストの実施画面1
図10 小テスト実施画面2
図11 小テスト実施画面3
図12 小テスト実施画面4
図13 学生の時間と成績画面
(3)穴埋め問題作成画面
実際の問題作成画面は図14のとおりである。タグの中で,イコール(=)がついたものが正 解となる。多肢選択肢の場合は,正解は1つに限定できる場合が多いが,記述式の場合,複数の パターンの正解が考えられる場合があるため,1つのタグの中に複数のイコール(=)が存在す る。
3.プログラミング環境
今回プログラミングは,WordベースのVBA(Visual Basic for Application)を使用した。OS はWindows7,アプリケーションはMicrosoft Office2010を使用している。
4.穴埋め問題作成支援ツールを作るに当たり
問題作成支援ツール作成に当たり,以下を注意点として作成した。
! Wordで作成された元のファイルは学生に配布する解答として利用したい。
! 多肢選択問題と記述式問題を両方とも使用できるようにする。
! 多肢選択肢の多肢数と多肢の登録をできるようにする。
! 多肢選択肢の場合,正解が来る選択肢の番号の決定を自動化したい。
! 多肢選択問題も記述式問題もどちらもボタン1つの操作でタグの埋め込みができる。
! タグ埋め込みファイルは別の名前で保存できる。
図14 実際の問題のタグ表示
5.穴埋め問題作成支援ツールの使用について
プログラムはWordベースのVBAで作成されており,Close_Tool. frmに保存されている。使 用する場合は,これをWordファイルにインポートして使用する。
(1)操作について
① 教員はClose_Tool. frmのファイルがインポートされているWordに問題文を作成し,プロ
グラムの一部またはすべてをプログラムを作成しているエディタからコピー・ペーストする。
これで問題と解答プログラムは完成するので,解答として保存しておく。
② コピー・ペーストされたプログラム部分で記述式にしたい部分を蛍光ペン(黄色)で指定 し,多肢選択肢問題として作成したい箇所を赤文字で指定する(図15)。
③ プログラムを実行すると,図16が表示されるので,[ShortAnswer]ボタンをクリックす る。
図15 マーキング箇所
④ 次のように { : SHORTANSWER : } がついたタグが完成する(図17)。
⑤ 次に,図16の[Multichoice]ボタンをクリックする。
図16 Close̲Tool 画面
図17 SHORTANSWER タグの表示
⑥ 次のように選択肢の数を聞いてくるので,例えば「3」と入力して[OK]ボタンをクリック すると選択肢数は3の多肢選択問題となる。
⑦ 次に各選択肢を聞いてくるので選択肢を入力する(図19)。この時,「答」と「今までの登 録」情報が表示されるが(図19),解答と同じであったり,他の選択肢と同じものが入力され た場合,再度やり直しメッセージが表示される。
⑧ すべての設定が終わると,図20のようにすべての赤字の箇所にMULITICHOICEのタグが 入力される。
⑨ 図16の画面から[FileSave]ボタンをクリックすると,テキストファイルで保存される。
⑩ 同じく図16の画面から[Exit]ボタンをクリックすると,プログラムを終了する。
図18 多肢選択肢問題の問題数設定
図19 多肢選択肢問題のほかの選択肢
⑪ Moodleの穴埋め問題の作成エディタを表示し,⑩までで完成したタグ付きの問題文章をコ ピーして,穴埋め問題の作成エディタにペーストする。
⑫ 穴埋め問題作成エディタの[保存]ボタンをクリックして,問題プールの中に登録して完成 である。
6.考察
初めに学生に配布する解答用の資料を作成した点については,確認問題終了後タグを取りなが ら,解答を作成する手間が省かれた。記述式問題と多肢選択肢問題の箇所を各々黄色の蛍光ペン と赤字にすることで指定し,今回作成したツールからそれぞれボタン1つでタグを作成すること ができた。この点問題作成の時間がかなり省かれた。
記述式問題の場合は,黄色の蛍光ペンの箇所を正解として,前に「{: SHORTANSWER : =」, 後に「 }」を入れるように作成した。しかし,複数の解答が考えられる,例えば「=Tanka *
Kosu」が解答となる場合,「=Kosu * Tanka」も解答となるようなケースにまでは対応できてい
ない。多肢選択問題の場合は,問題数を入力した後,乱数で正解が入る選択肢番号を指定してい る。また同じ選択肢を入力しないように「答」と「今までの選択肢」の情報を表示することで,
ミスを少なくした。プログラム上は記述式問題と同じように赤字の箇所を正解として,前に「{:
MULTICHOICE :」を入れ多肢となるものをチルダー(〜)で結び,正解にはイコール(=)を
つけ,最後に「 }」を入れるように作成した。今回は選択肢数を入力し,その数に見合う他の選 図20 MULTICHOICE タグの表示
択肢を入力させるパターンをとったが,多肢選択問題が行われる穴埋め箇所はだいたい決まって いて,学生が迷う箇所も決まっているため,選択肢として初めに用意しておいて,そのなかで正 解を指定する形式を取った方がやりやすいように思われた。たとえば,条件分岐の場合「If, ElseIf, Else, EndIf」を選択肢として用意しておいて,赤字の箇所の文字がElseIfならその中から
ElseIfを正解にするという形式である。
今後の改良として,記述式問題では,複数回答も視野に入れること,また多肢選択問題ではグ ループを作り予め用意された選択肢を利用する方法を検討したい。
参考文献
(1)Moodle入門 著:井上博樹,奥村晴彦,中田平 出版:KAIBUNDO.
(2)Moodleによるeランニングシステムの構築と運用 著:William H. RiceⅣ 訳:福原明浩 監訳:喜 多敏博.
(3)Moodleを使って授業する! 著:濱岡美郎 出版:KAIBUNDO.
(4)Moodleを利用した授業時間外学習支援の試み 山田博文 岐阜高専紀要 第42号2007 pp.151〜
154.
(5)プログラミング教育におけるMoodleの活用 平塚紘一郎 仁愛女子短期大学研究紀要 第43号平成 22年度.
(6)Moodleホームページ.
(7)http://docs.moodle.org/20/ja/Moodle % E3 % 81 % A8 % E3 % 81 % AF
(8)寺嶋秀美:教育支援ツールとしてのMoodleの使用について―システム構築と使用結果―,文化情報 学:駿河台大学文化情報学部紀要17(2),53―61,2010―12.
(9)五月女仁子:文系学生に対するプログラミング教育へのMoodleの活用,教育システム情報学会研究報 告26(1),37―40,2011―05.
(10)五月女仁子:文系学生のためのプログラミング教育の実践と報告―Moodleの活用について―,教育 システム情報学会第36回全国大会講演論文集,2011,2011.