このセクションの情報は,IMS SS 仕様のトラッキングモデル動作セクションを置き換えるのではなく,補完 するものである.詳細について IMS SS 仕様を参照のこと.
オーバーオールシーケンシングプロセス(Overall Sequencing Process)は,LMS のシーケンシング実装の 全般的なコントロールプロセスを提供し,シーケンシングセッションの中で,様々なシーケンシング動作が どのように適用されるかについて記述している.オーバーオールシーケンシングプロセスは,以下のシー ケンシング動作を含む:
ナビゲーション動作 –ナビゲーション要求の有効性をどのように確かめ,それを終了要求および シーケンシング要求に変換するかについて記述している.
終了動作 –アクティビティへの現在の試行がどのように終了するか,アクティビティツリーの状態 がどのように更新されるか,試行終了によってどのようなアクションが実行されるかについて記述 している.
ロールアップ動作 –クラスタアクティビティのトラッキング情報がどのように子アクティビティから導 出されるかについて記述している.
選択ランダム化動作 – シーケンシング要求処理時に,クラスタのアクティビティがどのように検討 されるのかについて記述している.
シーケンシング動作 – 次に配信されるアクティビティを特定するために,シーケンシング要求が どのようにアクティビティツリーで処理されるかについて記述している.
配信動作 – 配信するよう特定されたアクティビティの有効性をどのように確認し,LMS が確認さ れたアクティビティの配信をどのように行うのかについて記述している.
図 4.3a - オーバーオールシーケンシングプロセスの概念モデル
IMS SS 仕様は上記の動作を,同一データモデル(トラッキングモデル(セクション 4.2 参照))の上で動作 する独立したスタンドアロンプロセスの集合として記述している.オーバーオールシーケンシングプロセス の概念モデル(図 4.3a)は,様々なシーケンシング動作,アクティビティツリー,トラッキングモデルの相互 の関係を示している.オーバーオールシーケンシング動作への入口は LMS が発行するナビゲーション 要求である.典型的には,ナビゲーション要求は,学習者によるナビゲーションイベントないしはコンテン ツが発行するナビゲーション要求(セクション 4.4.3:ナビゲーション要求参照)から発行される.オーバー オールシーケンシング動作からの出口は,次に配信されるアクティビティの指定(何も配信しないも含む)
か,例外処理である.アクティビティが配信のために指定された場合,LMS はアクティビティと関連付けら れたコンテンツオブジェクトを起動する.SCORM は,配信されるアクティビティが指定されないケース,も しくは例外が発生したケースの動作については定義していない.オーバーオールシーケンシング動作結 果について何らかの情報を LMS が学習者に提供し,これによってシーケンシングセッションを継続させる ようにすることを推奨している.
(1) 学習者が LMS へのアクセスを開始し(例:システムへアクセス,ログイン等),ある学習ユニッ ト内の文脈を確立する(例:コース,コンテンツオーガニゼーションなどを選択する)
(2) LMS が,Start,Resume AllもしくはChoiceナビゲーション要求を発行してシーケンシングプ ロセスを開始する.*
前のシーケンシングセッションがResume Allナビゲーション要求で終了した場合,LMS は
Resume Allナビゲーション要求でシーケンシングセッションを開始しなくてはならない.
Choiceナビゲーション要求が利用可能であっても,LMS はStartないしResume Allナビゲ ーション要求でシーケンシングセッションを開始しなくてはならない.
*シーケンシングセッションを開始する前に,カレントアクティビティはNone(未定義)とみなさ なくてはならない.
(3) ナビゲーション動作は,Start, Resume All,もしくはChoiceナビゲーション要求を適切なシ ーケンシング要求に変換して処理する.配信されるアクティビティが特定されたとき,シーケ ンシングセッションが正式に開始される.すなわち,以下のシーケンシングループに通じる成 功するパスである.
シーケンシングセッションが開始されたら,中断アクティビティはNone(未定義)とみなさなく てはならない.
シーケンシングループ開始
(4) シーケンシング動作は,シーケンシング要求に基づき,トラッキング状態モデルとシーケンシ ング定義モデルの情報を使用して,学習者へ配信すべき適切なアクティビティを定めるよう にアクティビティツリーを探索する.配信されるアクティビティが特定できない場合,オーバー オールシーケンシングプロセスは停止し,他のナビゲーション要求を待つ.Step #9 へ飛ぶ.
(5) 配信動作は,特定されたアクティビティが配信できるか否かを決定し,配信できる場合,アク ティビティに関連付けられたコンテンツオブジェクトを学習者に対して起動する準備をする.
指定されたアクティビティが配信できない場合,オーバーオールシーケンシングプロセスは 停止し,他のナビゲーション要求を待つ.Step #9 へ飛ぶ.
(6) 学習者がコンテンツオブジェクトとインタラクションを行う.インタラクション中,シーケンシング プロセスはアイドリング状態で要求を待っている.
(7) インタラクション中にコンテンツオブジェクトが,様々なトラッキングモデル要素を更新する値 を通信することがある.
(8) 学習者,コンテンツオブジェクトもしくはシステムが,Continue, Previous, Choose activity X,
Abandon, Exitなどのナビゲーションイベントを呼び出す.
(9) LMS は,ナビゲーション要求を発行することによりシーケンシング実装にナビゲーションイベ ントを知らせる.
(10) ナビゲーション動作は,ナビゲーション要求を終了要求とシーケンシング要求に変換する.
学習者がアクティビティツリーのルートアクティビティへの試行を終了したいというナビゲーシ ョン要求を示した場合,シーケンシングセッションは終了する.(シーケンシングセッションを 終了する動作とアクティビティ状態モデルの保存方法については定義されず,LMS の実装 に任されている)
(11) コンテンツオブジェクトの終了に伴うナビゲーション要求が発行された場合,トラッキングモデ ルを更新する値が通信されることがある.アクティビティへの試行が終了する.学習者とコン テンツオブジェクトとのインタラクションにより発生した状態変化の影響を決定するためにロー ルアップ動作が呼び出される.ロールアップ動作はアクティビティとアクティビティツリー内の 祖先に対してトラッキング状態モデルを更新する.
(12) シーケンシングループは,シーケンシングセッションが終わるまで,ステップ 4 から繰り返す**.
**シーケンシングセッションが終わったあとは,カレントアクティビティはNone(未定義)とみな さなくてはならない.
オーバーオールシーケンシング動作は,様々なシーケンシングプロセスがどのように関係するのかを示す が,実装は,オーバーオールシーケンシングプロセスの文脈外であれば個々のシーケンシングプロセスを,
いつでも自由に呼び出すことができる.その場合,アクティビティとアクティビティツリーのトラッキング状態 モデルが,ナビゲーション要求を処理する際のオーバーオールシーケンシングプロセスで記述された動 作を確実に実現するため,充分な状態管理を提供する必要がある.オーバーオールシーケンシングプロ セス外でシーケンシングプロセスを呼び出す通常のシナリオは,学習リソースを起動する結果になるナビ ゲーション要求だけを確実に実行し,有効なナビゲーションコントロールだけを含む知的ユーザインター フェースを提供することである.
実装において,様々なナビゲーションイベントに対する「what if」シナリオを評価するために,仮のデータ 上のオーバーオールシーケンシングプロセスの文脈外で(複数のトラッキング情報のセットを管理する,追 加のトラッキング状態モデル要素を提供する,ロールバックを使用する等々によって),シーケンシング動 作を呼び出すことができる.例えば,学習者にContinueナビゲーションイベントを発行させる何らかのナ ビゲーションコントロールを提供するように実装することが可能である.学習者がそのコントロールを実行し た場合,LMS は,何が起こるか確認するため,自由に仮のContinueナビゲーション要求を処理すること ができる.仮の要求がエラーに終わるか,もしくは何も配信しない結果になった場合,LMS はナビゲーシ ョンイベントを無効とし(オーバーオールシーケンシングプロセスを呼び出さず),学習者に提示し,仮の 状態データを破棄することができる.仮の要求がうまく行った場合,LMS はオーバーオールシーケンシン グプロセスを呼び出し(あるいはその何らかのサブセットを最適化し),うまく行ったコンテンツオブジェクト を配信し,仮状態データを生かすことができる.