Internet Navigware 教材作成キット Professional V9.0
目次 索引 前ページ次ページ

第4章 オンデマンド型学習教材の作成> 4.18 SCORM 教材の作成と読み込み

4.18.6 SCOのデバッグ

教材作成キットでは、編集中の SCORM 教材の学習時の動作を SCO 単位で確認することができます。
※SCORM 教材の SCO は、Internet Navigware 教材の学習教材構成のうち、フレームに対応しています。

[SCORMビュー]モード実行時、ワークスペースウィンドウのフレームを右クリックするとメニューが表示されます。SCO の動作を確認する場合は、[SCOデバッグ]を選択します。

[SCOデバッグ]メニュー

SCOデバッグウィンドウが表示され、SCO に登録されているページファイルの動作を確認できます。SCOデバッグウィンドウを表示したまま別のフレームを選択すると、SCOデバッグウィンドウの表示内容も変更されます。

SCOデバッグウィンドウ

SCOデバッグウィンドウはページファイルが表示される上部の"表示フレーム"と、ページファイルから発行されたAPI関数の内容が表示される下部の"デバッグフレーム"に分割されて表示されます。また、ステータスバーには選択中の項目名が表示されます。

SCORM 教材では、ページファイルからLMS(Learning Management System、学習管理システム)に対して規定のAPI関数を発行することにより、学習進捗の管理を行います。SCO デバッグウィンドウのデバッグフレームでは、発行されたAPI関数と返却値に関する情報がメッセージ表示されます。SCORM 教材として作成した意図通りに、API関数が発行されているか確認してください。 なお、デバッグフレームのメッセージ表示は最大1000行まで連続表示され、1000行を超えると内容がリフレッシュされます。
SCOデバッグ機能は、コンテンツからLMSに発行されるAPI関数を一覧表示する機能です。教材作成キットはLMSとしての機能は有していないため、LMSSetValue()にて設定した値は内部的には保持されません。また、LMSGetValue()にて取得する情報は常に一定値となります。

SCOR M教材 SCOデバッグウィンドウ
API関数 データモデル 復帰値 メッセージ
LMSInitialize() - true LMSInitialize()が発行されました。
LMSSetValue() (すべてのデータモデル) true LMSSetValue(xxxxxxxx)が発行されました。
LMSCommit() - true LMSCommit()が発行されました。
LMSFinish() - true LMSFinish()が発行されました。
LMSGetValue() cmi.core.credit credit LMSGetValue(xxxxxxxx)が発行されました。ダミーの文字列’xxx’を返却します。
cmi.core.lesson_status passed
cmi.core.entry ab-initio
cmi.core.score.raw 100
cmi.core.score.max 100
cmi.core.score.min 0
cmi.core.total_time 0000:00:00
cmi.core.lesson_mode normal
cmi.core.score.exit time-out
(上記以外のデータモデル) dummy
LMSGetLastError() - 0 LMSGetLastError()が発行されました。ダミーのエラーコード '0' を返却します。
LMSGetErrorString() - dummy LMSGetErrorString(xxx)が発行されました。ダミーのエラー文字列 'dummy' を返却します。
LMSGetDiagnostic() - dummy LMSGetDiagnostic(xxx)が発行されました。ダミーの補足文字列 'dummy' を返却します。

デバッグフレームに出力される警告メッセージについて説明します。

[警告]LMSInitialize()が発行される前に他のAPIが発行されました。初期化の処理を確認してください。

[対処方法]
"LMSInitialize()"(初期化)が発行される前に他のAPI関数が発行されています。SCORM 1.2 の規約では、SCO は学習の始めに"LMSInitialize()"を発行する必要があります。初期化の処理を確認してください。

[警告]LMSFinish()が複数回発行されました。学習終了の処理を確認してください。

[対処方法]
"LMSFinish()"が複数回発行されています。SCORM 1.2 の規約では、"LMSFinish()"が発行された後は"LMSGetLastError()","LMSGetErrorString()","LMSGetDiagnostic()"以外のAPI関数を発行することはできません。SCO の終了処理を確認してください。


目次 索引 前ページ次ページ

Copyright FUJITSU LIMITED 1997-2012