授業でプログラミング演習を行う場合, わからない箇所を積極的に質問してくれればよいが, 質問しないまま授業が終了してしまう学生も多い。そこで, 理解度の低い学生を見つけ出し, 授業時間中に助言することで, 授業についてこれない学生を減らすことを目的としてオンラインIDEと教員支援システムを開発した。
学生はウェブブラウザでオンラインIDEにログインし, HTML, CSS, JavaScriptファイルの作成を行う。オンラインIDEは, 学生が作ったプログラムの構文解析と自動生成されたテストケースによる動作テストを行ない, シンタックスエラーの有無, テスト結果, 実行回数, 所要時間などのデータを収集する。教員支援システムは, 収集されたデータを元に, 学生がどのような状況であるかの分類を行う。分類結果は, 一覧表や座席表の形で教員に提供され, 教員はそれによって必要と思われる学生に対して助言を行う。
開発したオンラインIDEと教員支援システムを使用し, JavaScriptのプログラミングを学ぶ科目(教員1名, TA3名, 学生38名)において4回の授業を行った。この授業を担当した教員・TAへのヒアリングでは, 次のような意見が得られた。
- システムの使いやすさに関しては悪くない。
- 提示する項目やデザインを改善する必要がある。
- IDEの便利さに関しては概ね好評であるが, 不要なエラーメッセージで学生が混乱する場合がある。
- 困っている学生の提示に関しては賛否両論であり, 検知精度を上げるための改善が必要である。
まだ改善すべき点が多くあるが, 可能な限り改善を行って, 次年度にはより多くのクラスで実験を行うことを計画している。
In a programming exercise class, some students positively ask questions, while some do not even if they cannot complete the assignments. Therefore, we have created an online IDE and a teacher support system in order to let teachers give advice to students with low level of understanding.
Students login to the online IDE via web browsers and write HTML, CSS and JavaScript files. The online IDE parses students' programs and tests them against automatically generated test cases. It collects data such as existence of syntax errors, test results, number of executions and elapsed time. The teacher support system classifies states of students depending on the collected data. It provides the classification to teachers in the form of lists or seating charts, and teachers can give advice to students who may need help.
We have conducted 4 experimental lessons in a JavaScript programming course (where there are 1 teacher, 3 teaching assistants and 38 students) using the developed system. The teacher and teaching assistants gave us the following feedbacks :
- It is not so bad as to the ease of use.
- Items to be displayed and their design need to be improved.
- Most of students had favorable impression to the online IDE, but some of them got confused with unnecessary error messages.
- Opinions about the classification of students who may need help are divided. The detection accuracy need to be improved.
We found many points to be improved. In the next year, we have a plan to improve as much as possible and conduct an experiment in more classes.
|