SCORM and e-learning Standards

For the past year I’ve been hard at work on a document called the Standards for development of e-learning. These are intended to be given to our preferred e-learning Suppliers, or to any e-learning Supplier for that matter, and allow them to create a piece of e-learning which will not only work on our LMS but also in our various environments throughout our diverse group of learners.

It’s been a lengthy process and has involved me understanding a lot of technical and business issues on our company and the Suppliers side. Some of this has included SCORM (Shareable Content Object Reusable Model) and DDA (Disability Discrimination Act), two hugely complex issues.


Have a look at the index at the end of the article, it has some areas removed so as not to give away too many trade secrets, or rather areas that I could market myself with.

One of the hardest challenges over the past year has undoubtedly been that of SCORM. For those of you who don’t know what SCORM is, what are you doing reading this? You must be really bored or just plain nodding off at your desk during the afternoon and are trying to do anything but work.

SCORM is the standard that ensures pieces of content can interact with any LMS correctly, so that if you decide to change to a new LMS (god forbid I hear many of you cry) then your content should work perfectly fine.

That’s the idea anyway. Reality is, as always, totally different. What you’ll hear all LMS vendors scream in their defence immediately is the phrase “but SCORM is so wooly, there are so many ways to interp…” Stop, and shut up now. This is something I’ve learned about SCORM of late.

There are two parts of SCORM, the mandatory calls or elements and the optional calls. The mandatory calls are those that start the LMS interaction, record how the learner exits the content, indicates the exit of the content, etc. These calls are definitely required by each piece of SCORM content.

Examples of the optional calls are those that enable the content to handle questions, called interactions, or to mark key learning points, called objectives. There are many more, however you can see the distinction.

For each call ADL (Advanced Distance Learning ??) have laid out exactly how the call should be written, when it can be used to call or set a value, what the format is, they’ve even detailed how to manage errors. It’s really quite painfully clear.

So we come to the point to ask where is the woolliness? There should only be one issue, how many of the optional calls are they handling? Actually what you find is that they also handle the calls differently, and this goes against the SCORM standards and gives rise to another phrase that LMS vendors love to use…

“Our LMS is SCORM…(conformant\compliant\certified*)” * Delete as applicable.

This infuriates me as this is where the woolliness comes in, and it’s purely to make you think that they can handle everything about the SCORM standard without letting you in on the truth – they don’t.

I can’t tell you what all the phrases mean, as they are dependent on the context they are being used in. However, certified certainly implies that ADL have certified that their system works with SCORM.

The question to ask is “does your LMS handle all the mandatory and optional elements of SCORM exactly as per the ADL SCORM Standards”, and make sure you get your version in there, and add it to the signed contract.

The big thing you should think about with SCORM, if you are a company looking to implement a SCORM LMS, is do you really need it? Think about that carefully. You’ll find that LMS systems can handle many different standards, AICC, SCORM, and even packages that are neither of these. The LMS itself will have some form of basic tracking to show started, in progress or completed whether the item is in a standard form or not

The reason for implementing a standard that is so complex as SCORM is to actually use the standard to its potential, and for the benefit of the MI, Learner and their Management. This takes the form of the scoring, pass status, objectives, interactions, bookmarking, etc. These things are actually of benefit, and to get there requires a lot of work.

Some companies have merely slapped on the basic of SCORM requirements to make their content SCORM and drop it into their newly purchased LMS for no other reason than they’ve been told it’s a good idea. You really should think about the benefits and make SCORM, and your LMS, work for you.

I spent a long time investigating and understanding SCORM so that we could identify if each element or call was worthwhile for our content and learners needs. Then transferring it into a much more understandable and readable format. As you can see from the index of the Standards I ended up with the sections from 6.10 onwards discussing the actual implementation of such things as interactions, tracking, objectives, etc in a prose style rather than lists of tables with technical requirements of each call, although that does follow for reference.

I took our learning environment and requirements, matched them with the SCORM calls, and wrote a guide on how to implement our requirements against the appropriate calls. Long and slow work, but ultimately rewarding. We now have a complete guide for how to create SCORM content included in the complete e-learning development Standards.

In summary, be careful. Find out exactly what the LMS vendor is promising, find out what matches your requirements rather than just doing it because your content provider or LMS vendor says so, and take the time to make SCORM (or whatever standard) and the LMS match your learning requirements, not the other way round. Fitting learning to technology means you just end up with a cool system, but it might not actually help any of your learners or meet your learning requirements.

Oh, and I’m available to a good home and a good deal.

Section Title Page
4.1. Purpose of Document 8
4.2. Document maintenance 8
4.3. Intended audience 8
4.4. Divisional differences 10
4.5. LMS Description 10
4.6. Content and the LMS 11
5. Standards 12
5.1. SCORM Overview 12
5.2. Learning Content 12
5.2.1. Directory Structure 12
5.2.2. HTML and general content 13
5.2.3. Case sensitivity 13
5.2.4. Scripting – JavaScript and VBScript 13
5.2.5. MetaTags 13
5.2.6. Other filetypes 13
5.2.7. Versioning 14
5.2.8. Page size and timings 14
5.2.9. Inline links 14
5.2.10. Loading sequences and timings 15
5.2.11. Framesets 15

5.3. Asset CDs 16
5.3.1. Audio 16
5.3.2. Video 17
5.3.3. Error handling for Audio and Video 17
5.4. Branding 17
5.4.1. Fonts 17
5.4.2. Font Sizing 18
5.4.3. Colours 18
5.5. Desktop Specifications 19
5.6. Network Connection Specifications 29
5.7. Testing 30
5.8. Errors 31
5.8.1. Upload filename or structure errors 31
5.8.2. SCORM or Virus upload errors 31
5.8.3. Onsite testing 32
5.9. Upload Procedures 32
5.10. Final package handover 33
6. SCORM Implementation 34
6.1. SCORM function calls 34
6.2. Entering a Learning Item 34
6.3. Initialising an Learning Item 34
6.4. Exiting an learning item 35
6.5. Retrieving data from the LMS to the Learning Item 36
6.6. Sending data from the Learning Item to the LMS 36
6.7. Forcing cached data to be sent to the LMS 37
6.8. Error Handling 38
6.9. Error Codes 39
6.10. Launch Information 40
6.11. Learner Details 41
6.12. Learner Preferences 41
6.12.1. Allowing for Text alternatives 41
6.12.2. Allowing for multiple Languages 41
6.13. Tracking 42
6.13.1. Tracking a Learners exit 42
6.13.2. Tracking the Learners learning time 43
6.13.3. Tracking the Learners time within the learning item 43
6.14. Bookmarking 44
6.15. Objectives 45
6.15.1. Setting objectives 45
6.15.2. Objective results 45
6.15.3. Objective scoring 46
6.16. Interactions 46
6.16.1. Setting interactions 46
6.16.2. Interaction Results 47
6.17. Scoring 48
6.18. General Information 49
6.19. Implementation of the SCORM RTE Data Model 49
7. Manifest File Format 71
8. e-learning development DDA Standards 75-97

Leave A Reply

Your email address will not be published. Required fields are marked *