2021年度春学期ティーチングアワード総長賞受賞
対象科目:C Programming (3)
受賞者:鄭 顕志
プログラミングなどの授業では、知識だけでなく実際に自分の手を動かす実習が必須となる。
鄭准教授は従来より反転形式の授業を導入し、事前にオンデマンド動画を視聴した後に、
教場ではグループ形式で演習を行わせていた。コロナ禍で対面授業ができなくなっても、
オンライン演習という形でこれを継続し、高い満足度を獲得している。
数名で1つのプログラムを書く「モブプラミング」で、学生間のスキルを共有させる
この授業の履修生は、理工学部の各学科だけでなく政治経済学部など所属が多様で、プログラミングに関する基礎知識にはかなりのばらつきがある。「プログラミング入門講義の次のステップと位置づけられていますが、十分な知識があり自主的にどんどん取り組める学生もいれば、入門講義で学んだはずのことでも手取り足取り教えなければいけない学生もいて、どちらに基準を合わせるか難しいところです」。
双方の満足度を上げるために導入したのが「モブプログラミング」という手法だ。たとえば3人でグループを組み1台のパソコンでプログラミングをする。メンバーのうちのひとりが実際にパソコンを操作する係となり、他の2人はどんなプログラムを書けばよいか指示を出す。メンバー内の役割は時間を決めて交代する。「この手法のメリットは、プログラムに関する知識をグループ内で共有してスキルを平準化できる点です。学生同士での教え合いにより効率よくスキルがシェアできるため、スキルにばらつきのあるなかでの教育効果が高いといわれています」。メンバーが固定してしまわないように、グループ割りは教員側で毎回シャッフルして指定した。
演習で取り組ませる課題は、なるべく実践に近い難易度になるよう配慮した。「たとえば東京都のオープンデータを使ってプログラムを書いたり問題を解いたり。オンデマンドで学んだ知識を実際に使いこなせるかという点で、実践的なデータを扱わせたことには大きな効果がありました」。
こうしたグループ演習は従来コンピュータ教室で行っていたが、コロナ禍によるオンライン化に伴い、ZOOMのブレイクアウトルームで実施することとした。履修生は12名で、TA2人と手分けして各グループを見て回り質問への対応やアドバイスを行った。「2020年度に初めて導入する前は、オンラインで個別のサポートができるのかなど不安もありましたが、実際にやってみると特に問題はなくスムーズに実施できました」。
リモートでの学生の孤独に配慮し、グループワークで交流を促す
教科書に書いてあるような座学の部分はオンデマンド動画として用意し、事前に視聴させてから演習に臨ませる反転形式は、対面授業のときから採用していた。動画は30~40分ぐらいのもので、視聴履歴は特に気にしていない。「結果として理解していればいいので、すでに分かっている人は動画を見ずに直接演習に挑戦してもらってもいいと思っています。実際は7~8割の学生が視聴していたようです。グループワークで他の学生に迷惑をかけると悪いと感じるのかもしれませんね」。
英語学位プログラムであるこの授業は大半が留学生ということもあり、日本に入国できない学生のためにオンライン化を余儀なくされたという事情もあった。それでもグループワークにこだわったのは、自国からひとりで参加する孤独な学生への配慮もあった。学生たちからも「毎週のグループ演習で、疑問点も気軽に他の学生に相談しながら、知識を学んだりスキルを磨くことができた」と歓迎された。
科目登録の段階や授業のはじめの頃には「プログラミングに自信がないが大丈夫か」と相談してくる学生もいたが、終了後には「大変だったがスキルが上がった実感がある」という感想をもらした。学生全体のレベルアップも感じているという。
経緯を説明するレポート提出で「説明できる文章能力」を育成する
授業の終了後には、完成したプログラムに加えてレポートも提出させた。一人ひとりに本質的な理解を促すために、与えられた問題をどう解釈し、それを解くためにどんな機能が必要で、それをいかにコーディングに落とし込んでいったかなど、そのプロセスをレポートに書いてもらうのだ。「プログラム自体も授業中だけでは終わらない部分を各自で付け足したりするのですが、コードだけでは他の学生のものをコピーすることもできます。しかし、こういうレポートを書かせると、一人ひとりがきちんと理解しているかどうかが如実に浮き上がってきます」。
レポートを書かせるのは将来的な実践力を見据えてのことでもある。「現場ではコードだけ書ければいいというわけではありません。あとから他の人がメンテナンスのために書き直したり機能を付加したりすることがよくあるので、自分の書いたコードを第三者に説明できる文章能力も、エンジニアに必要なスキルなのです」。
提出物に対してはMoodle上で個別にフィードバックするだけでなく、次週の冒頭で前回の振り返りという形で全体に向けても解説を加えた。「こういう課題を解決するために考えるべきポイントなどのほか、単に動くだけではなくより速く動かすにはどうするかなど、少し先の話も含めて、今後自分の学びを発展させていくにはどんな勉強が必要かも意識づけできるよう、ていねいな説明を心がけました」。
オンライン2年目となった今回は、十分に準備をして臨めたこともあり、よりていねいに教えることができたと手応えを感じている。「今後はできれば対面に戻したいですが、オンラインと教場の学生を繋いでハイフレックスで実施するとなると、人数など状況に応じてどんな方法が一番効果的なのかが課題ですね」。