**********************************************************************
セッション:S2c
テーマ :オンラインでの組込み教育・モデリング教育について
講師 :久保秋 真 株式会社チェンジビジョン
日時 :2021/09/03(金) 10:00~11:10
参加人数 :29名(終了時)
**********************************************************************
■モデリング教育のポイント
○講師の実績の紹介
○対面教育での機器・ツールの紹介
○実際の対面演習内容の紹介
○教育のねらい(対面・オンライン問わず)
・設計の有用性、ありがたみを感じてもらう
・組込みでモデルを使い、それから実装を行うシステムを知る
・設計と実装の間の乖離の理由を知り、それををなくす
・モデル駆動開発に興味を持ってもらう
○モデリング教育で気をつけていること
・モデルとコードの対応づけが最重要
-変換による実装を使い、それを前提としたモデリングを行う
-モデルを見て一定の規則でコードに直させる
・他の部分は必要最低限
-モデリング以外の部分で悩まないように課題を設定する
・まずはやり方を一緒にマスターさせる。勝手にやらせない
・設計に基づいた実装が出来るように。動いたらOKではない
■演習のオンライン対応
○対面での実機を動かす演習
・実際に機器を組み立てさせて、構造や配線に関心を持たせたい
・組み立て・動作確認に時間がかかる
○オンラインでの実機を動かす演習
・「箱庭」を利用、実機と同じシミュレーション環境を用意
・環境構築が大変、ここで諦める学生もいた
・Zoomとシミュレータの同時動作はPCのスペック的に難しい
・自由度が低い
-学生が走行体やコースの変更を行うのが難しい
・機器の組み立てを行わない
->構造・配線への関心が薄れる
・環境構築が出来れば自宅でも演習可
○対面でのモデル作成演習
・ツールの使用に慣れている人はモデリングツールを用いる
・慣れていない人はツールを使わない、模造紙とポストイット
・講師が取っかかりを用意し、真似して貰うところから
○オンラインでのモデル作成演習
・Zoomのブレイクアウトルームを用いたグループワーク
->グループ数が多くなると講師が不足する
・個人での作業にすることも
・いずれにせよ、誰かのモデルを手本に画面共有をしながら進める
・Miroやastah*、PowerPointを模造紙の代わりとして用いる
○モデルからコードを作成する演習
・基本的には対面もオンラインも同じ
・原因が「コードの書き間違い」か「設計ミス」かを区別させる
・コードがモデル通りでないならまずはモデル通りのコードにさせる
・コードがモデル通りなら設計を見直し、応じてコードを直す
・ハイブリッド形式では、リモートの学生がビルドしたモジュールを現地の学生に送り、それを使って動作確認
■モデル・コード・レポートの対応
○レポートの問題点
・モデル図やコードをレポートとして作り直すのが大変
-レポートの構成や体裁、図の貼り付け方も十人十色
・大量の紙やdocxのレポートを確認する講師も大変
・フィードバックの手段がレポートとは別になり手間がかかる
○解決策としてGithubClassroomの活用
・リポジトリによる教材や課題の配布を一括して行える
・各学生の進度を講師が随時確認でき、フィードバックを行える
・リポジトリの変更をレポートとすることで別途レポートを用意する必要がなくなる
○GithubClassroomの実演
・使用した演習用教材:https://classroom.github.com/a/gq_r2KQY
■オンライン演習の良し悪し
○学生の反応
決して良くはなかった
<例>
・環境構築が難しくて諦めた
・実機ほど動いたことへの感動がない
・PCの性能に依存する
・動かないときの原因究明が難しい
->演習の大変な部分が表れやすい
○実機と比べた短所
・学生のPCの性能では限界がある
-シミュレーションの処理が重い、Zoomとの同時起動が厳しい
・組み立てをしないため、構造に意識がいかない
・外からの影響がないので動作に変化がなく、面白みに欠ける
・他の人の進度が見られない
->他人と比べての焦りがない、自分の不出来・間違いが分からない
->実機での「体験」の代わりにはなり得ない
○実機と比べた長所
・設計やコード作成の演習に集中できる
・個々が場所を問わず演習できる
・外乱や実機の不具合を作為的に起こせる
->実機では観測しにくい状況を試せる
■まとめ
・オンラインでも対面でも、やりたいことは同じ
-モデル図の作成や共有方法には工夫が必要
・コードを書いて動かすためには実機の代替が必要
-実機を動かす「体験」の代わりにはなり得ない
・実装では変換ルールによる制約をつける
-コーディングの問題と設計の問題を分離しやすくなる
-サンプルと変換ルールを元に真似していけば最低限の演習はできる
・環境構築が大きなハードルになる
-環境構築自体が難しい生徒も
-学生のPCだと資源が不足することも
・モデルやコードのレポートにはGithubClassroomを利用
-課題の配布、回収、フィードバックを一括して行える
-配布リポジトリのファイルの書き換えをレポートとすることで採点も楽
■質疑応答
Q1
オンライン教育において感じた、学生のモチベーションが削がれる要因は?
A1
PCの性能によってシミュレータの動作自体が緩慢になることが大きな要因と考えている。
Q2
環境構築の手順の説明の工夫、躓いた点はあるか?
A2
手順書は事前に配布し、出来る人にはやらせている。出来る学生と出来ない学生の二極化が顕著だった。出来なかった学生は1人を手本に一緒に進めさせる。ターミナルを開いての動作が躓きがちだった。不慣れゆえと思われる。
Q3
オンラインだと受講者の反応が見られない。その中で説明が一方的にならないようにどう工夫しているのか?
A3
早いうちにフィードバックを得られるような構成にする。初めの説明は簡単にして、まず手を動かさせる。そうするとどこかで躓き、レクチャーが必要になるので、ステップ毎に逐次説明している。