Sunday, June 1, 2008

LETSI and SCORM 2.0

LETSI, Learning Education Training Systems Interoperability, the international, nonprofit federation dedicated to improving individual and organizational learning, has taken on the task of developing the next generation of SCORM, the Sharable Content Object Reference Model. As part of this initiative, LETSI is soliciting White Papers from all stakeholders interested in shaping the future direction of SCORM and the implementation of learning systems technology.

The official press release can be found here:
http://www.prweb.com/releases/2008/06/prweb988494.htm

LETSI's White Paper Solicitation is available here:
http://www.letsi.org/letsi/download/attachments/4751660/LETSI+White+Paper+Solicitation+on+SCORM+31May08+FINAL.pdf

For more information about the white paper solicitation and the SCORM 2.0 Workshop, visit:
http://www.letsi.org/SCORM2/

Saturday, November 24, 2007

How do I make my existing e-learning content SCORM conformant?

For many content developers trying to make the jump to SCORM, the first question is often “How do I make my existing e-learning content SCORM conformant?”

Content is generally compatible with SCORM if:

  • It can be delivered via a web-browser
  • It can be self-contained (i.e. packaged with all dependencies wholly in a ZIP file)
  • It does NOT depend on server-side scripting languages (such as JSP, ASP, and PHP)
  • It does NOT depend on external files or external URLs
  • It does NOT depend on downloadable components that must be installed by an administrator

General steps for making e-learning content SCORM conformant:

  • Ensure content meets SCORM compatibility requirements (above)
  • Organize all content files (including dependencies) into a single directory structure
  • Define and describe the content using an XML manifest file as described by SCORM
  • Package all the content and necessary files into a ZIP file

A product like Trident, from Redbird Software, can handle the organization, definition, and packaging of the content. Once it is SCORM conformant the content can be deployed to and delivered via any SCORM conformant learning management system (LMS).

Wednesday, August 15, 2007

Simple Sequencing?

One of the primary changes of SCORM from version 1.2 to version 1.3 (2004) was the introduction of the Sequencing Definition Model (described in the SCORM Sequencing and Navigation book).

The SCORM Sequencing Definition Model is a "declarative information model" derived from the IMS (www.imsglobal.org) Simple Sequencing (SS) specification. The specification is labeled "simple" because it defines a limited number of widely used sequencing behaviors, not because the specification is itself simple.

The SCORM Sequencing model defines how the IMS Simple Sequencing specification is applied and extended in a SCORM environment. This includes how SCORM content packages will define their sequencing (in the manifest), and how a SCORM-conformant LMS must process sequencing information at run-time.

Why do I need Sequencing?

As a SCORM developer, why do I care about sequencing? Essentially, if you want to define a learning "experience" for your SCORM content, you need to define sequencing.

SCORM Sequencing is the answer to the question: "How will a learner experience my learning content?"

Learn more about SCORM Sequencing at Redbird DevNet, the SCORM Developer Network, by clicking here...

Saturday, July 28, 2007

Content Organizations: Activities and Trees

A SCORM content package can define one or more Organizations that describe how resources are logically organized into a learning experience. An organization is defined as a hierarchical tree of items or activities.

Each item in the hierarchy represents an instructionally relevant unit of learning. Items can be nested to any arbitrary depth and have learning taxonomy labels applied to them. For instance: Course, Module, Lesson, Chapter.

Example organization:

  • Course
    • Module A
      • Lesson A1
      • Lesson A2
    • Module B
      • Lesson B1
      • Lesson B2
        • Chapter B2a
        • Chapter B2b

A content package organization definition should not be confused with the physical structure of the content package files and resources. The two are independent. The structure of content objects are defined by resources and the structure of learning activities are defined by organizations.

Activity Trees

An Activity Tree is the run-time representation of learning activities derived from a organization. Activity Trees determine how the content is experienced by the learner as learning activities.

A learning activity is the context, defined by the organization, in which a learner experiences a learning object.

A learning object is the actual resource to be launched, such as a SCO (Shareable Content Object), as the learning activity.

An Activity that has no children is called a leaf. Only leaf activities are actually delivered to a learner. And because they are delivered to a learner, each will reference a single launchable resource (a web-deliverable learning unit).

