xAPIの使用に関する以前の記事(https://habr.com/en/post/508624/)で、LRSとの対話を実際に編成する方法について書きました。驚いたことに、SCORMがある場合に新しいxAPI / CMI5標準を使用する理由について、多くの手紙と質問を受け取りました。彼らはどのような利点を提供しますか?そのような抽象的なアプローチ(それは彼らに思われる)xAPIを使用することの不可能性、多くのLMSなどによるサポートが不十分であるなどについて多くの意見を聞いた。
私は4年間、個人的にxAPI(TinCan)に切り替えました。そして、これらの仕様の違いを正確に想像することができます。多くの場合、専門家は「直接」のxAPIとSCORMを比較しようとします。IMS CPとSCORMのように、またはSCORM 1.1とSCORM 2004v4のように。また、同じ条件で同じ問題を解決する場合。そして、これは絶対に必要ではありません。SCORMは確かに便利で、次の場合に使用する必要があります。
- 電子教育リソースはLMSに保存する必要があります
- このリソースからのレポートに関して必要なのは、それを調査するのに費やした時間と現在の「評価」(完了/未完了、進捗状況(完了したタスクの割合)、タスクの「正しい」完了)だけです。
- 「等級」は、テストおよびその他の非SCORMコース要素とともに、どの分野でも一般コースに組み入れる必要があります。
実際、xAPIで同じことを行う場合、大きな利点はありませんが、複雑さが大幅に増大します。すぐに、使用するLRS、それをLMSに接続する方法、LRSからの成績をLMSコースに含める方法などを決定する必要があります。そしてこの場合、標準が「悪い」/「生」/「抽象的すぎる」/「なぜそれが必要なのか明確でない」などの結論にたどり着くことができます。専門家からよく聞くこと。
しかし、長年にわたってSCORM仕様を扱ってきたADLなどの尊重されたコンソーシアムや組織が、この分野の著名な専門家と多くの作業を行い、多くの協議を行ってきたと考えるのは奇妙なことだと思います...この質問を「SCORMサポーター」に尋ねると、誰も答えることができません...そして、この仕様が「取り上げられ」、CMI5がリリースされました。そしてここで、おそらく誰かがそれを必要としているのではないかと考え始めました。しかし、誰に、そしてなぜ?
この質問に答えるために、一時的にすべてのSCORM経験を忘れて、1つの興味深いタスクを考えてみましょう... グループ
用のシミュレータを開発する必要がありますあらゆる機器を扱う専門家のトレーニング。3D、VRなどの要件については詳しく説明しません。
シミュレーターは、トレーニングを実施するインストラクター向けに、見積もりと実行時間だけでなく、たとえば次のようなパフォーマンスレポートを提供する必要があります。
- ハザードおよび関連問題調査(HAZOP)レポートのスケジュール。
- 誤動作またはシステムクラッシュの可能性のある結果の図(「フォールトツリー」、FTA)。
- イベントの起こりうる結果の図(「イベントツリー」、ETA)など。
たとえば、この形式では...
ETAダイアグラム上のヒューマンファクターに
関連するイベントの確率FTAダイアグラム上のヒューマンファクターに関連するイベントの確率
さらに、このグループに含まれるすべての人を示すグループの結果です。 +このグループの各生徒の結果。
またはさらに興味深い-
SCORMを思い出して、原則として、cmi.interactions.X.description、cmi.comments_from_learner.X.commentなどを使用してこれらのグラフに必要な情報を書き留めることができると判断しますが、データはこれらのタスク用に作成された機能ではなく、これらの「データフィールド」を使用して、必要な情報を格納します。しかし、さらに興味深い。インストラクターがこれらのグラフを表示したいとしたら、どのように表示しますか? SCORMレポートを表示するLMSソースコードを書き換えますか?Moodleのプラグインを記述しますか?外部プログラムは使用できません。すべてのLMSは、レポートに異なる方法でデータを保存します。外部アプリケーションがLMSからデータを受信するためのインターフェースはありません。すべてが出航した。
ここで、xAPIがあることを思い出してください。books.ifmo.ru/file/pdf/1772.pdfを学習します。:すぐに明らかにされていることを
1だけが「不要な抽象」私たちは、厳密に、我々はそれを必要とまったく同じように、これらの図にすべてのデータを記述するのに役立ちます。
xAPI(actor-verb-object-extensions-result)アプローチを使用すると、SCORMで可能なものよりも桁違いに複雑なレポートを作成できます。
公式ドキュメントの例:
{
"actor": {
"name": "Sally Glider",
"mbox": "mailto:sally@example.com"
},
"verb": {
"id": "http://adlnet.gov/expapi/verbs/completed",
"display": { "en-US": "completed" }
},
"object": {
"id": "http://example.com/activities/hang-gliding-test",
"definition": {
"type": "http://adlnet.gov/expapi/activities/assessment",
"name": { "en-US": "Hang Gliding Test" },
"description": {
"en-US": "The Solo Hang Gliding test, consisting of a timed flight from the peak of Mount Magazine"
},
"extensions": {
"http://example.com/gliderClubId": "test-435"
}
}
},
"result": {
"completion": true,
"success": true,
"score": {
"scaled": 0.95
},
"extensions": {
"http://example.com/flight/averagePitch": 0.05
}
},
"context": {
"instructor": {
"name": "Irene Instructor",
"mbox": "mailto:irene@example.com"
},
"contextActivities":{
"parent": { "id": "http://example.com/activities/hang-gliding-class-a" }
"grouping": { "id": "http://example.com/activities/hang-gliding-school" }
},
"extensions": {
"http://example.com/weatherConditions": "rainy"
}
},
"timestamp": "2012-07-05T18:30:32.360Z",
"stored": "2012-07-05T18:30:33.540Z",
"authority": {
"name": "Irene Instructor",
"mbox": "mailto:irene@example.com"
}
}
2.サードパーティのプログラムによってLRSからデータを受信するメカニズムがあることを発見しました。これを使用して、インストラクターに美しいレポートをすぐに表示します。インストラクターは、さまざまな都市でのトレーニンググループの結果に基づいて複雑なサンプルを表示するように要求しますが、問題ありません。この情報を収集して分析します。
これは、異論が通常始まる場所です。たとえば、LMSスコアはどうですか? LMSへの統合。答えはとても簡単です。必要に応じて、xAPI / CMI5トレーニングリソースをLMSコースに簡単に統合できます。結局のところ、これは単なるリンクです。例のシミュレーターは、リンクシミュレーションによって起動されます://virtual.oilfield.test。 SCORMパッケージを作成することも難しくありません。SCORMパッケージは、起動時にLRSからエントリを選択するように求め、同じ評価をLMSに公開します(本当に必要な場合)。これは、担当者がインターネットのない分野で訓練を受けている場合に当てはまります。この場合、この接続が発生した時点でLMSに結果が到着する可能性があります(「セッション」を切断できないため、SCORMでは使用できません)。 LMSは「存在しない」ことができます。これは、多くの場合、単に必要なだけです(たとえば、通信条件)。
この記事がxAPIの本質をよりよく理解し、これらの2つの仕様を比較するのに役立つことを願っています。私の個人的な意見では、それらは完全に異なる問題を解決するように設計されています。