研究概要 |
本研究では,学生のプログラミング能力を養うことを目的としたソースプログラムチェックシステムを設計・開発する.特に,可読性の高いソースコードを記述するよう指導することに主眼を置く.なぜなら,大学等のプログラミングの授業において,現状では可動性が優先され,可読性が二の次になっているためである.しかしながら,「可読性が高いソースコードを記述すること」はプログラムの構造を正しく理解することにつながる.また,大規模なプログラムを大人数で書く場面においても,可読性はプログラムの修正・機能拡張を容易にし,再利用性を高める意味で大変重要である.そこで,我々は「読みやすいソースコードを書かなければいけない」と学生に意識させるシステムを開発する.例えば,「崩れているインデント」「不適切な変数・関数名」「長すぎる関数やブロック」など,構文エラーでもなければ実行結果にも影響を及ぼさない,ただし可読性が低いコードに対し,修正指示を出すようにする.本システムは,プログラミングの演習授業において,可読性について各学生に対し均質な指導を行うことが可能であり,有意義である,開発したシステムは実際の授業に導入し,教育的観点から本システムの有効性を明らかにする予定である. 本年度は,まず指摘項目の検討を行ったうえで,特に可読性の基本であるインデントに着目し,可読性の低いインデントを検出するシステムを実装した.システムは「課題提出」としての機能も兼ね備えたものとし,学生の自宅からも利用できるよう利便性を考慮してウェブアプリケーションとして構築した.構築後には動作検証を行い,実装したルールが正しく検出できることを確認した.さらに,今年度前期の授業において提出されたプログラム約2,000本に対し,プログラミングスタイルの実態調査を行った. 来年度は,試作したシステムを実際に授業で運用し,システムの改善策および評価実験の手法に関する検討を行う予定である.
|