An activity that is not a leaf is the parent of a cluster. A cluster is a parent activities and all of its sub-activities. Activities can be nested within other activities, with no limit on depth.

Each activity has a title that is used when displaying the activity, for instance, in a table of contents.
Future topic: Activity trees for sequencing...

Learn more about SCORM Content Organizations and Activity Trees at Redbird DevNet, the SCORM Developer Network, by clicking here...

Saturday, July 21, 2007

SCORM Sequencing and Navigation

A learner experiencing SCORM content does not necessarily exercise complete control over which learning object they experience and when. Content developers determine how much control is given to the learner based on organization and sequencing information defined in the content package's manifest.

When accessing SCORM content, a learner will experience only one learning object at a time. SCORM Sequencing and Navigation define the ability of a learner to navigate from one learning object to another and the sequence in which learning objects may be experienced by a learner.

SCORM Sequencing defines the behaviors and data model used by the SCORM run-time environment to determine how a content package will be delivered as a learning experience. It defines the functionality that a SCORM-conformant LMS must implement to process sequencing information at run-time based on learner interaction with content objects.

SCORM Navigation defines how learning and system initiated navigation events are triggered and processed, resulting in the identification of learning activity for delivery. Navigation is the process by which a learner and an LMS cooperate to identify navigation requests to realize a learning experience.

Learn more about SCORM Sequencing and Navigation at Redbird DevNet, the SCORM Developer Network, by clicking here...

Wednesday, July 11, 2007

SCORM Run-Time API

SCORM's Run-Time API (application programming interface) is the communication mechanism used by a SCO (shareable content object) and an LMS (learning management system). The run-time API communicates state between a content object and the LMS (e.g., inititlized, terminated, and/or in an error condition) and is used for retrieving and storing data (e.g., score, time limits, etc.).

RTE/LMS implementations are responsible for providing an API instance that SCOs can use when launched for a learner. The API instance is exposed as an object in the Document Object Model (DOM), typically as a JavaScript variable.

Only launched SCOs (not Assets) make use of the RTE API. The LMS must launch the SCO in a browser window that is a dependent window (i.e. "popup" window) or child frame of the browser window that exposes the API instance.

There are eight run-time API functions provided by the SCORM run-time environment:

  • Initialize("")
  • Terminate("")
  • GetValue(parameter)
  • SetValue(parameter1, parameter2)
  • Commit("")
  • GetLastError()
  • GetErrorString(parameter)
  • GetDiagnostic(parameter)

Learn more about SCORM's Run-Time API at Redbird DevNet, the SCORM Developer Network, by clicking here...

Friday, July 6, 2007

SCORM Shareable Content Objects (SCOs)

A Shareable Content Object (SCO) is a launchable learning object (resource) that communicates with the run-time environment that launched it. A SCO must be designed so that it can be launched in a standalone web window, or in a frame in a HTML frameset.

A SCO is special because when launched for a learner, in the learner's web-browser, it will communicate information back to the LMS that launched it, often a remote server. This communication allows the LMS to track information pertaining the learner's experience.

Typical SCO Lifecycle:

  1. SCO is launched by a SCORM Run-Time Environment (RTE) (often an LMS)
  2. SCO finds RTE provided API
  3. SCO begins communication with the RTE API (via a call to Initialize())
  4. Learner begins interaction with the SCO
  5. SCO sends and retreives data via the RTE API (via calls to Get/SetValue())
  6. Learner ends interaction with the SCO
  7. SCO ends communication with the RTE API (via a call to Terminate())

Learn more about Shareable Content Objects (SCOs) at Redbird DevNet, the SCORM Developer Network, by clicking here...

Tuesday, July 3, 2007

SCORM Manifest Files

Every SCORM content package contains an XML manifest file that describes the package and its contents. The name of the manifest file is always imsmanifest.xml and it must appear in the root of the content package.

The manifest file is a structured inventory of the content of the package. It defines the physical files within the content package and how they are combined to form learning objects (resources). The manifest may also describe how learning objects are organized into learning experiences (organizations).

Mandatory Manifest File contents:

  • Unique identifier
  • Minimal metadata describing the package and its SCORM version
  • One or more resource definitions listing all files required to launch and deliver each resource

