SCORM Explained 201: A deeper dive into SCORM
Here we go into the more technical details about how SCORM works, the versions of SCORM and how SCORM compares to other eLearning standards.Questions? Ask us anything
What is SCORM?
SCORM defines a specific way of constructing Learning Management Systems (LMSs) and training content so that they work well with other SCORM conformant systems.
What does SCORM stand for?
SCORM stands for “Sharable Content Object Reference Model.”
“Sharable Content Object” indicates that SCORM is all about creating units of online training material that can be shared across systems. SCORM defines how to create “sharable content objects” or “SCOs” that can be reused in different systems and contexts.
“Reference Model” reflects the fact that SCORM isn’t actually a standard. ADL didn’t write SCORM from the ground up. Instead, they noticed that the industry already had many standards that solved part of the problem. SCORM simply references these existing standards and tells developers how to properly use them together.
What’s a SCO?
A Sharable Content Object (SCO) is the most granular piece of training in a SCORM world. Some would call it a module, a chapter, a page… the point is that it varies wildly. A SCORM purist would tell you that it should be the smallest piece of content that is both reusable and independent. In terms of how the LMS treats it, this is the item shown separately in the table of contents and tracked separately from other items. It can contain its own bookmark, score and completion status.
How does SCORM work?
Basically, the different versions of SCORM all govern the same two things: packaging content and exchanging data at Run-Time.
- Packaging content or the content aggregation model (CAM) determines how a piece of content should be delivered in a physical sense. At the core of SCORM packaging is a document titled the “imsmanifest”. This file contains every piece of information required by the LMS to import and launch content without human intervention. This manifest file contains XML that describes the structure of a course both from a learner’s perspective and from a physical file system perspective. Questions like, “Which document should be launched?” and “What is the name of this content?” are answered by this document.
- Run-Time communication, or data exchange, specifies how the content ”talks” to the LMS while the content is actually playing. This is the part of the equation we describe as delivery and tracking. There are two major components to this communication. First, the content has to “find” the LMS. Once the content has found it, it can then communicate through a series of “get” and “set” calls and an associated vocabulary. Conceptually, these are things like “request the learner’s name” and “tell the LMS that the learner scored 95% on this test.” Based on the available SCORM vocabulary, many rich interactive experiences can be communicated to the LMS.
Why use SCORM?
SCORM is a really powerful tool for anyone involved in online, computer based training, distance learning or eLearning. Content can be created one time and used in many different systems and situations without modification. This plug-and-play functionality can be powerful within an organization but even more so across organizations. This allows you to reach a larger audience without spending extra time and money modifying for each system.
SCORM is widely adopted by some huge organizations. It has the critical momentum and is the de facto industry standard. The US Department of Defense in DoDI 1322.26 has specified that all of its content must be delivered via SCORM or the Experience API (xAPI). All of it. Industry is following suit, and the standard appears in a vast majority of RFPs to procure both training content and Learning Management Systems.
Which version of SCORM is relevant?
The answer is all of them. The primary goal of adopting SCORM is to create an interoperable system that will work well with other systems. Support for all of the SCORM versions and AICC is essential to fulfilling that goal. To date, there are three released versions of SCORM, each building on top of the prior one.
- SCORM 1.1 was essentially the first pass, and never gained wide acceptance. Some products still support it, but it is not widely adopted.
- SCORM 1.2 followed on 1.1, and solved many of 1.1’s problems. It was and is the widely adopted version. Every major LMS continues to support it and the majority of content vendors still produce content that meets the 1.2 specification.
- SCORM 2004 (formerly known as SCORM 1.3) is the most recent release. It extends and formalizes the packaging and Run-Time portions of the 1.2 standard, but its key addition is the sequencing and navigation (S&N) specification. S&N allows the content vendor to specify both the behavior within the SCO and the behavior between the SCOs. This allows for substantially richer content interactions and huge increases in the reuse of SCOs. Adoption has been slow, to this point, but the number of LMS’s and content vendors supporting SCORM 2004 is increasing greatly.
For more detail on the versions of SCORM, including the various flavors of SCORM 2004, visit the eLearning Standards Roadmap.
How does SCORM relate to AICC, xAPI and cmi5?
SCORM is a reference model, which means that it is built on top of existing specifications. From the beginning, SCORM has been described as a “best of breed” solution, culling the best pieces of prior specifications.
AICC, a standard from the aviation industry, was used as a basis for the Run-Time communication portion of the SCORM specification. Conforming to one standard does not mean that you automatically conform to the other.
xAPI, also referred to as the Experience API or Tin Can API, is often considered the “next generation of SCORM” and is newest eLearning standard. At Rustici Software, we worked closely with ADL on Project Tin Can (the beginnings of xAPI), imparting our decade of SCORM knowledge to make sure that xAPI is a huge leap forward for the eLearning community. xAPI is vastly different than SCORM and provides a more flexible way to track a wide variety of learning, including activities that occur outside of the LMS. You can learn more about xAPI here.
cmi5 is an xAPI profile used when xAPI activities are launched from an LMS. cmi5 defines the necessary components for system interoperability such as packaging, launch, credential handshake and consistent information model. You can learn more about cmi5 here.
How can I make my system or content become SCORM conformant?
Check out the resources and articles on this site. They provide a good introduction to the technical nuts and bolts of SCORM conformance.
Achieving basic SCORM conformance for your content can often be accomplished by a talented software developer in a reasonable time frame. The hard part is creating content that is not only conformant, but also broadly compatible. Many LMS implementations have slightly different interpretations of the specifications and other quirks that can make seamless interoperability a challenge. If you plan to distribute your content broadly, or simply want to avoid the hassle of learning the intricacies of SCORM, check out our SCORM Driver (or Rustici Driver). It is by far the easiest way to create widely compatible SCORM conformant content.
LMS conformance is a much more involved project. The effort required to fully implement all of the specifications properly is usually measured in man-years and broad compatibility is even more elusive than it is on the content side. SCORM intentionally places the “burden of complexity” on the LMS. If you need to make your LMS SCORM conformant, you should strongly consider using Rustici Engine. It is guaranteed to make your life a lot easier!