クラウドを用いた相互評価を支援する自動集計システム
著作:信州大学・村松浩幸研究室
制作:下田美沙樹&村松研スタッフ
使用言語:Google Apps Script
1.概要
中学校技術・家庭科技術分野(以下,技術科)において,授業の中で,学習改善のために生徒同士が評価しあう相互評価はこれまでも様々試みられています。しかし,使用されるシステムの多くがWeb版によるもので,授業者や学習者の環境によって使用が限られることや,システムの細かな内容の変更が困難であることなどの課題がありました。そこでGIGAスクール事業での1人1台端末を活用し,技術科における相互評価活動と評価結果表示をクラウド上で行うことができるシステムを開発しました。システム自体は技術科以外にも様々活用可能です。適宜カスタマイズして活用ください。
2.本システムでできること
・個人個人の評価でもグループやペアなどの評価でも両対応
・結果をスプレッドシートで通常集計+個人あるいはグループ事にまとめて自動集計
・集計結果やを表示するスライドを自動作成
・フォルダにアップされた画像もスライドに自動挿入
・個人あるいはグループ毎に集計し,集計結果をレーダーチャートにして出力可能
※相互評価結果スライド例
※総合評価結果スライド例
・記入者情報も付けた形で自由記述を対象者事に一覧にしてドキュメントを自動作成
これにより相互評価のまとめや活用が格段に楽になります。また,提出された画像をスライドに自動で貼り付けるといった処理が可能になります。
図1は本システムの流れです。本システムではGoogle社のクラウドツールであるGoogle Worlspaceで活用できるGoogle Apps Scriptを使用し,Googleフォーム,Googleスプレッドシート,Googleスライド,Googleドキュメントを連動させています。
3.動作の様子
(1)集計結果スライドの自動作成
GoogleフォームからGoogleスプレッドシートに蓄積される回答データを,単純集計だけでなく,個人別やグループ別に集計し,それをまとめたスライドに画像やレーダーチャート入りのまとめスライドに自動作成してくれるスクリプトです。
Google Apps Scriptにより,フォーム上で入力された文字をテンプレートのスライド内の文字と置換すること,フォーム上でアップロードされたドライブ上の画像をスライドに挿入すること,スプレッドシートで1人分の評価結果の集計をレーダーチャート化することを自動化しました。
(2)自由記述コメントのまとめドキュメントの自動作成
自由記述のコメントを一覧でドキュメントに自動コピーできる機能です。
対象者あるいはグループ別にまとめて,各コメントが誰のものかもわかるようにして一覧にします。
Google Apps Scriptにより,指定した文字データをコピーしたドキュメントを作成することを自動化しました。
(3)総合評価のまとめスライド
フォームでの各自の結果をグループ単位など一定単位で集計し,平均値と共にレーダーチャートでの表示もします。
4.実装方法
【各ファイルの取り込み】
※以下のリンクから各ファイルを自身のGoogleドライブに取り込めます。取り込みにはGoogleアカウントが必要です。
〇相互評価_集計 フォーム例
https://docs.google.com/forms/d/1LKtBVRnTvtjLk111GMK9en9Eu4kbCpFE8ZXQtrz1xag/copy
※画像ファイルのアップロード機能を使用する際にはGoogleアカウント必要です。
〇相互評価_集計 スプレッドシート例
https://docs.google.com/spreadsheets/d/1nhCGUL6BnPkM8gR24O5ErOTZrTo-KaXNoURLE4U0cfg/copy
〇相互評価結果スライド(アップロード画像表示付き)
https://docs.google.com/presentation/d/1MVskdcsza9MdHf03dGY3PdxFlnlIbGNTPVR2aU7rHKQ/copy
〇総合評価結果スライド(レーダーチャート付き)
https://docs.google.com/presentation/d/1uADE–90GoaVjokgr8xhmA93D_-hwSKpDJrCvjPr3Pk/copy
【マニュアル】
※マニュアル更新しました(22/1/25)
相互評価を支援する自動集計システムマニュアル
使用された方は簡単なアンケートにお答えいただけるとありがたいです。
https://forms.gle/qmcgo5FuANBpEHmV6
参考文献
1.高橋宣成, 秀和システム, 詳解! Google Apps Script完全入門 [第3版], 2021-7-6
2.清水 亮, 枡田 健吾, 近江 幸吉 , 中村 知恵, 佐藤 香奈, 秀和システム, Google Apps Script目的別リファレンス 実践サンプルコード付き, 2020-8-19
参考URL
〇GASスクリプトについて
フォーム→スプレッドシート→スライド
グラフ作成
GASで棒、円、折れ線など各種グラフを作成、変更、削除するための基本
getRange
getRangeのエラーについて
GAS入門
同じ計算を行数分繰り返す
〇グラフの自動作成について
Googleスプレッドシートのマクロ機能を使ってみた
Google Apps ScriptでスプレッドシートからグラフをGoogleドライブに保存する
レーダーチャートで成績データを可視化する ※gasとは別
GASとChart.jsでレーダーチャートを作る
Google Chartでレーダーチャートを作ってみた
〇コメント自動コピーについて
【GAS】GoogleスプレッドシートのデータをGoogleドキュメント化する
投稿 下田美沙樹(信州大学教育学部・ものづくり・技術教育コース)
投稿者プロフィール
最新の投稿
- Gijyutu.com2024年11月5日自由進度学習を支援するWebアプリシステム
- 3Dプリンタ2024年10月21日歯車の教材[ギヤ比9:1]
- Gijyutu.com2024年9月30日教師人生の失敗談:技術の先生の奮闘と学びの記録
- 3Dプリンタ2024年9月30日動くしくみがわかるモデル教材
いつも興味深い教材をありがとうございます。
早速試したところ
スクリプトエラーが出て進めない状況です。
TypeError: Cannot read property ‘getDataRange’ of null
formtoslide @ コード.gs:6
と表示されるのですが、
詳しくないため、もし可能でしたら対処法をご教授いただければ幸いです。
よろしくお願いいたします。
倉敷市立中学校様
システムを使用していただきありがとうございます。また,ご質問ありがとうございます。
エラーが表示されている,1行上 コード5
var sheet = ss.getSheetByName(“フォームの回答”);
の””内のシート名が実際のシート名と異なる場合が考えられます。
「スプレッドシートの方のシート名に半角スペースが入っていた」,「GAS上では『フォームの回答』,スプレッドシートの方は『フォームの回答1』になっていた」等,でエラーが出てしまう場合があります。
スプレッドシート上のシート名とGASの””内のシート名が完全に一致しているか,もう一度確認していただければと思います。
また,何かありましたら質問していただければと思います。
よろしくお願いいたします。
倉敷中学校様
いただいていた質問に関して,別でエラーが出ている場合がありましたので説明させていただきます。
対象のスプレッドシートの拡張機能からApps Scriptが開けない場合,マニュアル内のスクリプトであるとGASとスプレッドシートが紐付かない可能性が出てきます。
以前返信させていただいた方法でもうまくいかない場合,スクリプトの3行目を以下の様に変更してみてください。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
コード3
変更前
var ss = SpreadsheetApp.getActiveSpredSheet();
変更後
var ss = SpreadsheetApp.openByUrl(“ここにスプレッドシートの共有URLを入れる”);
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
変更前はGASを開いたスプレッドシート(getActiveSpredSheet)を対象にしていましたが,変更後は,スプレッドシートのURLをこちらから指定して開くようにしました。
総合評価結果スライド,自動コメントコピー作成のスクリプトも同様に変更をお願いします。
よろしくお願いいたします。