SCORM: The Pros and Cons


With e-learning becoming more widely adopted by schools, universities, governments and private companies for their educational and training needs, SCORM has become the de facto format. But should we really be adopting it?

What is SCORM?

SCORM, or the Sharable Content Object Reference Model, is a widely used web standard for e-learning interactions. It promises cross-platform compatibility and a homogenised approach to deploying e-learning resources but at what cost?

What are the advantages of SCORM?

  • A wide range of 3rd party support
  • You can buy ready made e-learning interactions
  • Supported by most Learning Management Systems or Virtual Learning Environments
  • Learning interactions can, in theory at least, be transferred from one LMS/VLE to another

Since SCORM was adopted by the US military in 2004, a number of agencies, consultancies and organisations have sprung up to offer SCORM resources and support, including software packages for authoring and packaging learning interactions.  Additionally, most Learning Management Systems or Virtual Learning Environments can deploy SCORM compliant learning interaction packages and if, at some point in the future, you decide to change to another Learning Management System, you can transfer them… well, in theory (see disadvantages).

What are the disadvantages of SCORM?

  • Limited selection of types of activities
  • Inherently insecure
  • Difficult to edit and correct ‘typos’
  • Very complicated format
  • ‘Compliance’ doesn’t guarantee that learning interactions will function correctly on your LMS/VLE
  • Learning interactions use a lot of Internet bandwidth and server storage space
  • Learning interactions take a long time to download

Firstly, I consider the main drawback to SCORM being it’s limited selection of types of activities. They are true or false, multiple choice, fill in the gap and multiple matching and a few variations of these types. As a teacher, I don’t expect my students to learn a great deal from such activities and I don’t think that they’re a very effective way of testing learners’ abilities or knowledge either.

Secondly, SCORM is inherently insecure. It requires the learner’s computer to store all the data related to a particular learning interaction, including the answers, usually in the web browser cache. It’s pretty easy to go and find the directory where those files are stored and look at them. On a Windows 2000 or Windows XP operating system, using Internet Explorer, you can change Tools… > Folder Options > View > Hidden files and folders > Show hidden files and folders and you’ll find the browser cache at C:Documents and SettingsusernameLocal SettingsTemporary Internet Files, and  Firefox provides a direct link to its browser cache.

Another security concern is that Adobe Flash abandoned support for SCORM after Flash MX 2004, also known as Flash (version) 6. It’s possible to author SCORM compliant e-learning applications in subsequent versions of Flash but they must be published in the MX 2004 legacy format. Likewise, the majority of software packages for authoring Flash e-learning applications for SCORM publish them in older, pre-Flash 9, formats. In the last few years, a number of high-level security threats have been identified in pre-Flash 9 files, allowing attackers to inject malicious software into users’ computers among other things. Read this article at for more details.

Another thing is, we’re all human beings and we all make mistakes. It’s frustrating when you think you’ve finished authoring a learning interaction and deploy it on a Learning Management System or Virtual Learning Environment and test it only to find that you’ve misspelled a few words, made a few typos or something similar (or your proofreaders have missed something). Most web-authoring tools allow you to easily go back and correct those inevitable mistakes by simply typing in the correct spelling, punctuation, etc. This isn’t so with SCORM. You’re required to re-author the learning interaction package and re-deploy it.

It also isn’t possible for SCORM packages, despite the word ‘sharable’ in the name (Sharable Content Object Reference Model) , to share resources. If you have images, audio recordings or videos that are used by all or several learning interactions, SCORM requires you to deploy copies of those media files in each and every package. This can result in a Learning Management System or Virtual Learning Environment using up many times more Internet bandwidth and server storage space than is necessary and also make updating those resources and long and tedious process. Basically, someone has to re-author every single learning interaction package. Perhaps that would be a job reserved for the “new employee” in the department?

