研究概要 |
初心者のプログラミング学習過程を分析するため,本学科の学生を被験者に学習実験を行った。実験では,半年間C言語を学んだ学習者が、プログラミング言語の基本的な制御構造について、どの程度理解できているかを調査した。被験者は99名で、問題を読みプログラムを書き入れるテストの形式で実施した。テストの内容は、基本的な制御構造のうち、for文、およびwhile文を使った繰り返し処理の理解程度を調べる問題である。 被験者99名のテストの結果、for文については、53名に延べ100件の誤りがあり、誤りを8種類に分類した。while文については、77名延べ128件の誤りを10種類に分類した。分類した誤りに対して誤りの内容と原因について分析を行い,必要な支援について検討を行った。 しかし,プログラミング実習等でプログラムの作成を行う場合,誤りは,コンパイラからの診断メッセージとして出力される。支援は誤りの原因に応じて行われることが望ましいがコンパイラから出力される情報をもとに誤り原因を推測できれば,その推測された原因をもとに支援を行うことが可能となる。そこで,我々の分析したプログラムの誤りとコンパイラメッセージとの関係について調べ,コンパイラメッセージから学習者の誤りを推測するために,コンパイラメッセージの誤りに対する影響度を分析した。 今後,この影響度をもとに学習者モデルのプロトタイプを作成し,コンパイラメッセージから誤りについて推測し学習支援が行えるシステムを構築する。さらに,制御構造の繰り返し処理における誤り分析をもとに作成した本モデルが,初心者のプログラミング学習に対して適切に支援を行っているか,モデルの検証を行う予定である。
|