September 2021 was a big month of progress in the learning standards ecosystem, specifically for cmi5. With the release of cmi5 CATAPULT, LMS vendors and content authors alike are now equipped with the most ambitious testing suite to date!

What’s cmi5?

For the last decade, the vast majority of LMS platforms have been working with courseware that’s published in one of two standards: SCORM or xAPI. SCORM is a well-known quantity at this point, a packaging solution for launching content in an LMS and tracking some common properties about learning modules that’s somewhat inflexible (primarily the “Big 4” of completion status, success status, score, and time, as well as interactions) and with no support for anything happening outside a browser window or an LMS. xAPI has been gaining traction as a way to collect far more in-depth data in highly flexible ways on newer technologies, such as simulations and VR, but has a very weak story around how the LMS is supposed to “launch” the course, that is, to make it visible to the learner. Unlike SCORM, xAPI says nothing to answer the common questions about learners taking courseware. Potential solutions cropped up for these limitations, but their adoption was sporadic and not generally standardized.

Enter cmi5, a specification that combines the best of the SCORM and xAPI worlds to modernize training.

cmi5 gives us:

  1. A strongly defined way to launch, including an authorization step that confirms an already authenticated user is the one launching the course. This includes launches for content that doesn’t live in a browser context, so that a much wider variety of learning activities can be tracked the same way as traditional learning.
  2. As an xAPI Profile, a standard way to capture the “Big 4” values and others, so all LMSs will be able to provide the same common reporting.
  3. Also as an xAPI Profile, a way to define a learner’s “session,” which represents the valid period in which data about the learner can be captured and fully capitalizes on xAPI by indicating all the “allowed” statements that go with the session.

Why should I care about cmi5?

In short, because making everything interoperable and increasing data collection capabilities makes everyone more successful.

If you’re an instructional designer, SCORM wasn’t perfect, but it generally worked the same on most systems and gave you the basic tracking data all customers expected. However, as a JavaScript-based standard, courses have broken over the years in various ways as browsers have made changes for security, modernization, or other reasons. With cmi5, there’s a lot less dependency on browsers always behaving the same way and flexibility to bring your training to lots of other devices and systems with a better expectation of long-term sustainability.

If you’re an LMS developer, cmi5’s launch model easily ensures that the content being launched is correctly authorized for the user launching it. Also with full remote content support, the LMS and the content storage can be maintained independently without complicated hosting configurations. Analytics and reporting on the top-level elements require much less work to provide a consistent experience with cmi5 over raw xAPI.

And now with cmi5 CATAPULT, there’s even more to like about cmi5!

What’s cmi5 CATAPULT?

As a new specification solving these challenges, cmi5 is a great step. However, we’re left with an adoption problem. Content authors can’t use a new publishing standard if their LMS platform doesn’t support it. LMS vendors aren’t going to implement the standard if content authors aren’t clamoring for it. In between, neither group is certain that once they start using it, that their work will communicate properly with all systems that claim to be compatible with the new standard.

The Advanced Distributed Learning (ADL) Initiative recognized these concerns and contracted the development of cmi5 CATAPULT, a set of freely available open-source tools to accelerate this process. cmi5 CATAPULT attempts to address these problems and more by providing cmi5 conformance testing tools and prototype software to help get you started. The cmi5 CATAPULT project contains four technical pieces:

  1. cmi5 LMS Test Suite (LTS). Allows LMS vendors to validate that their products can correctly import, launch, and track cmi5 content packages. Once tested, vendors can show the JUnit XML file to prove that their system is cmi5 conformant.
  2. cmi5 Content Test Suite (CTS). Gives content authors a way to validate that their content packages, when published in cmi5, will play correctly on any cmi5 conformant LMS. Once the learning activity has passed the CTS, authors can provide test reports for all expected use case scenarios, such as completion, scored activities, etc.
  3. cmi5 Player Prototype. Provides a web service that a platform developer would integrate into an LMS application to play cmi5 courses. Used in conjunction with an LRS, the Prototype handles the validation, import, launch, and other required pieces of a full cmi5 experience.
  4. Course templates. Helps accelerate migration of legacy content with example content packages that model how instructional developers can build quality cmi5 content solutions using cmi5 best practices.

Introduction to GeologyFigure 1. A view of the CATAPULT CTS. An AU test session, showing the content and an event log.

Each of these components comes with a myriad of documentation describing installation and standard usage. For deeper use cases, such as Player Prototype development, there’s also integration documentation describing the requirements and techniques needed to integrate these pieces into a larger ecosystem.

Whether your role is responsible for acquiring content or building new content, the CATAPULT CTS provides a standardized solution that ensures that the content conforms to the cmi5 specification. For instructional designers, the CATAPULT tools can help you confidently update your content library to work with modern platforms and to capture more learner data during sessions. Similarly for professionals looking to acquire or build conformant systems, the LTS gives a reliable, repeatable and ongoing solution that ensures the system is cmi5 conformant. Developers responsible for implementing standards, the CTS, LTS and Player Prototype all provide ways to verify your implementations in an ongoing fashion and an accurate operations model when making implementation decisions about each technology component.

Where do I get started?

If you’re the sort to jump right in and get your hands dirty, you’re going to want to go to the source, literally. The GitHub repository has the applications, course examples, user guides, installation, and deployment instructions. For content teams, consider starting with the Course Examples and the cmi5 Content Test Suite README, as these are the most relevant assets to getting a basic understanding of the mechanics of cmi5 and getting a version of the CTS running in your own environment. LMS developers should start with the LMS Test Suite README and the Player User Guide to get their own platforms running and tested as cmi5 conformant.

If you like to do some more general reading first, the cmi5 Best Practices Guide is probably your best bet. While the guide is quite comprehensive, it’s organized such that you can find the sections closest to your job role and start there without reading other chapters first and still get most of the advantage. It covers both general cmi5 topics and CATAPULT-specific operations.

Beyond all this, there’s the cmi5 Working Group where standards experts and novices alike get together weekly and drive new ideas forward. All are welcome.

Learn more

For those attending DevLearn, we’ll be talking more about all of these things there at our Mind the Gap: Bridging the SCORM and xAPI Divide with cmi5 presentation, a primer to SCORM, xAPI, cmi5, and cmi5 CATAPULT all in one!