制御構造における変数の値の変化や役割の理解のための学習支援方法

 本研究では,プログラミング初学者を対象として,プログラムの制御構造における変数の値の変化や変数の役割の理解を促すことに着目した研究を行っています.この目的に対しプログラムのソースコードの新しい表現方法を考案しました.

プログラミング教育への反転授業導入の取り組み

 初学者向けのプログラミング教育において反転授業を取り入れたアクティブラーニングの試みを始めています.反転授業では授業中に行っていたプログラミングに関する講義を事前学習に置き換え,宿題として授業後に課していた学習を授業中に行います.こうすることで初学者向けのプログラミング教育において教育的効果が高まることが期待されます.

 帝京大学理工学部情報電子工学科(旧ヒューマン情報システム学科)では,これまでも帝京大学において全学的に導入されているLMSという学習支援システムを活用したプログラミング授業が行われてきました.LMSにはプログラミングに関する教材コンテンツが一通り用意されているので,学生は自身のスマートフォンなどから教材をいつでも閲覧できます.教材にはプログラミングに関するセルフテストも含まれているため,繰り返しセルフテストを実施することにより知識の確実な定着を図ることができます.

 今回,新たに初学者が初めてプログラミングを学ぶことを踏まえた講義ビデオを用意して,事前学習として学生に視聴を義務付けることによる反転授業を行いました(左上図).反転授業の導入により授業中のプログラミング演習の時間を長く取ることができるなどの利点が得られます.また,反転授業の導入による効果について定量的な評価の試みを始めています.下図は講義ビデオの視聴率とLMS上のプログラミングに関するセルフテストの初回実施時の点数を散布図にプロットしたものです.視聴率が高いほどセルフテストの点数が良いという結果が得られています.このほか,主に講義動画の視聴率に着目した調査を進めており,より効果的な初学者向けのプログラミング教育の実現を目指して検討しています.

初学者プログラミング教育における反転授業の実施例
初学者プログラミング教育における反転授業の講義ビデオ例
初学者プログラミング教育における反転授業の評価・分析例

初学者向けプログラミング教育における反転授業導入の取り組み
(左上)反転授業の実施形式の例,(右上)作成した講義動画例
(下)視聴率に着目した反転授業の評価例

参考文献

  • 水谷晃三,高井久美子,“プログラミング初学者を対象にした動画教材による反転授業の実践と評価,”情報処理学会コンピュータと教育研究会,2015-CE-132(34),2015.

ソフトウェアプログラミングの初学者向けの教育支援システム

 初等教育向けに有用なプログラミング体験ソフトウェアとしてプログラミンなどが注目されています.よりシステマチックなプログラム動作を理解して,要求を満たすプログラムを実際に実装できるようになるためには構造化プログラミングの概念を理解することが求められます.しかしながら,ある要求を満たすための処理を「順次,分岐,反復」の構造に組み立てていくことは,プログラミング初学者にとって難しいと感じる概念の1つでもあります.

 本研究では,プログラミング初学者が理解しやすい学習モデルの提案と評価を行っています.プログラム要件を,入力要件,計算などの処理要件,出力要件の3つに分け,それぞれの要件とソースコードの関係を問題を解きながら理解する学習モデルの提案と,そのモデル基づく学習支援システムを開発しました.本システムを実際に授業等で使用し,得られた学習記録を分析することによって初学者に適応した学習モデルの創出を試みています.


プログラミング初学者のための学習モデルの概要図

学習モデルに基づく学習支援システムの画面例

参考文献

  • 水谷晃三,“プログラミング初学者のための学習モデルRPRaSにおける学習記録の分析,” 教育システム情報学会第36回全国大会講演論文集,2011.
  • Mizutani,K.,Arai,M. and Unagami,T., “Proposal and Basic Research for a Learning Model “RPRaS”for Novice Programming,” The 15th International Conference on Computers in Education (ICCE2007),pp.493-500,2007.
  • 水谷晃三,赤羽根隆広,荒井正之,海上隆,“プログラミング初学者のための学習モデルRPRaSの提案,”情報科学技術レターズ,Vol.6,pp.343-344,2007.