eラーニングコトハジメ

講義映像の再生時間は短いほうがいい?

eラーニングとして、講義映像を配信するとき、教材となる講義素材は、いくつかに分類できます。

  • eラーニング用に新規に撮影した映像
  • DVDなどの既存メディアの再利用
  • 学生がいる教室で収録した映像

よくeラーニング用の映像講義は、10~15分程度で区切り(映像ファイルを分割)することが良いと言われています。これは、学習項目を小分けにしたものを1コマの授業にして、どの項目からでも始められるように、また古くなった項目の差し替えが容易なことが挙げられます。

ただし、これは1つの方法であって、実際 教室での授業は、区切りが15分以上になることは、普通によくあることです。すでに収録済みの映像を、もう一度 再収録することは、難しく、本来はそういった条件は、講師側が自由に決めるべき問題です。

では、なぜそのようなことが、よく?言われるのでしょうか。もちろん小分けにしたほうが、学習しやすいというのもありますが、場合によってはシステム側の都合も考えられます。

  • 再生時間の長さ → セッションの問題
  • 映像のファイルサイズ → 映像内のシーク移動の問題


セッションの問題

LMS上で、1つの映像を60分 一気に再生するとどうなるでしょうか。学習者はその間、じっと何も操作せずに視聴していると、その間、サーバーとクライアントとの間で通信処理が行われません。結果として、LMS側のセッションが切れる可能性があります。Webアプリケーションのセッションタイムアウトのデフォルトは、20~30分のものがあるため、視聴が終わり、サーバーにデータを送信した直後に、セッションが切れログイン画面に戻されます。セッションタイムアウトの時間を長く設定するか、コンテンツ側で、15分おきにLMSにデータを送信するなど、工夫が必要になってきます。簡単な方法は、動画を分割して(SCO/アセットを増やして)LMSとの通信頻度を増やすことです。


映像内のシーク移動の問題

これは、映像データをダウンロードしながら再生する方法で問題がでてきます。映像再生直後に、50分先から再生しようとしても、ダウンロード(キャッシュ)が完了していないため、再生移動することができません。WindowsMediaServerなど本物?のストリーミング配信ならばシーク移動可能なため、問題になりませんが、あまりお手軽な方法ではないので、ダウンロードしながら再生する(プログレッシブダウンロード)が多いと思います。そのため、映像のファイルサイズを軽くして、すぐにダウンロードし終えるようにします。
(※iPhoneのストリーミングで、ダウンロードされていない位置に、シーク移動できるものは、HTTP Live Streamingという技術を利用しています。)

このような理由から、映像再生時間は、10~15分程度と短いほうが、何かと都合が良いのです。

そのほか大事なこと

映像を配信する方式によって、事情が変わってきますが、1Mbpsでエンコードした映像をWebサーバーから配信すると、1Mbpsでデータが流れるわけではありません。サーバー側、クライアント側のネットワークが許す限り、「全開」でデータが流れます、だいたい一人が20Mbps占有することもあります。そうなると、あっというまにサーバー側の回線帯域が上限に達してしまい、Webサイトの閲覧に遅延が発生するなど、問題が起きる可能性があります。

そのため、一人の接続(1セッション)に対して帯域制限を設定するなり、工夫が必要になることもあります。どのような映像フォーマット、配信形態で実施するか、考える必要があります。

※ 小ネタとして、回線帯域を計算するうえで、1Mbpsで映像をエンコードしても、回線帯域は、そのまま1Mbpsで計算するのではなく、1割増しぐらいで、計算します。映像の送受信時、ヘッダ情報も流れるので、そのあたりの「余裕」を見ておくといいみたいです。

SCORM1.2コンテンツ開発 実践

SCORM1.2 LMSのデータモデルのバージョンを取得したい

cmi._version を利用すると、LMSによってサポートされているデータモデルのバージョンを取得することができます。また、この要素は、適合性カテゴリに含まれていないため、動作しないLMSもあるかもしれません。

書式

LMSGetValue(“cmi._version”);

戻り値
CMIデータモデルを定義するIEEEのドキュメント、P1484.11.2のバージョンを返します。3.4の場合、ドキュメントのバージョンが3.4であることを意味します。

3.4

動作例

サンプルコンテンツ
SCORM12_cmi_version.zip

{tab=SCORM Cloud}
3.4を返す

{tab=Moodle2.3}
3.4を返す

