Print bookPrint book

How to "scormizise" a LO [2 ROSSZ LINK!]


Site: Tenegen
Course: TC05 - Sharing Open Learning Objects
Book: How to "scormizise" a LO [2 ROSSZ LINK!]
Printed by: Guest user
Date: Saturday, 2 March 2024, 3:53 PM



"I have developed LOs as web pages; how can I make them SCORM compliant?"


Here, and in the following pages, the expression "to scormize a LO" means to transform an non-standard LO into a SCORM-compliant LO.


The theme This LO provides you with tools and instructions on how to make an LO SCORM compliant, i.e. how to add the necessary scripts that allow the LO to communicate with an LMS.

The optional part of this LO provides a deeper knowledge of such scripts.

The Objectives

At the end of this LO you will be able to create a SCORM compliant LO.

How organised

1. Introduction (2 web pages)
2. How to "scormize" an LO (3 web pages+ 1m 20s of video)
3. Self-evaluation (exercise)
4. (optional) To know more (5 web pages + 1m 46s of video)
5. Conclusions (1 web page)

The duration 1 hour (without the optional part)



Teachers who are involved in online training activities need to know what activities their students have actually performed. They could wish to know, for example, if the students have opened a certain LO and how long they have dedicated to it.


A web page, in itself, does not allow such "tracking".

To "scormize" a LO of one or more web pages means inserting a bit of code, written in Javascript, allowing it to communicate with any kind of LMS and, as a consequence, to allow tracking.


The transformation of a web page into a SCO occurs by inserting some Javascript code that allows an event to be associated (uploading, downloading, clicking on a button ...) to the performance of specific functions such as the ones connected to the communication with LMS.

In its simplest form an SCO is, then, made up of a web page with some supporting Javascript code.

There are programmes for the creation of SCOs - for example EXE, in the open source field - that create web pages already containing such a code.

There are also web page editors that perform the function of a "runtime wrapper" that allows the scripts of the functions wanted in the web page to be inserted in an automatic way. Fortunately it is not necessary either to be a programmer or to study the Javascript language to modify web pages that have already been developed but which are not yet standardised in order to make them SCORM compliant.

You can do it in a very easy way using what is contained in this zipped file [ROSSZ LINK!!!]
- available for download.



It is your turn now to try to "scormise" an LO.

You can either use an LO that you have already developed, or you can download one here [ROSSZ LINK!!!].

Remember that if your LO has more than one web page you must give the initial file the name start.html and probably change some internal links.

Using a browser, open the learning object, i.e. the file called start.html. As you will see, it is a normal web page.

Now make sure you have also downloaded the folder called UsefulFiles, provided earlier.

Try to make your LO SCORM compliant and after that, using a browser, open the Home file and see what happens.

A sequence of error messages will appear. This is OK -- if they are the ones shown below. They are proof that you have done well!

Here are the first two messages



The SCO has tried to communicate with the LMS that it has been opened (initialized) but such communication has failed. This is obvious as the SCO has not been inserted in the LMS yet.

Another two messages follow:



Also the second attempt - when the SCO tries to "get" data from the LMS - fails!

At this point no more error messages will appear and you can navigate the pages. But what happens if you try to close the page (uploading a new one or simply closing the browser window)?

You will get a new sequence of error messages: 10!! The SCO keeps on searching the API Adapter to carry out the "Finish" procedures. Obviously all these error messages do not appear when the LO is inserted in the LMS. In this case, the communication will occur allowing the activities to be tracked without the user noticing.

Before being inserted in a LMS, an SCO needs to be "packaged". Such an activity will be dealt with in a different section.

This element "How to make a LO SCORM compliant” is finished, but if you wish you can go on with the following elements that will explain the  functions performed by the files we have provided you with.

Know more



What are the functions of the files in the folder called UsefulFiles? How can they allow communication with the platform in a SCORM compliant way?

This element tries to answer these questions in not too technical language. However some basic knowledge of HTML is unavoidably required.


A "frame" web page is a page that is empty of any content and that is divided into a number of boxes, each of which link to a web page that opens within the frame itself.

We need a two-box frame.


In one box, e.g. the upper one, we will use for our actual web pages, so let's insert the link to the first one, which we will give a name to. All the others will then open in the same frame.

The second box will be used only for Javascript functions (as nothing will be made visible in this area, it will be of zero size)


Here is the function called loadPage() that is contained in the file SCOFunction.js:

function loadPage(){ var result = doLMSInitialize();
var status = doLMSGetValue( "cmi.core.lesson_status" );
if (status == "not attempted")
{ // the student is now attempting the lesson doLMSSetValue( "cmi.core.lesson_status", "incomplete" ); }
exitPageStatus = false; startTimer();

The variable cmi.core.lesson_status, if it containes the value "not attempted" , will be set as "incomplete" . It is called startTimer() function.



When one gets out of the page the function called unloadPage() contained in the file SCOFunction.js is made active:

function unloadPage(){ if (exitPageStatus != true) { doLMSSetValue( "cmi.core.lesson_status", "completed" ); doQuit(); }

The variable cmi.core.lesson_status is set as "completed".

This element if finished. Go on to the next step from the menu or go back to check the parts you are not sure of.

The information provided is for those who wish to know more but it is not necessary for those who simply want to make their own LOs SCORM compliant.



This LO is finished!

If you have been sucessful in doing the self-evaluation test, then you have reached the stated objectives.

As you have understood that the procedure called " scormisation " is necessary if you want to insert your LO in a LMS to track your students' activities and get information on their learning path.

But in order to insert a LO in a scorm compliant LMS, we must first "package" it.

The SCOs we have developed communicate with a LMS in a minimal way. What has been proposed in this LO represents a good start, but it is not exhaustive as far as the theme of SCO-LMS communication is concerned.