In terms of how cost effective SCORM can be, I conducted an informal survey with administrators and teachers who use SCORM and I discovered that it was quite normal to deploy learning interaction packages of around 80MB – 100MB, the smallest being 15MB,  giving download times of anywhere up to 4 minutes before the learner can start the learning interaction (The average video is around 10MB and, of course, runs on Google’s impressive global data infrastructure – Watch the progress bar to see how long it takes to download). Additionally, Internet bandwidth and storage space on servers are expensive and should be kept as low as possible. If you multiply 80MB by the number packages on a course and by the number of students downloading them, you can see that bandwidth usage, in particular, can get pretty high. Such large file sizes and high bandwidth usage are, in my opinion, unnecessary and wasteful.

Finally, SCORM is incredibly complicated and difficult to understand. Here’s an extract from a user’s post on Moodle SCORM support forums:

“Right now I’m trying to figure out how to do basic SCORM compliancy (e.g. I have an authorware file with pictures of my cats and their names, buttons are there, one even has a quiz question)  How do I go from there to saying “Haha!  This is SCORM Compliant!  These are the steps to follow to ensure our product complies and we get paid!”  I’ve downloaded the tools off of adlnet, and I’m driving myself crazy at this point.”

And the reply:

“I feel your pain. I spent the last two years hoping for such a solution, and the bottom line is that the solution only exists by pouring over the documentation on the site. Here’s the nutshell, but if you do a project for the navy with only this information, you will run into trouble. The best I can do for you is point you to ADLs “SCORM 2004 Conformance Requirements” pdf file and offer my consulting services. I lived on the ADL product downloads page while I was learning to develop for the SCORM.”

I think that with the amount of time and resources an organisation could spend on adopting SCORM and providing IT support, it might in some cases, be more cost effective to develop proprietry frameworks for authoring and deploying e-learning interactions. It would certainly be less time-consuming to use one of the many alternatives available.

To sum up…

So initially, SCORM seems to offer a great deal in terms of interoperability and support but there are less than obvious drawbacks that can increase costs in terms of bandwidth and IT support. Furthermore it can present serious security risks to your Internet/Intranet servers and users’ computers.

There are better technologies available which are more secure, cheaper to install and maintain and more efficient. For example, it’s possible to deploy all the activities specified by SCORM with Moodle’s native Quiz module which is database driven, which means it’s relatively easy to edit and update,  and relatively efficient. There are also faster, smarter, more efficient technologies on the horizon with Flash, the Flex Framework and Adobe AIR (all version 9 or above) being the platforms of choice for the e-learning applications of the future.


New SWF Activity Module under development

Relates to: Moodle, Flash, SWFObject, AMFPHP

The most widely used and accepted platform for e-learning today is Adobe Flash. It brings the full power of multimedia (images, audio, video, text and animation) and dynamic interactivity to your computer. The most widely used open source platform for hosting and deploying e-learning resources is Moodle. Respectively, both platforms offer all the functionality you would expect for e-learning but there’s one major obstacle: they’re not very easy to combine.

What’s the new project?

I’ve started development on a new SWF Activity Module, a plugin for Moodle, that I hope will provide a comprehensive solution for Flash developers who want to create e-learning applications for Moodle and teachers and course content developers who want to create e-learning interactions that make full use of the possibilities offered by Flash.

Why develop this plugin?

In my opinion, this is something that has been long overdue and there have been previous attempts, most notably Jamie Pratt’s Flash Activity Module. Unfortunately, it was developed for Flash MX 2004 or Version 6.0, while we’re currently at Version 10, and is not forwardly compatible. So while e-learning and Flash speed ahead with ever more useful and powerful functions, anyone using this module gets left behind. The other solution currently available is an e-learning standard format developed by the US military called SCORM (Sharable Content Object Reference Model). While there is a lot of support available for this standard, it is very complicated and difficult to implement and it requires a high degree of specialist knowledge. Ask any IT support employee or e-learning developer about it!

How far has the project got?