{tab=ILIAS4.2.1}
動作せず

{tab=Moodle+ELECOA}
1.0を返す

※ELECOAのバージョン 2012年6月12日版
{/tabs}

SCORM1.2コンテンツ開発 実践

SCORM1.2 LMSがサポートするcmi.core要素を取得したい

cmi.core._children を利用すると、LMSがサポートするcmi.core要素を一覧で取得することができます。動作させるLMSで、どの要素が利用できるか、一つの目安になりますが、取得できた要素が、正しく動作するかまでは判断できません。LMS内で要素が存在しているか、していないか、分ることはそこまでです。

書式

LMSGetValue(“cmi.core._children”);

戻り値
カンマで区切りで取得できます。

student_id,student_name,lesson_location,credit,lesson_status,entry,total_time,lesson_mode,exit,
session_time,score

動作例

サンプルコンテンツ
SCORM12_cmi_core_children.zip

{tab=SCORM Cloud}
すべて対応

student_id,student_name,lesson_location,credit,lesson_status,entry,total_time,lesson_mode,
exit,session_time,score

{tab=Moodle2.3}
すべて対応

student_id,student_name,lesson_location,credit,lesson_status,entry,score,total_time,lesson_mode,
exit,session_time

{tab=ILIAS4.2.1}
すべて対応

student_id,student_name,lesson_location,credit,lesson_status,entry,score,total_time,
lesson_mode,exit,session_time

{tab=Moodle+ELECOA}
動作せず

※ELECOAのバージョン 2012年6月12日版{/tabs}

cmi.core._childrenから得られた、要素の動作状況

対応 ○ 未対応 ×

cmi.core._children SCORM Cloud Moodle2.3 ILIAS4.2.1
student_id
student_name
lesson_location
credit
lesson_status
entry
score
total_time
lesson_mode
exit
session_time
SCORM1.2コンテンツ開発 実践

SCORM1.2 学習者の氏名を取得したい

cmi.core.student_name を利用すると、学習者の氏名を取得することができます。
書式

LMSGetValue(“cmi.core.student_name”);

戻り値
姓(lastName)、名(firstName)の順番でカンマで区切られます。

Taguchi,Kunihiko

動作例

サンプルコンテンツ
SCORM12_student_name.zip

LMSのアカウント管理で、名(firstName)+姓(lastName)の順序で管理されていても、SCORM上では、姓(lastName)+名(firstName)の順序になるところが、少しまぎわらしいかもしれません。

{tab=SCORM Cloud}

アカウントの登録状態

{tab=Moodle2.3}

アカウントの登録状態

{tab=ILIAS4.2.1}

アカウントの登録状態

{tab=Moodle+ELECOA}
ELECOAでは、ユーザ名を取得します。ユーザ名は、氏名ではないので、不具合の可能性もあります。

アカウントの登録状態

※ELECOAのバージョン 2012年6月12日版
{/tabs}

ELECOA

ELECOA Playerのインストール

ELECOAとは

ELECOAは、千葉工業大学 情報科学部と放送大学ICT活用・遠隔教育センターの共同研究で開発された、オープンソースのSCORMエンジンです。2012年5月7日に公開され、「拡張性を有する適応型自己学習支援システムのためのオブジェクト指向アーキテクチャの設計と実装」という研究目的で開発されました。

ELECOAの特徴は、LMSとコンテンツとの間に、「教材オブジェクト」という概念を取り入れ、既存の機能に弊害がでないように、独自にSCORMを拡張できる構造になっていることです。また、SCORM1.2、SCORM2004 3rdに対応しているため、コンテンツの動作確認にも利用できます。

ELECOAの動作形態は3つあります。

  • パソコン単体動作版
    自身のパソコンにWebサーバをインストールしてローカルホストでコンテンツを起動する方法
  • Webサーバ版
    外部のWebサーバー上で、コンテンツの起動・LMSへの組み込みを想定したもの
  • Moodle組み込み版
    Moodle用のSCORMプラグイン

特にELECOAは、Moodleが稼動している放送大学のUPO-NETで利用されているようです。そのため、Moodle用のSCORMプラグインが開発されたようです。

ELECOA 公式サイト
http://elecoa.ouj.ac.jp/


ELECOA Playerのインストール (動画版)

