run time e-learning scorm standard. bookshelf scorm scorm_1.2_overview.doc scorm_1.2_cam.doc...

23
Run Time Run Time E-learning SCORM standard E-learning SCORM standard

Upload: margherita-giovannini

Post on 01-May-2015

230 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Run Time E-learning SCORM standard. bookshelf SCORM SCORM_1.2_Overview.doc SCORM_1.2_CAM.doc SCORM_1.2_RunTimeEnv.doc

Run TimeRun Time

E-learning SCORM standardE-learning SCORM standard

Page 2: Run Time E-learning SCORM standard. bookshelf SCORM SCORM_1.2_Overview.doc SCORM_1.2_CAM.doc SCORM_1.2_RunTimeEnv.doc

bookshelf SCORMbookshelf SCORMbookshelf SCORMbookshelf SCORM

SCORM

BOOK 2: The SCORMContent Aggregation Model

BOOK 3: The SCORM Run Time Environment

Launch, Communication API (from AICC)

Data Model (from AICC)

BOOK 1: The SCORMOverview

Meta-data Dictionary (from IEEE)

(Meta-data XML Binding and Best Practice (from IMS)

Content Structure (derived from AICC)

Content Packaging (from IMS)

SCORM_1.2_Overview.docSCORM_1.2_Overview.doc

SCORM_1.2_CAM.docSCORM_1.2_CAM.doc

SCORM_1.2_RunTimeEnv.docSCORM_1.2_RunTimeEnv.doc

Page 3: Run Time E-learning SCORM standard. bookshelf SCORM SCORM_1.2_Overview.doc SCORM_1.2_CAM.doc SCORM_1.2_RunTimeEnv.doc

contributorscontributorsKey Contributing Editors (ADL)Key Contributing Editors (ADL)

Ron BallJeff KrinockWilliam CaponeLori MorealliJeff FallsDouglas PetersonDexter Ron BallJeff KrinockWilliam CaponeLori MorealliJeff FallsDouglas PetersonDexter FletcherJonathan PoltrackAlan HoberneyChris SnyderPaul JesukiewiczSchawn ThroppKirk FletcherJonathan PoltrackAlan HoberneyChris SnyderPaul JesukiewiczSchawn ThroppKirk

JohnsonBryce WalatMary KraulandJerry WestJohnsonBryce WalatMary KraulandJerry WestPartial List of Contributors:Partial List of Contributors:

Alliance of Remote Instructional Authoring & DistributionAlliance of Remote Instructional Authoring & DistributionNetworks for Europe (ARIADNE) (Networks for Europe (ARIADNE) (http://www.ariadne-eu.org/http://www.ariadne-eu.org/))

Erik DuvalErik DuvalEddy Forte Eddy Forte

Florence HaennyFlorence HaennyKen WarkentyneKen Warkentyne

Aviation Industry CBT (Computer-Based Training) Committee (AICC)Aviation Industry CBT (Computer-Based Training) Committee (AICC) ( (http://www.aicc.org/http://www.aicc.org/))

Jack HydeJack HydeBill McDonaldBill McDonald

Anne MontgomeryAnne MontgomeryInstitute of Electrical and Electronics Engineers (IEEE)Institute of Electrical and Electronics Engineers (IEEE)

Learning Technology Standards Committee (LTSC) (Learning Technology Standards Committee (LTSC) (http://ltsc.ieee.org/http://ltsc.ieee.org/))Mike Fore Mike Fore

Wayne HodginsWayne HodginsIMS Global Learning Consortium, Inc. IMS Global Learning Consortium, Inc. ((http://www.imsglobal.org/http://www.imsglobal.org/))

Thor Anderson Thor Anderson Steve GriffinSteve GriffinMark NortonMark NortonEd WalkerEd Walker(At Large)(At Large)

Bob AlcornMike Pettit Lenny GreenbergDan Rehak Chris MoffattTom Rhodes Boyd NielsenTyde Bob AlcornMike Pettit Lenny GreenbergDan Rehak Chris MoffattTom Rhodes Boyd NielsenTyde Richards Claude OstynRoger St. Pierre Chantal PaquinKenny YoungRichards Claude OstynRoger St. Pierre Chantal PaquinKenny Young

……and many others.and many others.

Page 4: Run Time E-learning SCORM standard. bookshelf SCORM SCORM_1.2_Overview.doc SCORM_1.2_CAM.doc SCORM_1.2_RunTimeEnv.doc

Run Time EnvironmentRun Time Environment

LMS

utente

Materiale didatticostandard

Cosa comunicare(DATA MODEL)

Come comunicarlo(API)

Page 5: Run Time E-learning SCORM standard. bookshelf SCORM SCORM_1.2_Overview.doc SCORM_1.2_CAM.doc SCORM_1.2_RunTimeEnv.doc

Run Time EnvironmentRun Time EnvironmentLMS

Materiale didatticostandard

Nome utente Stato Lezione Risult. Test …… ……

Nome utente Stato Lezione Risult. Test …… ……

String 128 chrString 128 chrValori:

Percentuale fruiz.Finita

Già iniziataSegnalibro

Valori:Percentuale fruiz.

FinitaGià iniziataSegnalibro

Intero max 100Intero max 100API

DATAMODEL

Page 6: Run Time E-learning SCORM standard. bookshelf SCORM SCORM_1.2_Overview.doc SCORM_1.2_CAM.doc SCORM_1.2_RunTimeEnv.doc

overviewoverview Scopo di SCORM è l’interoperabilità dei Scopo di SCORM è l’interoperabilità dei

materiali didattici su diverse piattaforme materiali didattici su diverse piattaforme ( Learning Management Systems, LMS). ( Learning Management Systems, LMS).

perchè ciò possa avvenire, ci devono perchè ciò possa avvenire, ci devono essereessere un metodo comune per avviare i un metodo comune per avviare i

materiali didattici, materiali didattici, [Launch[Launch]] un metodo comune per comunicare con un metodo comune per comunicare con

la piattaforma la piattaforma [Application Program [Application Program Interface (API)Interface (API)] ] e e

Un linguaggio predefinito che sia la base Un linguaggio predefinito che sia la base delle comunicazioni. delle comunicazioni. [Data Model[Data Model]]

Data modelAPIlaunch

Page 7: Run Time E-learning SCORM standard. bookshelf SCORM SCORM_1.2_Overview.doc SCORM_1.2_CAM.doc SCORM_1.2_RunTimeEnv.doc

Learning Management System (LMS)

Server Side

Client Side

Data ModelActual data sent back and forth between SCO and LMS

API (CommunicationsLink between SCO and LMS)

Launch

JavaScriptJavaScript

Browser

SCO

API Adapter

API Adapter

LMSServerLMS

Server

Asset

Page 8: Run Time E-learning SCORM standard. bookshelf SCORM SCORM_1.2_Overview.doc SCORM_1.2_CAM.doc SCORM_1.2_RunTimeEnv.doc

LaunchLaunch E’ responsabilità dell’LMS, in base alla E’ responsabilità dell’LMS, in base alla

content structurecontent structure, lanciare la giusta risorsa , lanciare la giusta risorsa (Asset o SCO)(Asset o SCO)

In SCORM 1.2 non è definito rigidamente il In SCORM 1.2 non è definito rigidamente il meccanismo gerarchico di lancio: può meccanismo gerarchico di lancio: può essere fornito un elenco di link riferiti ad essere fornito un elenco di link riferiti ad ogni risorsa ogni risorsa ((At this time the SCORM does not address the At this time the SCORM does not address the standardization of sequencing and navigation between learning standardization of sequencing and navigation between learning resources)resources)

SCORM 1.3: simple sequencingSCORM 1.3: simple sequencing

Data modelAPIlaunch

Page 9: Run Time E-learning SCORM standard. bookshelf SCORM SCORM_1.2_Overview.doc SCORM_1.2_CAM.doc SCORM_1.2_RunTimeEnv.doc

Requisiti del lancio: Requisiti del lancio: AssetAsset

È sufficiente che siano lanciati attraverso il È sufficiente che siano lanciati attraverso il protocollo HTTP, protocollo HTTP,

non è richiesta comunicazione con l’LMS non è richiesta comunicazione con l’LMS (no API)(no API)

Data modelAPIlaunch

Page 10: Run Time E-learning SCORM standard. bookshelf SCORM SCORM_1.2_Overview.doc SCORM_1.2_CAM.doc SCORM_1.2_RunTimeEnv.doc

Requisiti del lancio: SCORequisiti del lancio: SCO Può essere lanciato un solo SCO alla voltaPuò essere lanciato un solo SCO alla volta Uno SCO non può lanciare un altro SCOUno SCO non può lanciare un altro SCO Lo SCO può solo essere lanciato dall’LMSLo SCO può solo essere lanciato dall’LMS L’LMS deve lanciare lo SCO in una finestra L’LMS deve lanciare lo SCO in una finestra

o in un frame dell’LMS che deve esporre le o in un frame dell’LMS che deve esporre le API come oggetto DOMAPI come oggetto DOM

E’ responsabilità dello SCO cercare E’ responsabilità dello SCO cercare ricorsivamente l’API Adapter e quindi ricorsivamente l’API Adapter e quindi iniziare la comuniczioneiniziare la comuniczione

Data modelAPIlaunch

Page 11: Run Time E-learning SCORM standard. bookshelf SCORM SCORM_1.2_Overview.doc SCORM_1.2_CAM.doc SCORM_1.2_RunTimeEnv.doc

APIAPI Le API sono un Le API sono un set predefinito di funzioniset predefinito di funzioni

su cui lo SCO può fare affidamentosu cui lo SCO può fare affidamento Un API adapter è un Un API adapter è un insieme di software insieme di software

che espone queste funzioniche espone queste funzioni allo SCO allo SCO Non è responsabilità degli autori di Non è responsabilità degli autori di

materiali sapere come sono costruite le materiali sapere come sono costruite le API, ma solo quella di API, ma solo quella di usarleusarle

Un materiale didattico, attraverso le API, Un materiale didattico, attraverso le API, può può leggereleggere e e scriverescrivere dati dati

La comunicazione La comunicazione è sempre iniziata dallo è sempre iniziata dallo SCOSCO

Data modelAPIlaunch

Page 12: Run Time E-learning SCORM standard. bookshelf SCORM SCORM_1.2_Overview.doc SCORM_1.2_CAM.doc SCORM_1.2_RunTimeEnv.doc

Tipi di funzioniTipi di funzioni Execution StateExecution State

LMSInitialize(“”) LMSInitialize(“”) LMSFinish.LMSFinish.

State ManagementState Management LMSGetLastError()LMSGetLastError() LMSGetErrorString(errornumber)LMSGetErrorString(errornumber) LMSGetDiagnostic(parameterLMSGetDiagnostic(parameter))

Data TransferData Transfer LMSGetValue(data model element)LMSGetValue(data model element) LMSSetValue(data model element, value)LMSSetValue(data model element, value) LMSCommit(""). LMSCommit("").

Data modelAPIlaunch

Page 13: Run Time E-learning SCORM standard. bookshelf SCORM SCORM_1.2_Overview.doc SCORM_1.2_CAM.doc SCORM_1.2_RunTimeEnv.doc

Esempio di funzione: Esempio di funzione: LMSInitializeLMSInitialize

Description: This function indicates to the API Adapter that the SCO is going to communicate with the LMS. It allows the LMS to handle LMS specific initialization issues. It is a requirement of the SCO that it call this function before calling any other API functions.

Syntax: LMSInitialize(parameter)Parameter: "" An empty string must be passed for conformance to this standard. Values

other than "" are reserved for future extensions.Return Value: String representing a boolean."true" result indicates that the LMSInitialize("") was successful "false" result indicates that the LMSInitialize("") was unsuccessfulIf a return value of "false" is returned, then this signifies to the SCO that the LMS is in an

unknown state and that any additional API calls will not be processed by the LMS.Example: var result = LMSInitialize("")if (result == "false"){ // Do some error handling}else{ // continue with the execution of the SCO}The SCO tells the API Adapter that the content wants to establish communication with the

LMS. A typical return value is "true".

Data modelAPIlaunch

Page 14: Run Time E-learning SCORM standard. bookshelf SCORM SCORM_1.2_Overview.doc SCORM_1.2_CAM.doc SCORM_1.2_RunTimeEnv.doc

LMSInitialize(“”)

API: Transizioni di statoAPI: Transizioni di statoData modelAPIlaunch

Noninizializzato

inizializzato

finito

SCOLanciatoDa LMS

Responsabilità dello

SCO: trovare le

API e lanciare

LMSinitialize

Lo SCO può chiamare:

1. LMSGetValue2. LMSSetValue3.

LMSGetLastError4.

LMSGetErrorString

5. LMSGetDiagnositc

6. LMSCommit7. LMSFinish

LMSFinish(“”)

Solo se l’LMS restituisce ‘false’

lo SCO può chiamare:

•LMSGetLastError•LMSGetErrorString•LMSGetDiagnositc

Page 15: Run Time E-learning SCORM standard. bookshelf SCORM SCORM_1.2_Overview.doc SCORM_1.2_CAM.doc SCORM_1.2_RunTimeEnv.doc

EsempiEsempi: error : error code code

usageusage

Code Description Usage

“0” No error No errors encountered. Successful API call.

“101” General Exception Used to indicate general exceptions.

“201” Invalid argument error To be used when there is a call to a SCORM Run-Time Environment data model element that does not exist.To be used when an invalid argument is passed via the API

Ex. LMSGetValue(“cmi.core.zip_code”)“cmi.core.zip_code” is not a valid CMI Data Model element.Ex. LMSInitialize(“init”)The LMSInitialize(“”) expects an empty string argument.

“202” Element cannot have children To be used when LMSGetValue() is called on any data model category or element that does not support _children.

Ex. LMSGetValue(“cmi.student_id._children”)

“203” Element not an array. Cannot have count. To be used when an LMSGetValue() is called on any data model category or element that does not support _count.

Ex. LMSGetValue(“cmi.core._count”)

“301” Not initialized To be used when there is a call to any API function call before LMSInitialize(“”) is called.

Data modelAPIlaunch

(continua…)

Page 16: Run Time E-learning SCORM standard. bookshelf SCORM SCORM_1.2_Overview.doc SCORM_1.2_CAM.doc SCORM_1.2_RunTimeEnv.doc

API adapter: resonsabilità API adapter: resonsabilità dell’LMSdell’LMS

L’ LMS deve lanciare lo SCO L’ LMS deve lanciare lo SCO in una finestra in una finestra o frame che siano dipendenti (figli)o frame che siano dipendenti (figli) della della finestra dell’ LMS che contiene l’API finestra dell’ LMS che contiene l’API Adapter.Adapter.

L’API Adapter L’API Adapter deve essere fornitodeve essere fornito dall’ dall’ LMS.LMS.

L’unico meccanismo di interazione L’unico meccanismo di interazione supportato è attraverso chiamate supportato è attraverso chiamate ECMAScript (ECMAScript (JavaScriptJavaScript).).

L’ API Adapter deve essere disponibile L’ API Adapter deve essere disponibile tramite tramite oggetto DOM con nome “API”.oggetto DOM con nome “API”.

Data modelAPIlaunch

Page 17: Run Time E-learning SCORM standard. bookshelf SCORM SCORM_1.2_Overview.doc SCORM_1.2_CAM.doc SCORM_1.2_RunTimeEnv.doc

API adapter: resonsabilità API adapter: resonsabilità dello SCOdello SCO

Cercare le APICercare le API Chiamare, al minimo, le funzioni Chiamare, al minimo, le funzioni

LMSinitialize() e LMSfinish()LMSinitialize() e LMSfinish()

Data modelAPIlaunch

Page 18: Run Time E-learning SCORM standard. bookshelf SCORM SCORM_1.2_Overview.doc SCORM_1.2_CAM.doc SCORM_1.2_RunTimeEnv.doc

Data ModelData Model Lo scopo è fornire a differenti SCO la Lo scopo è fornire a differenti SCO la

possibilità di possibilità di comunicare in modo comunecomunicare in modo comune verso le piattaforme (es.: punteggio verso le piattaforme (es.: punteggio ottenuto)ottenuto)

E’ E’ espandibileespandibile: in futuro verranno inseriti : in futuro verranno inseriti nuovi valorinuovi valori

Si basa su Si basa su AICC CMI Data ModelAICC CMI Data Model (ridotto) (ridotto)

Data modelAPIlaunch

Page 19: Run Time E-learning SCORM standard. bookshelf SCORM SCORM_1.2_Overview.doc SCORM_1.2_CAM.doc SCORM_1.2_RunTimeEnv.doc

Data Model: regole per i Data Model: regole per i nominomi

La prima parte del nome La prima parte del nome indica il modello indica il modello di riferimentodi riferimento (CMI nel nostro caso) (CMI nel nostro caso) Questo permette future implementazioniQuesto permette future implementazioni

Reserved keywordReserved keyword Precedute da _underscorePrecedute da _underscore _version, _children, _count_version, _children, _count

Tutte le Tutte le matrici sono a partire da 0matrici sono a partire da 0 Tutti i nomi sono Tutti i nomi sono case sensitivecase sensitive Ogni SCO ha accesso Ogni SCO ha accesso solo ai propri datisolo ai propri dati, ,

non a quelli di altri SCOnon a quelli di altri SCO

Data modelAPIlaunch

Page 20: Run Time E-learning SCORM standard. bookshelf SCORM SCORM_1.2_Overview.doc SCORM_1.2_CAM.doc SCORM_1.2_RunTimeEnv.doc

Data Model: elementiData Model: elementi

Alcuni obbligatori, altri opzionaliAlcuni obbligatori, altri opzionali Tutti gli elementi obbligatori devono essere Tutti gli elementi obbligatori devono essere

supportati dall’LMSsupportati dall’LMS Tutti gli elementi sono opzionali per gli SCOTutti gli elementi sono opzionali per gli SCO

Lo SCO è obbligato solo a chiamare Lo SCO è obbligato solo a chiamare LMSInitialize() e LMSfinish(), non sono obbligati LMSInitialize() e LMSfinish(), non sono obbligati a leggere (a leggere (LMSGetValue()LMSGetValue()) o scrivere ) o scrivere ((LMSSetValue()LMSSetValue()) dati) dati

Nota di SCORM: gli SCO possono essere piccoli (very, very small) e non Nota di SCORM: gli SCO possono essere piccoli (very, very small) e non essere progettati per comunicare nel dettaglio. Tuttavia, se devono essere progettati per comunicare nel dettaglio. Tuttavia, se devono comunicare, devono poterlo fare in qualsiasi LMS allo stesso modocomunicare, devono poterlo fare in qualsiasi LMS allo stesso modo

Data modelAPIlaunch

Page 21: Run Time E-learning SCORM standard. bookshelf SCORM SCORM_1.2_Overview.doc SCORM_1.2_CAM.doc SCORM_1.2_RunTimeEnv.doc

cmi.core: obbligatori per cmi.core: obbligatori per ogni LMSogni LMS

cmi.core_children: per determinare quali elementi del core sono supportati dalla cmi.core_children: per determinare quali elementi del core sono supportati dalla piattaformapiattaforma

cmi.core.student_id: per identificare univocamente uno studentecmi.core.student_id: per identificare univocamente uno studente cmi.core.student_name: student official namecmi.core.student_name: student official name cmi.core.lesson_location: identifica l’ultima posizione dello studentecmi.core.lesson_location: identifica l’ultima posizione dello studente cmi.core.credit: indica se lo studente sta usando lo SCO per avere crediti (sì/no)cmi.core.credit: indica se lo studente sta usando lo SCO per avere crediti (sì/no) cmi.core.lesson_status: cmi.core.lesson_status: passed, completed, failed, incomplete, browsed, not passed, completed, failed, incomplete, browsed, not

attemptedattempted cmi.core.entry: indica se lo studente è gia stato in questo SCO (cmi.core.entry: indica se lo studente è gia stato in questo SCO (ab initio, resumeab initio, resume)) cmi.core.score._children:per determinare quale score children è supportato dall’LMScmi.core.score._children:per determinare quale score children è supportato dall’LMS cmi.core.score.raw: a 0 al primo accesso, poi viene incrementatocmi.core.score.raw: a 0 al primo accesso, poi viene incrementato cmi.core.score.max: il massimo punteggio ottenibilecmi.core.score.max: il massimo punteggio ottenibile cmi.core.score.min: il minimo puntggio ottenibilecmi.core.score.min: il minimo puntggio ottenibile cmi.core.total_time: tempo totale passato dallo studente sulla lezionecmi.core.total_time: tempo totale passato dallo studente sulla lezione cmi.core.lesson_mode: indica tre modalità di utilizzo al lancio: cmi.core.lesson_mode: indica tre modalità di utilizzo al lancio: browse, normal, reviewbrowse, normal, review cmi.core.exit: indica la ragione per cui lo studente è uscito dallo SCO (cmi.core.exit: indica la ragione per cui lo studente è uscito dallo SCO (timeout, timeout,

suspend, logoutsuspend, logout)) cmi.core.session_time: tempo passato dallo studente nella corrente sessionecmi.core.session_time: tempo passato dallo studente nella corrente sessione

Data modelAPIlaunch

Page 22: Run Time E-learning SCORM standard. bookshelf SCORM SCORM_1.2_Overview.doc SCORM_1.2_CAM.doc SCORM_1.2_RunTimeEnv.doc

SCO

op

zion

ale

LMS

Scelta dello SCO da lanciare, in base a:• Richiesta dell’utente• AutomaticaSi usano le informazioni di content structure all’interno del content aggregation

Analisi di cmi.core.lesson_mode:• è prevista la scelta da parte dell’utente?• opportuni cambiamenti a cmi.core.lesson_modeInizializzazione di cmi.core.entry

Lancio dello SCO

Messa a disposizione delle API:• LMSInitialize• LMSGetValue• LMSSetValue• LMSGetLastError• LMSGetErrorString• LMSGetDiagnositc• LMSCommit• LMSFinish

Settaggio mastery score

Ricerca delle API

Chiamata LMSInitialize()

Chiamata LMSFinish()

Chiamata LMSLaunch_data(), se supportata dallo SCO

Chiamata LMSGetValue(cmi.core.entry) per riportare lo studente nell’ultima posizione

Chiamata LMSGetValue(cmi.core.lesson_mode) per identificare la modalità d’uso della lezione

Chiamata LMSSetValue() con qualsiasi dato si voglia registrare

Chiamata LMSCommit()

APIData Model

Page 23: Run Time E-learning SCORM standard. bookshelf SCORM SCORM_1.2_Overview.doc SCORM_1.2_CAM.doc SCORM_1.2_RunTimeEnv.doc