Implementing cmi5 in our bespoke learning management system - Part 1 - Introduction
We have recently been enhancing the xAPI (formerly tin can API) content player in the underlying code of our bespoke learning management system (LMS) by implementing cmi5. In a series of blog posts we will compare the cmi5 way of doing things with the native xAPI mechanisms and share some of our experiences of the implementation.
Part 1. cmi5 - some background
Over the years there have been a number of protocols designed to allow for communication between e-learning content and the learning management system which hosts that content. Such protocols need to provide clear guidelines and mechanisms which address:
- how content is "packaged" so it can be imported correctly into the LMS
- how content is launched so that the content knows how to communicate with the LMS
- what data is to be exchanged between the content and the LMS and any meaning special it might have
- how the content informs the LMS that the learner has finished with the content - perhaps passed or failed if the contains an assessment
An early attempt at such a protocol was AICC, which came out of computer based training (CBT) in the aviation industry. AICC was superseded by SCORM, which despite its age is still the de-facto industry standard. A more recent attempt to crack the problem is xAPI (formerly known as tin can API). xAPI is a very general communication mechanism and despite a short draft specification outlining some basic rules for integration with an LMS there was much that was not clear. The lack of clarity on LMS integration has hampered the adoption of xAPI. That may now change with the emergence of cmi5. cmi5 is an extension to xAPI that specifically addresses the issue of integration of the e-learning content with the LMS.
Next time we will look at cmi5 content packaging.