単体動作版のELECOA Playerをインストールしてみましょう、一番簡単な方法は、Microsoft Web Platform Installer3.0(Web PI)を利用する方法です。
http://www.microsoft.com/web/downloads/v3/platform.aspx から、Web PI3.0をダウンロードします。注意するところは、登録する「追加シナリオ」のXMLファイルが、Web PI4.0に対応していないため、3.0でなければなりません。

ダウンロードしたら、Web PIを起動して、「オプション」を選択します。

「追加シナリオを表示」のテキストフィールドに、シナリオを定義した下記のパスを入力して、「フィードの追加」を選択します。

http://elecoa.ouj.ac.jp/player/webpifeed.xml

Webサーバーは、既定のIIS Expressを利用するとして、「OK」を選択します。

(タブに見えない)タブ項目に、ELECOA Playerが、追加されています。「ELECOA Player」タブを選択します。

そうすると、インストール項目が表示されるので、「追加」そして「インストール」を選択します。

インストールに必要なソフトウェアが一覧されます。「同意する」を選択して、インストールを行います。

一通りインストールが行われると、「アプリケーション情報の入力」画面が表示されます。何も入力せず、「続行」を選択します。

これでインストールは終わりました。IIS Expressは、WebMatrix上で起動するため、WebMatrixを起動します。

elecoaがきちんと認識されて、URLが表示されます。表示されるポート番号は、端末によって違うようです。

指定のアドレスをブラウザで開くと、ELECOA Playerが起動します。

ログインしてみると、シンプルな構成で、コンテンツの登録と起動をすることができます。ログは、サイト上では管理されず、インストールされたディレクトリ上にlogフォルダとしてテキストファイルで記録されます。

このように、ELECOA Playerは、専門的な知識を持たなくても簡単にインストールをすることができます。


ELECOA Playerのインストール 動画版


※音声はありません。
http://youtu.be/sZN-B1apgs0

ADL

次世代SCORMの要件に関するADLの見解

An ADL Perspective on Next Generation SCORM Requirements as Derived from Project Tin Can
ADLにより、公開されているドキュメント「An ADL Perspective on Next Generation SCORM Requirements as Derived from Project Tin Can
(Project Tin Canから派生した次世代SCORMの要件に関するADLの見解)」を翻訳しました。このドキュメントは、現在のSCORMに対して、どのような不満があり、どうしていきたいのか、比較的分りやすく説明されています。SCORMは、扱いづらいなど、いろいろ言われていますが、実はADLも、「そんなことは分っている」と言わんばかりの、面白いドキュメントです。

Googleドキュメント上には、対訳を公開しました。誰でも「コメント」を付けることができますので、間違っているところなど、ありましたらご指摘ください。(Googleにログオフ状態なら匿名としてコメントをつけることができるようです)


Tin Can API

セキュリティ/認証を必要とします

従来のeラーニングの仕様は、堅牢なセキュリティに欠いていることはよく知られています。LETSI RTWSは、セキュリティのためのソリューションを提供しており、これは、良いスタートです。

Tin Can APIは、RTWSのアプローチに基づいてます。認証の仕組みは、RTWSが認証する方法に似ていますが、より柔軟です。Tin Can APIにおいて、認証は、コンテンツではなくユーザーに結び付けられます。ユーザーは、ステートメントを送り出す、すべての人や物に当てはめることができます。ユーザーは、学習者、講師、あるいはソフトウェア·エージェントになります。そして、OAuthで認証を行うことができます。

Tin Can APIを用いると、コンテンツは、セキュアが確保され、eラーニングは、効果的なトレーニングのために使用することができます。


※ この記事は、CC BY 3.0のもと、Rustici Software 社の記事を翻訳したものです。
http://scorm.com/project-tin-can-phase-3-we-need-securityauthentication/

Tin Can API

自分自身のシーケンシングを自分でやりたい

人々はシーケンシングを思い通りに動かしたいという問題を抱えています、というのは、コンテンツとLMSの間で相互運用性の問題があることを意味しています。コンテンツ制作者によって作られたシーケンシングがLMSにより間違って解釈される多くの余地が常にあります。

問題は、たとえ複数のSCOの使用から得たたくさんのレポートを無視してでも、多くのコンテンツ制作者が流れるようなユーザエクスペリエンスを持つために、複数のSCOをひとつのSCOにまとめることが十分に広がっていることです。

どのように解決すればよいでしょうか?。私たちは、複雑なシーケンシングの必要性を取り除きます。

