cmi5とは?
cmi5はxAPIのプロファイルの1つで、学習管理システム(LMS)がコンテンツを起動する方法と、そのコンテンツが自らのライフサイクルを報告する方法を定めています。cmi5が存在するのは、素のxAPIが学習活動の記録方法を定めている一方で、コースがどう始まるのか、誰が受講しているのか、何をもって修了とするのかについては何も定めていないからです。これらはSCORMが規定し、あらゆるLMSが頼りにしてきた部分です。cmi5のコースはSCORMのコースと同じようにLMSから起動され、その後xAPIステートメントをLearning Record Storeに送ります。そのため、LMSによる受講登録と修了管理を保ちながら、SCORMには項目のない詳細まで記録できます。
cmi5が素のxAPIに加えるもの
| 素のxAPI | cmi5 | |
|---|---|---|
| コンテンツの起動方法 | 未定義 — ベンダーごとに独自に実装 | セッションと登録情報を含む、定義された起動URL |
| 学習者が誰か | 何らかの方法でコンテンツに伝える必要がある | 起動時にLMSが渡す |
| コースの構造 | なし — ステートメントは互いに独立 | 割り当て可能なユニットを記述したコース構造ファイル(cmi5.xml) |
| ライフサイクルの動詞 | 好きな動詞を使える | 定義された9つの動詞:launched、initialized、completed、passed、failed… |
| 修了を決めるのは誰か | LRSに問い合わせる人 | コンテンツが宣言し、LMSは`moveOn`ルールを適用できる |
| パッケージ | 規定なし | SCORMと同じく、LMSが取り込むzip |
cmi5が解決しようとした問題
xAPIによって何でも記録できるようになりましたが、その過程で、コースを持ち運び可能にしていたSCORMの部分が取り除かれてしまいました。LMSがxAPIのコンテンツを起動する標準的な方法も、誰が受講しているかをコンテンツに伝える標準的な方法もなく、どのステートメントが「この人は修了した」を意味するのかについての合意もありませんでした。ベンダーごとにその隙間を別々のやり方で埋めたため、xAPIのコンテンツはプラットフォーム間で実質的に交換できませんでした。これはまさに、SCORMが解決していた問題です。
cmi5はその隙間を埋め、それ以外のことはしません。xAPIを置き換えるものではなく、起動とライフサイクルのルールを書き加えたxAPIです。
cmi5のコースが動く流れ
流れはSCORMに十分近いので、SCORMパッケージを取り込んだことのある管理者なら、どの手順にも見覚えがあるはずです。
- 管理者がcmi5パッケージ(cmi5.xmlとコンテンツを含むzip)を取り込む
- LMSがcmi5.xmlを読み、そこに記述された割り当て可能なユニットを登録する
- 学習者がユニットを起動すると、LMSは学習者のID、登録ID、認証トークンを取得するためのURLを付けてそれを開く
- コンテンツは`launched`と`initialized`を送り、その後セッション中に必要なステートメントを送る
- 最後に`completed`、`passed`、`failed`のいずれかと、`terminated`を送って終わる
- LMSはユニットの`moveOn`ルールを適用し、学習者がそのユニットの条件を満たしたかを判断する
cmi5が適しているとき
SCORMが記録する以上のことを知りたいが、受講登録と修了の管理は引き続きLMSに任せたい。cmi5は、そんなときの答えです。合否の報告では物足りなくなったものの、LMSから離れてはいない企業研修の多くが、これに当てはまります。
cmi5が向かないケースは2つあります。本当に修了しか問われないのであれば、SCORMのほうがシンプルで、どこでも対応しています。また、学習がモバイルアプリや現場で行われ、何かを起動するLMSが存在しないのであれば、素のxAPIでLRSに送るのが合っています。cmi5の起動ルールこそが、その場合には不要な部分だからです。
対応は本物だが、ばらつきがある — 決める前に試す
cmi5の対応範囲はSCORMほど広くなく、ベンダーの主張は、実際に試すことの代わりにはなりません。Moodleはプラグインでcmi5に対応しており、ネイティブで対応している商用プラットフォームもいくつかありますが、まったく対応していないものもあります。
確実な確かめ方は、午後ひとつで済みます。短いコースを1つ作り、cmi5パッケージを書き出してプラットフォームに取り込み、受講してみて、ステートメントがLRSに届くか、LMSがユニットを条件達成と判定するかを確認してください。そうして得た答えは、どんな機能比較表よりも価値があります。
よくある質問
cmi5はxAPIと同じものですか?
いいえ。xAPIは学習活動のステートメントを記録するための仕様で、cmi5は、LMSからのコンテンツの起動とコースのライフサイクルの報告についてのルールを加えたプロファイルです。cmi5のコンテンツはすべてxAPIを使いますが、xAPIのコンテンツがすべてcmi5というわけではありません。
cmi5にLearning Record Storeは必要ですか?
はい。cmi5のステートメントはxAPIステートメントなので、受け皿となるLRSが必要です。LRSを同梱しているLMSもありますが、そうでなければ別のサービスになります。
なぜcmi5という名前なのですか?
「CMI」はComputer Managed Instructionの略で、SCORMに先立つ標準を定めた航空業界の団体、AICCが使っていた用語です。cmi5はその取り組みの5番目の改訂版で、最終的な仕様がAICCではなくxAPIのもとで公開された後も、名前はそのまま残りました。
既存のSCORMコースをcmi5に変換できますか?
パッケージを変換する方法では、確実にはできません。SCORMパッケージはコンパイルされた出力物で、cmi5が必要とするコース構造の情報が含まれていないからです。確実なのは元のデータからcmi5を書き出す方法で、だからこそ、オーサリングツールが1つのプロジェクトから両方を作れることが重要になります。
cmi5の9つの動詞とは何ですか?
launched、initialized、completed、passed、failed、abandoned、waived、terminated、satisfiedです。ほとんどはコンテンツが送り、waivedとsatisfiedはLMSが送ります。
Mosraの位置づけ
cmi5の書き出しは、たいてい専用のオーサリングスイートにしかなく、その多くはデスクトップ専用です。Mosraは、それをブラウザから書き出せます。
- SCORM、xAPI、PPTX、PDFと同じ資料からcmi5パッケージを書き出し
- 学習記録ストアを内蔵しているので、ステートメントが届くかを試す場所があります
- スライド上の採点付き問題が、cmi5のライフサイクルを通じて合格・不合格を報告
- リリース期間中は無料。決める前に、お使いのLMSでパッケージを1つ試すには十分です
関連する機能
SCORMとxAPI:本当は何が違うのか
SCORMとxAPIはどちらもeラーニングの学習活動を報告するための標準規格で、違いは、コンテンツがどこで動くか、そしてどれだけのことを伝えられるかにあります。SCORMのコンテンツはLMSのウィンドウの中で動き、修了、スコア、学習時間、合否といった少数の決まった値を、そのLMSに報告します。xAP…
eラーニングの標準規格Learning Record Storeとは?
Learning Record Store(LRS)は、xAPIステートメント、つまり学習者が行ったことを「行為者、動詞、対象」の形で記述した記録を受け取り、保存するために作られたデータベースです。xAPIは学習活動の記述方法と送信方法を定めていますが、どこに保管するかは定めていないため、xAPIや…