以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
[システム構成]
図1を参照して、オンライン学習(遠隔学習、リモート学習ともいう)を支援するオンライン学習システム100(以下、単に「システム100」と表わす)について説明する。図1は、ある実施の形態に従うシステム100の概略構成を表わす図である。システム100は、クラウドサーバー110と、ワークシート管理ストレージ112と、コンピューター120と、コンピューター130-1・・・130-nとを備える。ワークシート管理ストレージ112は、クラウドサーバー110に接続されている。
クラウドサーバー110と、ワークシート管理ストレージ112と、コンピューター120と、コンピューター130-1・・・130-Nとは、インターネットその他のWAN(Wide Area Network)190に接続されている。コンピューター130-1・・・130-Nを総称するときは、コンピューター130と表わす。
コンピューター120とコンピューター130とは、クラウドサーバー110を介して互いに通信することができる。クラウドサーバー110、コンピューター120およびコンピューター130の構成は、後述する。
クラウドサーバー110は、遠隔学習サービスを提供する事業者あるいは遠隔学習を行なう学校によって管理される。例えば、クラウドサーバー110は、ワークシートの管理機能やテレビ会議の管理機能を有する。
ワークシート管理ストレージ112は、遠隔学習に使用されるワークシートのデータを保持しており、また、クラウドサーバー110によって生成されたデータやクラウドサーバー110がコンピューター120またはコンピューター130から受信したデータを保存し得る。ワークシート管理ストレージ112は、例えば、ハードディスク装置その他の不揮発性の記憶装置により構成される。
コンピューター120は、学校の教師、セミナーの講師その他の講師によって使用される。コンピューター120は、デスクトップ、ラップトップ、ノートブック、タブレットのいずれであってもよい。
コンピューター130は、学校やセミナーの生徒その他の学習者によって使用される。コンピューター130は、学習者が所有する私物、または、学校やセミナーの運営機関によって貸与されたもののいずれであってもよい。コンピューター130は、デスクトップ、ラップトップ、ノートブック、タブレット、スマートフォンのいずれであってもよい。
ある局面において、コンピューター120は、そのユーザー(例えば教師や講師)の操作を検知すると、その操作情報をクラウドサーバー110に送信する。また、コンピューター120には、その筐体の前面に、カメラ(図示しない)が設けられている場合がある。この場合、コンピューター120は、当該カメラによって撮影された画像(例えば、教師の顔画像)をクラウドサーバー110に送信し得る。その結果、当該画像は、生徒が使用するコンピューター130に表示され得る。
あるいは、コンピューター120は、マイク(図示しない)を内蔵している場合があり得る。この場合、当該マイクは教師の発話を拾い、コンピューター120は、当該発話に基づく音声信号をクラウドサーバー110に送信し得る。その結果、コンピューター130がスピーカーまたは音声出力端子を有している場合には、当該音声は、コンピューター130から出力される。
ある局面において、コンピューター130は、そのユーザー(例えば生徒)の操作を検知すると、その操作情報をクラウドサーバー110に送信する。また、コンピューター130には、その筐体の前面に、カメラ(図示しない)が設けられている場合がある。この場合、コンピューター130は、当該カメラによって撮影された画像(例えば、生徒の顔画像)をクラウドサーバー110に送信し得る。その結果、当該画像は、教師が使用するコンピューター120に表示され得る。
あるいは、コンピューター130は、マイク(図示しない)を内蔵している場合があり得る。この場合、当該マイクは生徒の質問その他の発話を拾い、コンピューター130は、当該発話に基づく音声信号をクラウドサーバー110に送信し得る。その結果、コンピューター120がスピーカーまたは音声出力端子を有している場合には、当該音声は、コンピューター120から出力される。
図2を参照して、クラウドサーバー110、コンピューター120およびコンピューター130の構成について説明する。図2は、クラウドサーバー110、コンピューター120またはコンピューター130として機能するコンピューター装置200のハードウェア構成を表わすブロック図である。
コンピューター装置200は、主たる構成要素として、プログラムを実行するCPU1と、コンピューター装置200のユーザーによる指示の入力を受け付けるマウス2およびキーボード3と、CPU1によるプログラムの実行により生成されたデータ、又はマウス2若しくはキーボード3を介して入力されたデータを揮発的に格納するRAM4と、データを不揮発的に格納する記憶装置5と、通信インターフェイス(I/F)7と、モニター8とを含む。各構成要素は、相互にデータバスによって接続されている。記憶装置5は、ハードディスク装置、SSD(Solid State Drive)装置等により実現される。
コンピューター装置200における処理は、各ハードウェアおよびCPU1により実行されるソフトウェアの協働によって実現される。このようなソフトウェアは、記憶装置5に予め記憶されている場合がある。また、ソフトウェアは、CD-ROM(Compact Disc-Read Only Memory)その他の記録媒体に格納されて、コンピュータープログラムとして流通している場合もある。あるいは、ソフトウェアは、いわゆるインターネットに接続されている情報提供事業者によってダウンロード可能なアプリケーションプログラムとして提供される場合もある。このようなソフトウェアは、光ディスク駆動装置(図示しない)その他の読取装置によりその記録媒体から読み取られて、あるいは、通信インターフェイス7を介してダウンロードされた後、記憶装置5に一旦格納される。そのソフトウェアは、CPU1によって記憶装置5から読み出され、RAM4に実行可能なプログラムの形式で格納される。CPU1は、そのプログラムを実行する。
他の局面において、通信端末(例えば、コンピューター120,130)が、そのモニターに表示されるウェブブラウザに対して当該通信端末のユーザーによって入力される操作に基づいて、当該プログラムを実行するサーバー(例えば、クラウドサーバー110)にアクセスする構成が採用されてもよい。
図2に示されるコンピューター装置200を構成する各構成要素は、一般的なものである。したがって、本開示に係る技術思想の本質的な部分の一つは、RAM4、記憶装置5、CD-ROMその他の記録媒体に格納されたソフトウェア、あるいはネットワークを介してダウンロード可能なソフトウェアであるともいえる。当該記録媒体は、一時的でない(不揮発性の)、コンピューター読取可能なデータ記録媒体を含み得る。なお、コンピューター装置200の各ハードウェアの動作は周知であるので、詳細な説明は繰り返さない。
なお、記録媒体としては、CD-ROM、FD(Flexible Disk)、ハードディスクに限られず、磁気テープ、カセットテープ、光ディスク(MO(Magnetic Optical Disc)/MD(Mini Disc)/DVD(Digital Versatile Disc))、IC(Integrated Circuit)カード(メモリーカードを含む)、光カード、マスクROM、EPROM(Electronically Programmable Read-Only Memory)、EEPROM(Electronically Erasable Programmable Read-Only Memory)、フラッシュROMなどの半導体メモリー等の固定的にプログラムを担持する媒体でもよい。
ここでいうプログラムとは、CPUにより直接実行可能なプログラムだけでなく、ソースプログラム形式のプログラム、圧縮処理されたプログラム、暗号化されたプログラム等を含む。
[生徒が使用するコンピューターの画面]
図3を参照して、各生徒に提示される遠隔学習の画面例について説明する。図3は、各生徒がそれぞれ使用するコンピューター130のモニター8に表示される遠隔学習の画面の一例を表わす図である。モニター8は、生徒の識別情報(例えば、生徒の氏名や学籍番号など)と、教師によって選択されたワークシートの画面とを表示する。
遠隔学習の画面は、さらに、当該生徒に与えられた課題に対する回答を入力する領域を表示する。コンピューター130のモニター8がタッチパネル式である場合には、生徒は指またはタッチペンその他の入力装置を用いて領域310,320に回答を記入できる。他の局面において、生徒はキーボード3を用いてタイピングすることにより、領域310,320に回答を入力できる。
[教師が使用するコンピューターの画面]
図4および図5を参照して、遠隔学習を支援する教師に提示される画面例について説明する。図4は、ある実施の形態に従う、教師が使用するコンピューター120のモニター8に表示される画面の一例を表わす図である。図5は、図4に示される画面から生徒の画像に切り替えられた状態を表わす図である。
図4に示されるように、モニター8は、複数の生徒(図4の例では、16名の生徒)の各コンピューター130に表示されている画面と同じ画面を表示している。なお、図4に示される例では、16名の生徒の画面が表示されているが、それよりも多い生徒または少ない生徒の画面が表示され得る。教師に認識可能に表示される画面の数は、モニター8の表示領域の大きさおよび解像度にも依存し得る。例えば、一クラスに属する生徒の数が32名である場合、教師は、コンピューター120のモニター8の画面を切り替えることにより、次の画面では、17番目から32番目の生徒のワークシートの画面が表示され得る。
図5を参照して、各生徒が使用するコンピューター130の全面に設けられたカメラ(図示しない)によって撮影された顔画像が、教師が使用するコンピューター120のモニター8に表示されている。図5の場合も図4の場合と同様に、16名の生徒の顔画像が表示されているが、それよりも多い生徒または少ない生徒の顔画像が表示され得る。教師に認識可能に表示される画面の数は、モニター8の表示領域の大きさおよび解像度にも依存し得る。この場合も、ワークシートが表示される場合と同様に、例えば、一クラスに属する生徒の数が32名である場合、教師は、コンピューター120のモニター8の画面を切り替えることにより、次の画面では、17番目から32番目の生徒のワークシートの画面が表示され得る。
[データ構造]
図6を参照して、クラウドサーバー110のデータ構造について説明する。図6は、ある局面に従うクラウドサーバー110のRAM4におけるデータの格納の一態様を概念的に表わす図である。クラウドサーバー110が遠隔学習サービスを提供している場合、各生徒のコンピューター130の情報がクラウドサーバー110に収集される。ある局面において、RAM4は、テーブル610(状態A)、テーブル620(状態B)、テーブル630(状態C)またはテーブル640(状態D)を保持し得る。
テーブル610は、学習者ID(Identification)と、グループIDと、ワークシートのデータと、顔画像のデータとを保持し得る。学習者IDは、各生徒を識別する情報であって、例えば、生徒番号または氏名である。グループIDは、各生徒が属する教室において予め分けられたグループを識別する。グループは、例えば、隣接する4名、各科目ごとに理解度が近似していると判断された一人以上の生徒、その他、教師の判断で分けられたグループを含み得る。ワークシートのデータは、現在、各生徒のコンピューター130に表示されているワークシート(例えば、演習問題の画面など)を識別する情報と、当該ワークシートにおいてキャプチャーされた画像データとを含み得る。顔画像のデータは、各生徒のコンピューター130に内蔵されたカメラによって取得された画像データを含み得る。
テーブル620は、学習者IDと、グループIDと、表示用データとを含む。学習者IDとグループIDとは、テーブル610に示される学習者IDおよびグループIDと同じである。表示用データは、教師が使用するコンピューター120のモニター8に表示させるためのデータである。より具体的には、学習者IDがStudent001およびStudent002の生徒については、当該生徒が使用するコンピューター130のモニター8に表示されているワークシートの画像が表示対象である。他方、学習者IDがStudent003およびStudent004の生徒については、当該生徒の顔画像が表示対象とされている。テーブル620のデータが教師が使用するコンピューター120に送信されると、そのモニター8は、学習者IDがStudent001およびStudent002である生徒については、そのワークシートの画像を表示する。学習者IDがStudent003およびStudent004である生徒については、その顔画像を表示する。他の生徒についても同様である。
テーブル630は、学習者IDと、グループIDと、表示用データとを含む。学習者IDとグループIDとは、テーブル610の学習者IDおよびグループIDと同じである。表示用データは、各生徒の顔画像が表示対象であることを示している。テーブル630のデータが教師が使用するコンピューター120に送信されると、そのモニター8は、全ての生徒の顔画像を表示する。
テーブル640は、学習者IDと、グループIDと、表示用データとを含む。学習者IDとグループIDとは、テーブル610の学習者IDおよびグループIDと同じである。表示用データは、各生徒が使用するコンピューター130のモニター8に表示されているワークシートが表示対象であることを示している。テーブル640のデータが教師が使用するコンピューター120に送信されると、そのモニター8は、全ての生徒が使用するコンピューター130のモニター8に表示されているワークシートを表示する。
[制御構造]
図7を参照して、コンピューター130の制御構造について説明する。図7は、ある実施の形態に従って生徒が使用するコンピューター130のCPU1が実行する処理の一部を表わすフローチャートである。
ステップS710にて、CPU1は、ログイン操作を検知する。例えば、ある生徒が所定の画面を起動して、ユーザーID(例えば学習者ID)および所定のパスワードを入力すると、コンピューター130のCPU1は、ログイン操作が行なわれたことを検知する。
ステップS720にて、CPU1は、ログイン処理を実行する。より具体的には、CPU1は、クラウドサーバー110に、当該ユーザーIDおよびパスワードを送信し、クラウドサーバー110によるユーザー認証を受ける。ユーザーIDおよびパスワードが真正であれば、当該生徒のログインは成功する。そうでなければ、再度、ユーザーIDおよびパスワードの入力が求められ、ユーザー認証が繰り返される。ログインが成功すると、処理はステップS730に移される。
ステップS730にて、CPU1は、遠隔授業を受けるためのリモート教室に入室する。例えば、ある局面において、CPU1は、モニター8に当該教室の時間割を表示し得る。当該生徒は、予め定められた時間割に基づいて、ログインした時刻が属する教室に入室できる。
ステップS740にて、CPU1は、当該生徒の情報をクラウドサーバー110に送信する。クラウドサーバー110に送信される情報は、学習者IDおよびログイン時刻を含む。
ステップS750にて、CPU1は、クラウドサーバー110からワークシートのデータを受信し、モニター8に当該ワークシートを表示する。例えば、教師がリモート教室で使用するワークシートを選択していれば、その選択されたワークシートのデータが当該生徒が使用するコンピューター130に送信される。その後、教師の指示で遠隔学習が開始する。
ステップS760にて、CPU1は、ワークシートに対する入力を検知し、検知に応じた信号をクラウドサーバー110に送信する。
ステップS770にて、CPU1は、コンピューター130のカメラ(図示しない)をオンにして画像信号をクラウドサーバー110に送信する。
ステップS780にて、CPU1は、リモート教室を終了する指示を検知したか否かを判断する。例えば、教師がコンピューター120を操作してリモート教室の終了を指示した場合、予め定められた時刻が到来した場合、あるいは、生徒がリモート教室から退室することを選択した場合、CPU1は、リモート教室の終了が指示されたと判断する。CPU1は、当該指示を検知したと判断すると(ステップS780にてYES)、処理を終了する。そうでない場合には(ステップS780にてNO)、CPU1は、制御をステップS760に戻す。
図7に示される処理は、ある局面において、コンピューター130内で動作するアプリケーションソフトウエアで実行されてもよく、他の局面において、クラウドサーバー110で実行するように構成されてもよい。
例えば、クラウドサーバー110で実行される場合は、クラウドサーバー110は、コンピューター130の汎用ブラウザで表示するための画面データをコンピューター130に送信し、コンピューター130のブラウザが当該画面データに基づく画面を表示し、コンピューター130は、当該ブラウザへの入力を逐次クラウドサーバー110に送信する。コンピューター130のブラウザは、画面に対する操作が何を意味するのかを認識したり判断することなく、当該操作に応じた信号をクラウドサーバー110に送信することになる。
より具体的には、一例として、図7の処理がクラウドサーバー110で実行される場合、ステップS710における「ログイン操作を検知」の処理では、クラウドサーバー110は、生徒が使用するコンピューター130のブラウザに表示されているログイン画面のURL(Uniform Resource Locator)へのアクセスを検知すると、当該ログイン画面をコンピューター130に送信する。クラウドサーバー110は、そのログイン画面に対する操作情報(ID、パスワード)をコンピューター130のブラウザから受信すると、当該操作がログイン画面に対する操作であることに基づき、「ログイン操作を検知」することになる。他のステップについても同様に、コンピューター130はユーザーインターフェイス(UI)の役割だけを担う態様になる。
[クラウドサーバーの制御構造]
図8および図9を参照して、クラウドサーバー110の制御構造について説明する。図8および図9は、ある実施の形態に従うクラウドサーバー110のCPU1が実行する処理の一部を表わすフローチャートである。
ステップS810にて、CPU1は、教師と各生徒とのリモート学習セッションを確立する。確立されるタイミングは、教師がコンピューター120を操作してリモート教室の開始を指示した場合に、当該指示がクラウドサーバー110によって受信した時、あるいは、予め定められた時間割に規定された授業を開始する時刻が到来した時である。CPU1は、クラウドサーバー110のRAM4にリモート学習セッションの領域を確保し、当該教師が開始しようとする授業のIDと教師IDと各生徒の学習者IDとを関連付ける。
ステップS820にて、CPU1は、各生徒のコンピューター130から学習者IDおよびログイン情報(ステップS740)を受信する。CPU1は、そのログイン情報に関連付けられる学習者IDのステータスをログアウトからログインに変更して、出欠を管理する。CPU1は、予め登録された全ての学習者IDのステータスがログインに変更されるまで、ログイン情報の受信を待機する。仮に、CPU1は、予め定められた時間内に、あるいは、当該授業の期間内に、ステータスがログインになっていない学習者IDを検出すると、当該学習者IDが付与された生徒がログインしていない旨を、教師が使用するコンピューター120に送信して、教師に通知し得る。
ステップS900にて、CPU1は、後述する管理テーブルの更新処理を実行する。この更新処理が完了すると、コンピューター120に表示するためのデータが生成される。
ステップS830にて、CPU1は、管理テーブルのデータを教師が使用するコンピューター120に送信する。コンピューター120は、そのデータを受信すると、モニター8に最新の一覧(例えば、顔画像一覧、ワークシートの一覧など)を表示するので、教師は最新の状況を視認することができる。
ステップS840にて、CPU1は、リモート学習セッションの終了の指示を検知したか否かを判断する。例えば、教師がリモート教室を終了する操作をコンピューター120に行なった場合に、あるいは、予め定められた時間が経過した場合に、CPU1は、リモート学習セッションの終了が指示されたと判断する。CPU1はリモート学習セッションの終了の指示を検知したと判断すると(ステップS840にてYES)、制御をステップS850に切り替える。そうでない場合には(ステップS840にてNO)、CPU1は制御をステップS900に切り替える。
ステップS840にて、CPU1は、各ユーザーの情報を記憶装置(たとえば、ワークシート管理ストレージ112)に保存する。例えば、CPU1は、各生徒による回答が入力されたワークシート、各生徒の顔画像、教師と生徒とのやりとり(例、質問と回答など)を保存する。ワークシートの保存は、生徒による書き込みが行なわれた状態のワークシートのスクリーンショットのような画像データ、あるいは、ワークシートの画像データと、生徒による手書き入力の画像データとの組み合わせ、のいずれの形態であってもよい。
図9を参照して、ステップS910にて、CPU1は、生徒の数を計測するためのカウンターnを初期化する(n=1)。
ステップS920にて、CPU1は、第n番目の生徒についてテーブルから各データを取得する。
ステップS930にて、CPU1は、表示対象がワークシートまたはカメラ画像であるかを判断する。この判断は、教師がコンピューター120に対して与えた指示の内容に対応する。例えば、教師が表示対象としてワークシートを選択している場合には、CPU1は、表示対象がワークシートであると判断する。他方、教師が表示対象としてカメラ画像を選択している場合には、CPU1は、表示対象がカメラ画像であると判断する。他の局面において、各生徒毎に、ワークシートまたはカメラ画像が選択されてもよい。この場合は、教師が使用するコンピューター120には、生徒毎にワークシートまたはカメラ画像が表示されることになる。
ステップS940にて、CPU1は、カメラ画像を取得する。
ステップS950にて、CPU1は、ワークシート情報を取得する。
ステップS960にて、CPU1は、画面表示用のデータを生成する。より具体的には、ある局面において、CPU1は、生徒の学習者ID毎に領域をRAM4に確保しておき、当該学習者IDのデータをその確保した領域に書き込む。
ステップS970にて、CPU1は、全ての生徒のテーブルを取得したか否かを判断する。CPU1は、全ての生徒のテーブルを取得したと判断すると(ステップS970にてYES)、処理をステップ830に戻す。そうでない場合には(ステップS970にてNO)、CPU1は、制御をステップS980に切り替える。
ステップS980にて、CPU1は、カウンターnを1インクリメントする。その後、CPU1は、制御をステップS920に戻す。
なお、他の局面において、ステップS960のデータの生成は、全ての生徒のテーブルが取得された(ステップS970)後に行なわれてもよい。すなわち、クラウドサーバー110のCPU1は、表示対象となる全ての生徒のワークシート画像またはカメラ画像のデータを読み出した後に、教師のコンピューター120に表示させるためのデータを生成してもよい。このような構成によれば、コンピューター120のモニター8は、学習者ID順に配列された画面に加えて、例えば、回答数が多い生徒から少ない生徒の順に、同じような回答が入力された生徒毎に、顔画像データまたはワークシート画像が配列された画面を表示し得る。
また、図9に例示される処理では、表示対象は、ワークシートと顔画像であったが、モニター8に表示されるのは、ワークシートと顔画像に限られない。例えば、顔画像と成績表がモニター8に表示されてもよい。あるいは、当該ワークシートの教科の成績表のこれまでの推移が数値やグラフとして表示されてもよい。
[教師のコンピューターの制御構造]
図10を参照して、教師が使用するコンピューター120の制御構造について説明する。図10は、ある実施の形態に従うオンライン授業において使用されるコンピューター120のCPU1が実行する処理の一部を表わすフローチャートである。
ステップS1010にて、CPU1は、オンライン授業を開始する。例えば、教師がコンピューター120のモニター8に表示される画面において、「オンライン授業を開始」のボタン(図示しない)を押下すると、あるいは、教師がコンピューター120の内蔵マイクに発話すると、オンライン授業が始まる。
ステップS1020にて、CPU1は、生徒情報を表示する指示を検知する。
ステップS1030にて、CPU1は、その指示の検知に応答して、生徒の一覧情報の送信をクラウドサーバー110に要求する。要求の内容は、一覧として表示されるべき項目(顔画像であるかワークシートであるか、あるいは、それらの組み合わせであるか等)を示す項目を含む。クラウドサーバー110は、その送信要求に応じて、当該生徒情報を、コンピューター120に送信する。
ステップS1040にて、CPU1は、クラウドサーバー110からから送信された生徒の一覧情報を受信する。
ステップS1050にて、CPU1は、受信した生徒情報を用いて、生徒情報の一覧情報を表示する。例えば、CPU1は各生徒の顔画像をモニター8に表示する。その後、教師がワークシートの表示を指示する操作をコンピューター120に対して行なうと、CPU1は、各生徒のコンピューター130に表示されているワークシートの画像と同じ画像をモニター8に表示する。
ステップS1060にて、CPU1は、コンピューター120に対する入力を検知する。この入力は、例えば、コンピューター120のユーザーである教師による画面の一覧表示の切り替えの指示、その他の入力操作、コンピューター130のユーザーである生徒によるワークシートへの書き込み、発言のためのボタン操作、質問のための挙手その他のジェスチャー、予め設定された間隔で画面の表示を切り替える指示が到来したことの通知等を含み得る。
ステップS1070にて、CPU1は、当該入力が画面切り替えのトリガーであるか否かを判断する。当該トリガーは、ステップS1060において検知された入力のうち、例えば、教師による画面の一覧表示の切り替えの指示、生徒によるワークシートへの書き込み、発言のためのボタン操作、質問のための挙手その他のジェスチャー等を含み得る。CPU1は、当該入力が画面切り替えのトリガーであると判断すると(ステップS1070にてYES)、制御をステップS1030に戻す。そうでない場合には(ステップS1070にてNO)、CPU1は、制御をステップS1080に切り替える。
ステップS1080にて、CPU1は、入力に応じた処理を実行する。この処理は、画面切り替えの処理以外の処理であり、例えば、一覧表示の中の生徒に回答その他の動作を促すメッセージの入力、一覧から選択された生徒の関連情報のポップアップ表示などを含み得る。
ステップS1090にて、CPU1は、表示を終了する指示を検知したか否かを判断する。CPU1は、表示を終了する指示を検知したと判断すると(ステップS1090にてYES)、制御を終了する。そうでない場合には(ステップS1090にてNO)、CPU1は、処理をステップS1030に戻す。
なお、他の局面において、教師が使用するコンピューター120が各生徒のコンピューター130から受信したデータを保持している場合には、ステップS1030およびステップS1040の処理は実行されなくてもよい。
また、モニター8に一覧表示されるものは、ワークシートと顔画像とに限られない。他の局面において、例えば、各生徒の成績表や当該ワークシートの教科の成績やその成績の変化が、数値やグラフとして、モニター8に表示されてもよい。
また、図10に示される処理は、ある局面において、コンピューター120内で動作するアプリケーションソフトウエアで実行されてもよく、他の局面において、クラウドサーバー110で実行するように構成されてもよい。
例えば、クラウドサーバー110で実行される場合は、クラウドサーバー110は、コンピューター120の汎用ブラウザで表示するための画面データをコンピューター120に送信する。コンピューター120のブラウザは、当該画面データに基づく画面を表示し、コンピューター120は、当該ブラウザへの入力を逐次クラウドサーバー110に送信する。コンピューター120のブラウザは、画面に対する操作が何を意味するのかを認識したり判断することなく、当該操作に応じた信号をクラウドサーバー110に送信することになる。
一例として、図10のステップS1010の処理では、教師がコンピューター120を操作して、オンライン授業のためのURLをクリックすると、クラウドサーバー110は、そのURLへのアクセスを検知し、オンライン授業を開始する操作を受け付ける画面データをコンピューター120に送信する。コンピューター120のブラウザは、その画面データに基づき、オンライン授業の開始のための画面として、例えば、授業の一覧あるいは時間割を表示する。教師が授業を選択する操作を行なうと、コンピューター120は、その選択結果をクラウドサーバー110に送信する。クラウドサーバー110は、その選択結果に応答して、選択された授業の初期画面のデータをコンピューター120に送信する。コンピューター120は、そのデータを受信すると、モニター8に授業の画面を表示する。
他のステップについても同様に、コンピューター120は、クラウドサーバー110との間でデータの送受信を行なうためのユーザーインターフェイス(UI)の役割を担う態様になる。
[画面切り替えの表示態様]
図11および図12を参照して、画面の一部の表示の切り替えについて説明する。図11は、ある個別の表示切り替え機能を有する画面の一例を表わす図である。図12は、一部の画面の表示が切り替えられた状態を表わす図である。
図11に示されるように、モニター8は、個別表示切り替えの画像ボタン1110をさらに表示する。また、各生徒の画像には、表示の切り替えの設定を受け付ける印(たとえば○印1120)が表示されている。ある局面において、教師が生徒1の○印1120を選択して、画像ボタン1110を押下すると、図12に示されるように、生徒1の顔画像が、生徒1のワークシート画像の代わりに表示される。
その後、図12の画面が表示された状態で、教師が○印1120を選択して、画像ボタン1110を押下すると、生徒1の表示は、顔画像からワークシート(図11)に切り替わる。これにより、教師は、一部の生徒を任意に選択して、顔画像またはワークシートの表示を他の生徒の表示とは異なる態様とすることができる。なお、図11および図12では、ワークシートが一覧表示されている場合が例示されているが、顔画像が一覧表示されている場合において一部の生徒が選択されたときに、当該一部の生徒のワークシートが表示される構成も採用され得る。表示の切り替えが行なわれる生徒の数は一人に限られず、複数の生徒が選択された場合に、その複数の生徒の表示について、顔画像とワークシート画像との間で切り替えられ得る。
[データ構造]
図13を参照して、画面切り替え時におけるデータ構造について説明する。図13は、図11および図12に示される例のRAM4におけるデータの格納の一態様を表わす図である。RAM4は、ある局面において、クラウドサーバー110に含まれるものであり、他の局面において、コンピューター120に含まれるものであってもよい。
RAM4は、テーブル1310を保持している。テーブル1310は、学習者IDと、グループIDと、表示用データとを含む。学習者IDは、生徒を識別する。グループIDは、当該生徒が属するグループを識別する。当該グループは、教師によって付与される。表示用データは、当該生徒について表示されるデータを表わす。例えば、表示用データは、初期値として表示されるデータを表わし得る。ある局面において、テーブル1310は、各生徒のワークシート画像を表示するためのデータを保持している。その後、教師が○印1120を選択して生徒1の表示を顔画像からワークシートに切り替える操作を行なうと(図11⇒図12)、テーブル1310はテーブル1320に書き換えられる。この場合、生徒1(学習者ID=Student001)については、顔画像が表示されるように、テーブル1320の中身は変更されている。
なお、顔画像がモニター8に一覧表示されている場合も同様である。この場合、テーブル1310は表示用データとして顔画像のデータを保持しており、一部の生徒について表示の切り替えが選択されると、その生徒については、テーブル1320に例示される場合と同様に、表示用データがワークシートデータに切り替えられることになる。
[グループ単位の表示の切り替え]
図14および図15を参照して、選択されたグループ単位で表示が切り替えられる局面について説明する。図14は、グループ選択機能を有するオンライン学習システムにおいて表示されている画面の一例を表わす図である。図15は、グループ選択が行なわれた場合に表示される画面の一例を表わす図である。
オンライン学習システムがグループ選択機能を有する場合、教師が使用するコンピューター120のモニター8は、予め設定されたグループ毎に画面の表示内容を切り替えるように構成され得る。グループは、例えば、教室内における各生徒の班、学習の理解度が似ていると教師に判定された複数の生徒の集合等として設定され得る。
図14に示されるように、より具体的には、モニター8は、グループの選択を受け付けるように構成されたソフトウェアスイッチとして画像ボタン1410を表示し得る。画像ボタン1410は、モニター8に表示される生徒の一覧の表示形式をグループ単位と全体との間で切り替える操作を受け付ける。画像ボタン1410が押下されると、サブメニューとして規定されているグループの選択を受け付ける画像ボタン1420がポップアップ表示される。例えば、生徒の集合が3グループに分けられている場合には、CPU1が画像ボタン1410の押下を検知すると、サブメニューとして、3グループ(すなわち、グループA,B,またはC)の選択を受け付ける画像ボタン1420が表示される。教師がタッチ操作、マウス操作その他の選択操作により「グループA」を選択すると、図15に示されるように、グループAに属する生徒1~生徒4の顔画像が表示される。
図15に示される画面が教師のコンピューター120のモニター8は、グループの切り替えをキャンセルして元の状態に戻すための画像ボタン1510を表示している。教師が画像ボタン1510を押下すると、CPU1は、グループ単位で選択された表示形態を終了し、切り替え前の画面(図14)を表示する。なお、他の局面において、図15に示される画面から、さらに別のグループについてもワークシートから顔画像に切り替えられる構成が採用され得る。この場合、画像ボタン1510に加えて、画像ボタン1410,1420がさらに表示されることになる。
[データ構造]
図16を参照して、グループ単位の表示の切り替えが行なわれる場合におけるデータ構造について説明する。図16は、図14および図15に示される画面の切り替えが行なわれる場合のRAM4におけるデータの格納の一態様を表わす図である。RAM4は、クラウドサーバー110またはコンピューター120に含まれ得る。
ある局面において、RAM4はテーブル1610を保持している。この時、教師のコンピューター120は、生徒の一覧としてワークシート画像を表示している(例えば図14)。この状態で、教師がグループAを選択すると、選択されたグループAに属する生徒については、ワークシートの代わりに顔画像が表示されるように、表示データは更新される。すなわち、テーブル1610の内容は、テーブル1620の内容に書き換えられる。コンピューター120のCPU1は、テーブル1620の内容に従って、生徒1~生徒4については、顔画像を表示する(図15)。
[画面の拡大表示]
ある実施の形態において、教師のコンピューター120に表示される生徒の画像は、拡大して表示され得る。そこで、図17を参照して、画面の拡大および縮小について説明する。図17は、教師が使用するコンピューター120に表示される画面の変化の一例を表わす図である。
状態Aに示されるように、モニター8は、生徒の一覧を表示している。ある局面において、教師が生徒1の画像1710を選択して選択を確定する操作(たとえば、クリック)を行なうと、画像1710は、拡大されて、状態Bに示されるように、画像1720として表示される。これにより画像が拡大表示されるので、教師は、選択した生徒について、ワークシートの状況を詳細に確認することができる。
なお、拡大された画像1720が表示されている場合、画像1720は、拡大表示の終了指示を受け付ける画像ボタン1730を表示し得る。教師が画像ボタン1730をクリックすると、画像1720の表示は終了し、状態Aに示される画面が再び表示される。
[顔画像とワークシートの並列表示]
ある局面において、教師のコンピューター120のモニター8は、各生徒について、顔画像およびワークシートを表示することができる。このようにすると、教師は、各生徒の表情を見ながらワークシートの状況を確認できるので、必要に応じて的確なアドバイスを提示することができる。
そこで、図18を参照して、顔画像およびワークシートを表示する態様の一例について説明する。図18は、ある実施の形態に従って、一覧表示と並列表示とを切り替えた状態で表示される画面の推移を表わす図である。
状態Aに示されるように、ある局面において、モニター8は、16名の生徒のワークシートを表示している。モニター8は、さらに、ワークシートと顔画像とを並べて表示する指示を受け付ける画像ボタン1810を表示している。
教師が画像ボタン1810を押下すると、モニター8は、一覧表示から並列表示に切り替える。例えば、生徒番号1~16までの16名の生徒のワークシートの表示が、生徒番号1~8までの8名の生徒についてワークシートおよび顔画像の表示に切り替わる(状態B )。
状態Bにおいて、モニター8は、並列表示の終了指示を受け付ける画像ボタン1820を表示している。教師が画像ボタン1820を押下すると、コンピューター120は、並列表示を終了し、一覧表示に復帰する(状態A)。
なお、顔画像およびワークシートの表示形態は、並列表示に限られず、各生徒について顔画像の下にワークシート、あるいは、ワークシートの下に顔画像が表示される形態であってもよい。
また、顔画像およびワークシートの画像は、いずれか一方が他方の一部に重なっていても良い。例えば、ワークシートの回答欄以外の問題文は、各生徒について共通しているので、当該問題文の領域の前面に顔画像が表示されてもよい。このようにすると、ワークシートおよび顔画像が重ならないように並列表示される場合に比べて、より多くの生徒についてワークシートおよび顔画像が一画面に表示され得る。
[データ構造]
図19を参照して、顔画像とワークシートの並列表示が行なわれる場合におけるデータ構造について説明する。図19は、図18に示される画面の切り替えが行なわれる場合のRAM4におけるデータの格納の一態様を表わす図である。RAM4は、クラウドサーバー110またはコンピューター120に含まれ得る。
ある局面において、RAM4はテーブル1910を保持している。テーブル1910は、学習者IDとグループIDと表示用データとを含む。表示用データは、具体的には、ワークシートの画像データである。この時、教師のコンピューター120は、生徒の一覧としてワークシート画像を表示している(図18の状態A)。この状態で、教師が画像ボタン1820を押下すると、その押下に応答して、CPU1は、顔画像とワークシートとを並列表示するためのテーブル1920を生成する。
テーブル1920は、表示用データとして、顔画像とワークシートとを表示するデータを含む。この場合のワークシートを表示するためのデータは、テーブル1910における当該ワークシートを表示するためのデータよりも小さいものとなる。CPU1は、テーブル1920のデータを生成すると、モニター8に図18の状態Bの画面を表示する。
なお、CPU1は、クラウドサーバー110およびコンピューター120のいずれに含まれるものであってもよい。
[制御構造]
図20を参照して、他の局面に従う制御構造について説明する。図20は、他の局面に従うクラウドサーバー110のCPU1が実行する処理の一部を表わすフローチャートである。他の局面に従うクラウドサーバー110は、管理テーブルの更新処理として、ステップS900以降に示される処理に代えて、ステップS2000以降に示される処理を実行し得る。なお、前述の処理と同じ処理には同一のステップ番号を付してある。したがって、同じ処理の説明は繰り返さない。
ステップS2010にて、CPU1は、生徒の発言を検知したか否かを判断する。例えば、CPU1はコンピューター130から信号を受信した場合に、その信号が生徒の発話に基づくものであるか否かを判断する。一例として、生徒がコンピューター130の発言ボタン(図示しない)を押下して、質問その他の発話を行なうと、その発話に応じた音声信号がコンピューター130からクラウドサーバー110に送信される。その信号は、音声データの識別子を含み得る。クラウドサーバー110は、コンピューター130から受信した信号から当該識別子を検出すると、当該信号が生徒の発言を含んでいるとして、発言を検知したと判断する。CPU1は生徒の発言を検知したと判断すると(ステップS2010)にてYES、制御をステップS2040に切り替える。そうでない場合には(ステップS2010にてNO)、CPU1は、制御をステップS2020に切り替える。
ステップS2020にて、CPU1は、生徒のジェスチャーを検知したか否かを判断する。例えば、CPU1はコンピューター130から信号を受信した場合に、その信号が生徒のジェスチャーを含むか否かを判断する。一例として、生徒がその姿勢を変えた場合、コンピューター130のモニター8の近傍に設けられたカメラ(図示しない)は、顔画像とは別の画像をクラウドサーバー110に送信することになる。クラウドサーバー110は、当該生徒について予め保持している顔画像と、コンピューター130から新たに受信した画像とを比較して、当該生徒の顔画像が他の画像に変わったか否かを判断する。CPU1は、当該顔画像が他の画像に変わったことを検知すると、クラウドサーバー110はコンピューター130の生徒のジェスチャーを検知したと判断する。CPU1は生徒のジェスチャーを検知したと判断すると(ステップS2020にてYES)、制御をステップS2030に切り替える。そうでない場合には(ステップS2020にてNO)、CPUは、制御をステップS2030に切り替える。
ステップS2030にて、CPU1は、ワークシートへの書き込みが一定時間無かったか否かを判断する。例えば、CPU1は、各生徒について、最後に書き込みが行なわれてから一定時間経過したことを検知すると、ワークシートへの書き込みが一定時間無かったと判断する。あるいは、当該ワークシートに含まれる課題について、標準的な回答時間が予め指定されている場合、CPU1は、その回答時間後に予め設定された時間が経過した時に、書き込みが一定時間無かったと判断してもよい。CPU1は、ワークシートへの書き込みが一定時間無かったと判断すると(ステップS2030にてYES)、制御をステップS2040に切り替える。そうでない場合には(ステップS2030にてNO)、CPUは、制御をステップS2050に切り替える。
ステップS2040にて、CPU1は、RAM4のテーブルの表示用データを顔画像に変更する。その後、CPU1は、当該テーブルのデータをコンピューター120に送信する。コンピューター120は、そのデータに基づいてモニター8に一覧を表示するので、教師は各生徒の顔画像を視認することができる。その後、制御はステップS2010に戻される。
ステップS2050にて、CPU1は、ワークシートへの書き込みを検知したか否かを判断する。この判断は、例えば、クラウドサーバー110がコンピューター130から信号を受信した場合において、当該信号が、ワークシートの内容が更新されたことを示すデータ(例えば、バージョン番号、タイムスタンプ等)を含んでいるか否かに基づいて行なわれる。より具体的には、生徒のコンピューター130は予め定められた時間毎にクラウドサーバー110と通信している。生徒がワークシートへの書き込みを行なうと、コンピューター130のRAM4に確保された領域の内容が変更される。コンピューター130は、変更後のRAM4の内容をクラウドサーバー110に送信すると、クラウドサーバー110は当該生徒のワークシートに書き込みが行なわれたことを検知し得る。CPU1は、ワークシートへの書き込みを検知したと判断すると(ステップS2050にてYES)、制御をステップS2060に切り替える。そうでない場合には(ステップS2050にてNO)、CPU1は、制御をステップS2070に切り替える。
ステップS2060にて、CPU1は、RAM4におけるテーブルの内容をワークシートに変更する。その後、CPU1は、RAM4のテーブルの内容をコンピューター130に送信する。コンピューター130のCPU1は、その内容に基づきモニター8に更新されたワークシートの画像を表示する。その後、制御はステップS2010に戻される。
ステップS2070にて、CPU1は、カウンターnの値に基づき、全ての生徒のデータを取得したか否かを判断する。カウンターnの値が生徒数に到達していれば、全ての生徒のデータが取得されたことになる。CPU1は全ての生徒のデータを取得したと判断すると(ステップS2070にてYES)、制御をメイン処理(図9)に戻す。そうでない場合には(ステップS2070にてNO)、CPU1は、制御をステップS980に切り替える。
なお、他の局面において、教師が使用するコンピューター120がクラウドサーバー110の機能を有していても良い。すなわち、コンピューター120は、生徒のコンピューター130から直接データを受信して、顔画像またはワークシートを一覧表示する機能を有していても良い。
そこで、図21を参照して、他の局面に従ってオンライン学習を支援するシステム2100について説明する。図21は、他の局面に従うシステム2100の概略構成を表わす図である。システム2100は、コンピューター2120と、コンピューター130とを備える。コンピューター2120は、サーバー機能2121と、ワークシート管理ストレージ2122とを備える。サーバー機能2121は、クラウドサーバー110によって実現される機能に相当する。ワークシート管理ストレージ2122は、ワークシート管理ストレージ112に相当する。図21に示される構成によれば、コンピューター120は、生徒のコンピューター130から受信したデータを処理できるので、クラウドサーバー110を介す場合に比べて、顔画像やワークシートの一覧表示の遅延が短くなり得る。
以上のようにして、上記の実施の形態によれば、オンラインを用いた遠隔学習を支援するシステムにおいて、教師は、リモートにある各生徒の顔画像とワークシート画像とを一括して表示し、また、表示を切り替えることができる。これにより、各生徒の学習の理解度をタイムリーに確認できることができ、リモート状態にある生徒を適切に指導しやすくなる。
上記で開示された技術的特徴の一部は、以下のように要約され得る。
[構成1]クラウドサーバー110またはコンピューター120が実行する方法は、そのCPU1によって、各々がカメラ(図示しない)を有する複数の通信端末(例えばコンピューター130)のモニター8にそれぞれ表示されている各画像を取得するステップと、各カメラによって撮影された各映像を取得するステップと、各画像の一覧と各映像の一覧とをコンピューター120のモニター8に表示させるステップと、各画像の一覧の表示と各映像の一覧の表示とを切り替えるステップとを含む。
[構成2]当該方法は、コンピューター120のユーザーの操作に基づいて、各コンピューター130の一人または複数のユーザー(例えば、生徒や受講生)を選択するステップをさらに含む。切り替えるステップは、複数のコンピューター130のそれぞれのユーザーの画像と、選択されたユーザーの画像との間で、各画像および各映像の表示を切り替えることを含む。
[構成3]構成2において、選択するステップは、予め規定されたグループに属する複数のユーザー、または、コンピューター120のユーザー(例えば、教師や講師)により指定されたユーザーを選択することを含む。
[構成4]構成1において、モニター8に表示させるステップは、モニター8に表示されている各画像または各映像を拡大または縮小することを含む。拡大または縮小は、予め定められた倍率またはコンピューター120のユーザーにより指定された倍率のいずれであってもよい。
[構成5]切り替えるステップは、複数の通信端末のそれぞれのユーザーのうちの第1ユーザー(例えば、第1の生徒)についての表示画面を、それぞれのユーザーのうちの第1ユーザーとは別の第2ユーザー(例えば、第2の生徒)についての表示画面に切り替えることを含む。
[構成6]ある局面において、切り替えるステップは、コンピューターのユーザーによる操作が検知されたこと、各通信端末のユーザーによる操作、発話または動作が検知されたこと、各通信端末に表示されている画面への入力が一定時間行なわれていないこと、のいずれかに基づいて表示を切り替えることを含む。
[構成7]他の実施の形態に従うと、プログラムが提供される。このプログラムは、上記のいずれかに記載の方法をコンピューターに実行させる。当該プログラムは、例えば、オンライン学習支援システムを提供する事業者によって、ダウンロード可能なプログラムとして、または、不揮発性のデータ記録媒体に格納されたプログラム製品として提供される。
さらに他の実施の形態に従うと、情報表示装置が提供される。この情報表示装置は、上記のプログラムを格納したメモリと、プログラムを実行するプロセッサーとを備える。この情報表示装置は、教師や講師が使用するコンピューター120によって実現される。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。