So far, I have a working beta version that can deploy Flash e-learning applications of any version relatively simply and easily. A teacher or course content developer can now create e-learning interactions by combining Flash e-learning applications with media resource files. This is traditionally done with XML but the SWF Activity Module also supports a technology called Flash Remoting or AMF (Action Message Format) which is a very fast, efficient and versatile way for Flash e-learning applications to communicate with Moodle and other server-side applications. Learning applications will be able to retrieve all the data they need, i.e. images, audio, video, text and animations, to present sophisticated learning interactions and also pass back data about what learners do and how well they do it.

The SWF Activity Module learning interactions default database is organised so that one set of learning interaction data and media files, for example elementary vocabulary related to everyday objects, can be used by different Flash e-learning applications to dynamically create different learning interactions so that learners can practise and recycle the vocabulary in several different ways, i.e. matching images and recordings, dictations, questions and answers, word searches, etc. thereby consolidating their knowledge and skills.

What’s next?

There are two more main stages to the SWF Activity Module’s development. Firstly, to integrate the module with Moodle’s gradebook so that users’ grades can be recorded there along with other activities. I’ll most probably include a more comprehensive grading and results system specifically for Flash e-learning applications. And secondly, to provide a user-friendly interface for teachers and course content creators to create learning interactions by uploading the media files and entering data into Moodle’s database, or more simply put, putting images, audio, video, texts, questions and answers together so that Flash e-learning interactions can present lessons to learners.

Can I try it out?

You can see documentation for the SWF Activity Module here. There are some example learning interactions and video tutorial demonstrations available on a demo course my Moodle. Select “Login as a guest”. There is no need to create a user account. If you would like to see the editing controls in action and create a simple word search learning interaction for yourself, please contact me.

New FLV Player Module for Moodle

Relates to: Moodle, SWFObject, JW FLV Player

I’ve spent quite some time experimenting with video in Moodle. I’ve been looking for a reliable way to deploy video as an e-learning resource that will work across all platforms: Windows XP, Windows Vista, Mac OSX and Linux. So far, the most widely accepted video format has been Flash Video, otherwise known as FLV. FLV is used by most of the major media companies with a presence on the Internet, including YoutubeGoogle, Yahoo!, CNN and the BBC to mention but a few.

I’ve found that Moodle, as it stands (versions 1.8 and 1.9), is not the easiest possible way to deploy FLV video. Furthermore, if you want to add captioning, subtitles, links, etc. it becomes so difficult that you need to call in a developer or somebody who’s pretty well informed about IT, web design and server-side scripting. Even something as simple as displaying an image before the video starts. It’s certainly not for the average teacher or course content developer!

Well, I’ve decided that there has to be an easier way. I’ve developed a new plugin module that deploys FLV video in as user-friendly a way as I can. I used the JW FLV Player because it’s the most powerful and versatile Internet based FLV Player at the moment and only required a small one-off licence fee of €30 to use it on a website. It has too many features to mention in this article but you can get a good idea of what it’s capable of in the FLV Player Activity Module documentation.

I have a demonstration of the Moodle FLV Player Activity Module installed on my learning management system. The demo course allows guest access so there’s no need to create an account. If you would like editing privileges so that you can see how easy it is to use, please contact me. Alternatively, if you are already a Moodle user with administrator privileges, you can download and install the module for yourself.

I’ve released the FLV Player Activity Module under the GPL open source licence, which means that it’s free and you can change it or add to it in any way you like. If you make any changes to it, please let me know what you’ve done and why. Equally, if there are any changes or adaptations that you’d like to see made, let me know. If it’s something that would benefit the whole community, I’ll most probably include it in the next release.

The FLV Player project is hosted on Google Code with tutorials and sample downloads. It’s entirely free and you can download and install it in your Moodle in a couple of minutes. Click here.

I have a demo course on my Moodle where you can view some examples of the FLV Player module in action and also view a tutorial video demonstration on how to use it. Click here and select “Login as a guest”. There is no need to create a user account.