Citation

@article{weko_204270_1,
   author	 = "華山,魁生 and 柗本,真佑 and 肥後,芳樹 and 楠本,真二",
   title	 = "プログラミング教育における実績可視化システムの提案と評価",
   journal	 = "情報処理学会論文誌",
   year 	 = "2020",
   volume	 = "61",
   number	 = "3",
   pages	 = "644--656",
   month	 = "mar"
}

どんなもの?

プログラミング教育において、評価をゲームにおける実績の形式で行うようにした。

先行研究と比べてどこがすごい?

従来のやり方、つまり井上先生のGUIテストシステムみたいなものには次の課題があった。

  • ブラックボックスに実行した結果だけで採点している
  • 良いところを褒めてくれず、問題だけ指摘するので、苦手意識の原因に

そこで、良いプログラムを書くと実績を解除することができる仕組みに。

技術や手法のキモはどこ?

  • プログラムの品質計測で使われるメトリクスや、コーディングスタイルについてのルールを設定して、その条件を満たせば実績を解除したことになる仕組み。 Lv.1, Lv.2 と難易度もつけることができる。
  • 学生は GitBucket にコードを push する。すると、システムは自動的に、従来のテストと、実績判定のための品質計測ツールを実行する。

どうやって有効だと検証した?

Java でコンパイラを作成する授業で、実際に利用した。

  • このシステムの指摘を受けて、修正コミットをする学生を確認できた
  • アンケートで、プログラムの品質に対する意識が高まったと肯定的な意見が65%
  • そもそもの課題(コンパイラ)が難しかったので、このシステムを利用する余裕がなかった学生も

次に読むべき論文は?

「本研究は文法習得のような基礎的な内容ではなく、コンパイラ開発といった高度な理論に基づく実践・演習形式の授業を想定している」とあるので、本論文の他の参考文献を読むことで、もっと基礎的な授業での実施状況がわかるかもしれない。