Optional Manifest File contents:

  • One or more organizations of learning activities
  • Sequencing information for organizations
  • More metadata for the content package, resources, and organizations

Example imsmanifest.xml file:

<?xml version="1.0" standalone="no" ?>

<!-- Created with Trident, the SCORM IDE - http://www.scormsoft.com -->
<manifest identifier="MANIFEST_IDENTIFIER" version="1.0"
xmlns="http://www.imsglobal.org/xsd/imscp_v1p1"
xmlns:adlcp="http://www.adlnet.org/xsd/adlcp_v1p3"
xmlns:adlnav="http://www.adlnet.org/xsd/adlnav_v1p3"
xmlns:adlseq="http://www.adlnet.org/xsd/adlseq_v1p3"
xmlns:imsss="http://www.imsglobal.org/xsd/imsss"
xmlns:lom="http://ltsc.ieee.org/xsd/LOM"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.imsglobal.org/xsd/imscp_v1p1 imscp_v1p1.xsd
http://www.adlnet.org/xsd/adlcp_v1p3 adlcp_v1p3.xsd
http://www.adlnet.org/xsd/adlnav_v1p3 adlnav_v1p3.xsd
http://www.adlnet.org/xsd/adlseq_v1p3 adlseq_v1p3.xsd
http://www.imsglobal.org/xsd/imsss imsss_v1p0.xsd
http://ltsc.ieee.org/xsd/LOM lom.xsd">

<metadata>
<schema>ADL SCORM</schema>
<schemaversion>CAM 1.3</schemaversion>
</metadata>

<organizations default="org1">
<organization identifier="org1">
<item identifier="ACT-001" identifierref="RES-001">
<title>Activity 1</title>
</item>
</organization>
</organizations>

<resources>
<resource id="RES-001" type="webcontent" adlcp:scormType="sco" href="sco1.html">
<file href="sco1.html"/>
<file href="apiWrapper.js"/>
</resource>
</resources>

</manifest>

Learn more about SCORM Manifest files at Redbird DevNet, the SCORM Developer Network, by clicking here...

Friday, June 29, 2007

SCORM Content Packages

A SCORM content package is a self-contained ZIP file containing certain contents defined by the SCORM standard. The file is known as a Package Interchange File (PIF) and it contains all files needed to deliver the content package via a SCORM run-time environment and/or learning management system (LMS).

Mandatory Content Package contents:

  • XML manifest file (imsmanifest.xml)
  • All schema/definition (.xsd and .dtd) files referenced by the manifest file
  • All resource files used by the content package and its learning activities
All the files that make up a content package must fit within the same directory tree structure within the PIF file.

Example content package:

Example Content Package

Your package may group everything into a single directory, or it may use sub-directories within the root (e.g. one directory for each SCO). All files used by the content package must be within the content package. References to external files or absolute URLs are not allowed.

Every SCORM content package contains a manifest file in its root describing the contents and organization of the package. (Future topic: Manifest Files)

Learn more about SCORM Content Packages from Redbird DevNet, the SCORM Developer Network, by clicking here...

Tuesday, June 26, 2007

SCORM Resources: Assets and SCOs

In SCORM, a Content Object is a web-deliverable learning unit. At its most basic a content object is just an HTML page or document that can be viewed with a web-browser. A content object can use all same technologies a web-page can use (Flash, JavaScript, frames, images, etc). However, resources cannot be pages that require a server-side engine to process, such as ASP, PHP, or JSP pages.

Content objects are defined in a content package manifest file as a Resource, along with all the files it depends on. A Resource definition provides information about your learning object and how it may be used by a run-time environment.

Resources come in two flavors: Assets and Shareable Content Objects (SCOs).

An asset is a simple resource, such as a static HTML page or a PDF document, or collection of files, such as images and a style-sheet, which does not make use of the run-time API defined by SCORM. Therefore an asset does not communicate with the run-time environment delivering it.

A shareable content object (SCO) is a resource that communicates with the delivering run-time environment via the SCORM run-time API.

Learn more about SCORM Resources at Redbird DevNet, the SCORM Developer Network, by clicking here...