Tin Can APIは、シーケンシングをコンテンツ/アクティビティに残しています。LRSがシーケンシングを間違って解釈する余地はありません、なぜなら、LRSは決してそれに触れないからなのです。コンテンツ/アクティビティは、適正なタイミングで、LRSにステートメントをレポートするだけです。


※ この記事は、CC BY 3.0のもと、Rustici Software 社の記事を翻訳したものです。
http://scorm.com/project-tin-can-phase-3-i-want-to-do-my-own-sequencing/

NoraUsagiメモ:
「複数のSCOをひとつのSCOにまとめることが十分に広がっている」とは、Flashのような、1SCOのコンテンツを指していると思います。複数SCOにすれば多くのトラッキング情報が得られますが、操作性を優先して、1SCOにすることで得られる情報はわずかしか残りません。LMSがSCO単位で、「学習完了」などのフラグを管理していることが原因で、TinCanは、SCO単位という概念をなくし、コンテンツ側に託してしまうという意味だと思います。そのなかでは、複数の「学習完了」のフラグを設けても別に良いわけです。そして、LMSのシーケンシングの誤動作も防げるので、一石二鳥という感じでしょうか。

Tin Can API

協調学習とチームベースの学習

協調学習

Tin Can APIによる協調学習とは、複数の学習者が同じアクティビティを経験していることを意味します。学習者は、同じ場所にいる必要はありません。そして、同時にアクティビティを体験する必要もありません(そうすることもできますが)。学習者は、協調学習で何ができるのでしょうか?

  • 互いに質問をする。
  • 互いにコメントを残したり、コンテンツ/アクティビティの制作者にコメントを残す。
  • ほかの学習者の回答にコメントする。
  • 投票や評価そして採決のような新しい機能を実装できます。
  • 個人がどのくらいグループに貢献したか評価できます。

これらすべてのインタラクションは、LRSに送信されるステートメントとしてトラッキングすることができます。このような協調学習は、以前のeラーニングの仕様だけでは不可能なことでした。

チームベースの学習

チームベースの学習は、それぞれの個人と同じように、二人以上の人によって得られた体験のトラッキング結果を考慮に入れます。「チーム3は、特別な操作トレーニングを完了しました。」などの、ステートメントを使用することができます。チーム内でチームの成績や、個人についてのトラッキングおよびレポートが重要であるとき、これは役に立ちます。


※ この記事は、CC BY 3.0のもと、Rustici Software 社の記事を翻訳したものです。
http://scorm.com/project-tin-can-phase-3-collaboration-and-team-based-learning/

NoraUsagiメモ:
「協調学習」 (ylab 山内研究室 Blog)
http://blog.iii.u-tokyo.ac.jp/ylab/2009/11/post_195.html

Tin Can API

指導者・その他は、トレーニング中、観察・対話をする必要があります

eラーニングは、とても孤独な体験です。そして、コースやテストを受けて評価されます。Tin Can APIは、そのようなやり方から離れ、アクティビティの開発者が、学習者と講師との間でインタラクションの新しい方法をクリエイトできるようにして、新しい可能性を広げることができます。

どのようなユースケースがあるでしょうか?

  • 講師は、記述中の論文の評価ができて、コメントや提案を付けることができます。
  • 指導者は、シミュレーションを観察して、その場でシナリオの調整をすることができます。
  • 学習者の行動を、詳しく観察することができ、コンテンツの最適化が可能になります。
  • インストラクターは、評価するまでもなく、ほぼリアルタイムにフィードバックの回答をすることができます。
  • 講師は、学習者がつまづくかもしれない迷いを、解くために、コース/テストの中にコメントを残すことができます。
  • アクティビティ中、指導者と学習者は、チャット/ビデオで会話をします。

アクティビティ/コンテンツが、上記の機能を提供するためには、LRSで、Tin Can APIを使用してトラッキングする必要があります。


※ この記事は、CC BY 3.0のもと、Rustici Software 社の記事を翻訳したものです。
http://scorm.com/project-tin-can-phase-3-instructorsothers-need-to-observeinteract-during-training/

NoraUsagiメモ:
このような、チャットやビデオシステムは昔からあり、それ自体に目新しさは感じませんが、独自システムの中で完結しているものがほとんどです。そのようなやりとりを、LRSでトラッキングできること、さまざまな形態のコンテンツのレポートを一元して扱えるところが、すごいところなのです。