SCORM in D2L: A Sharable Experience
By Suzanne Skublics
Director of eLearning Software Engineering
XIA Systems Corporation
Suzanne Skublics delivers SCORM conformant courseware in Desire2Learn for the Defence Learning Network Project at the Canadian Department of National Defence.

Suzanne Skublics
I have been working with the Defence Learning Network (DLN) Project at the Canadian Department of National Defence (DND) for the past 3 years. The DLN Project is an initiative designed to foster an environment of continuous learning by providing "anywhere, anytime and just-in-time" access to learning, training and professional development programs and services for DND civilian and Canadian Forces personnel – a perfect candidate for SCORM content. The Canadian Defence Academy (CDA), a Canadian Forces organization headquartered in Kingston, Ontario, in partnership with the DLN Project, has implemented an online DL delivery capability branded DNDLearn, for all of DND and CF, based on the Desire2Learn Learning Management System and Learning Object Repository.
Apart from developing and verifying SCORM courseware, my main role within DNDLearn is to support our user community with all issues related to SCORM. When the D2L LMS was deployed as DNDLearn, my first task was to determine its conformance to SCORM, for both versions 1.2 and 2004. Once that was determined, the next step was to analyze how easy the SCORM features are to use.
When we first started our project in May 2003, we were using the SUN LMS and we had approximately 6 SCORM 1.2 conformant courses. When a SCORM course was ready to be deployed, our process involved testing it in the Advanced Distributed Learning (ADL) Test Suite, testing it in the ADL Sample Runtime Environment, testing it in a staging LMS (WebMentor) and then finally loading it into the production SUN LMS.
In December 2005, when D2L v7.4 was deployed at CDA, we had approximately 20 SCORM conformant courses – 3 were SCORM 2004 – which we could use to test D2L's SCORM features and usability. This also allowed us to perform the ultimate SCORM test: were SCORM courses really portable between LMS environments? The short answer: yes. The long answer: depends.
Loading a SCORM 1.2 course into D2L is straightforward: create a course offering and import the zipped SCORM content package into the offering. D2L presents feedback on the pre-processing of the package so you can follow each stage of the import. Based on the content package manifest, the entire course and its SCOs are presented for you to verify. Once verified, the final processing occurs and a success/failure confirmation message is displayed. If successful, the table of contents for the course is automatically created by D2L based on the manifest.
Once loaded, running the content is just as it is for any course in D2L, click on one of the topic (SCO) links in the table of contents. It is important to note, that this step will fail if D2L is not properly configured for SCORM. As stated in the D2L documentation, the DOME variable Content.HasSCORM must be enabled by the system administrator in order to enable the SCORM runtime adapter and allow SCORM runtime calls; it is disabled by default in v7.4. This variable affects the entire Org so it only needs to be enabled when D2L is configured. It can even be enabled after SCORM courses are imported. If you import and view a SCORM 1.2 course with this variable disabled, you will see the typical SCORM LMS errors about initialization so the course will fail to track SCORM data.
Our first test succeeded once we had the LMS configured properly. All of our SCORM 1.2 courses imported and functioned as expected with no changes required.
The steps for importing a SCORM 2004 course into D2L are the same as for a SCORM 1.2 course. D2L is able to import and run both SCORM 1.2 and 2004 courses in the same installation; this is very convenient. However, you need to specify which version of SCORM is the default to use at runtime because D2L does not automatically detect this when it parses the content package manifest. In the DOME, the default value of all new courses created is set to use the SCORM 1.2 runtime. If you have a SCORM 2004 course, you will be able to import it into D2L but you will not be able to run it successfully right away. The course ou must be added to the DOME variable SCORM.IsVersion1_3 by a system administrator. This is an annoying workaround if you have courses developed in both versions in your D2L environment. However it is workable in our situation because our system admin is very fast to respond to a request of this nature. If you have the majority of your courses conforming to SCORM 2004, then the default value of all new courses created can be changed to assume the SCORM 2004 runtime.
Our second test succeeded in the sense that all SCORM 2004 courses imported properly with no changes required. However it took several days to figure out why the courses would not run.
The courses that we used to test D2L included SCORM tracking such as time spent per SCO (cmi session time), current lesson location (cmi location), completion status (cmi completion status) and quiz scores (cmi raw score). Although D2L captures this data behind the scenes, viewing it as a learner or as an admin was not as intuitive as it is for non-SCORM courses.
Using the "My Progress" link on the course home page, you can view the User Progress. The Content section shows the topics (SCOs) visited for a course but does not show the completion status (cmi completion status). The Progress Map shows the individual SCOs visited with a checkmark whether they are complete or not. The time spent per SCO (cmi session time) is not displayed in this view. The Quizzes tool does not show SCORM quiz information and the Grades tool does not show scores (cmi raw score) for SCORM quizzes tracked within a course.
The SCORM Reporting page includes 3 pre-defined reports: SCO Summary, SCO Interaction Details and SCO Objectives Summary. These reports can be generated for a single user or for all users enrolled. For Single users:
- the SCO Summary report includes data such as learner progress, last access, completion, score, number of accesses and time spent;
- the SCO Interaction Details report includes data such as type of interaction, the user response, the expected response, the score, the weight and the latency;
- the SCO Objectives Summary report includes each objective set by the course with the learner score and status achieved.
For All users, the data is presented on a per SCO basis and is tabulated to obtain overall information for the course and across all users such as average scores, maximum scores, number of learners having completed SCOs, interactions, objectives complete and incomplete. This data is useful for the instructor or course developer to analyse the success of the learners and the quality of the course.
Our third test succeeded: all of our SCORM courses (1.2 and 2004) tracked data as expected with no changes to the content package. Once we had the LMS configured properly, we were able to view the SCORM tracking data.
Courses are not static and will require updates from time to time. At present, it is not possible to edit a content page using the D2L WYSIWYG editor if the page includes SCORM runtime calls. The WYSIWYG editor "runs" the page in order to display it and you will have SCORM runtime errors. If you need to change only a few content files, you can change them locally on your PC and then upload them to overwrite the files already loaded in the LMS. You can change and upload any file in the course using this technique except for the imsmanifest.xml file. Uploading this file will not simply replace and rebuild the course tree. If you need to change the manifest, you must rebuild the content package and re-import it.
There are 2 ways to proceed when re-importing a content package into an existing course offering. Both will produce the same result in the end:
- Delete the course content prior to importing the new content package (the one with the new manifest). After a successful import, you will see your new course with a new course tree.
- Import the new content package and then delete the course content that was previously loaded (the original manifest). In this case, the new course does not replace the old course. You will see 2 trees, the second tree being the new content. You can delete the old content by selecting all the course modules and topics in the first tree and clicking on delete. This procedure will not affect the second tree.
It is important to note that SCO activities are directly linked to a Content topic. Therefore, if a learner completes a SCO activity and this activity is later deleted, the result of the activity for this learner will be deleted and will no longer be available in the SCORM Reports.
One of the issues addressed by SCORM is to try to provide a common method for representing the intended behaviour of an authored learning experience such that any LMS will sequence discrete learning activities in a consistent way. We should start to see more consistent behaviour between LMS implementations as more of them migrate from the 2nd edition to the 3rd edition of SCORM 2004. However at this time, a SCORM 2004 course may not behave exactly as intended in every LMS, in particular the sequencing and navigation.
The SCORM 2004 2nd edition was adopted by many LMS vendors and courseware developers. Through extensive use in production environments, they identified issues that were reported back to ADL to be considered for the next edition. One issue identified was that some of the specified behaviour was subject to interpretation by the LMS vendors, creating not only an inconsistency between LMS implementations, but doubt in the minds of courseware developers as to what an LMS might present in a given situation. For a courseware developer following the 2nd edition specification, this meant that a course may have unexpected sequencing and navigation behaviour.
An example of this issue is the feature of controlling the visibility of a SCO or activity when presented to the learner. According to the specification, the visibility in the user interface can be controlled by the isVisible attribute of an item in the content package manifest. However, this feature is not specifically tested during LMS certification so it is left to the LMS vendor to decide how to handle it. If an LMS vendor decides not to honour the visibility setting, they are still considered conformant. Thus a courseware developer cannot rely upon this feature during the presentation of a course if the LMS conforms to SCORM 2004 2nd edition.
To determine the LMS behaviour that you can rely upon when your course is running, refer to the SCORM 2004 Conformance Requirements document in conjunction with the full set of SCORM specification documents. The 3rd edition includes a new section entitled "User Interface Conformance Requirements" in addition to the "Sequencing Conformance Requirements" section which lists sequencing aspects that are not tested in certification.
If you plan to create a SCORM 2004 course that takes advantage of sequencing and navigation features, you should be aware that Desire2Learn 7.4 is certified to SCORM 2004 2nd edition as listed on the ADL website (www.adlnet.gov); anything that was an LMS conformance requirement in the 2nd edition will function in D2L in accordance with the specification. Conversely, anything in the conformance specification that was not specifically tested during certification may have unexpected behaviour.
Our fourth test was only semi-successful. Our SCORM 2004 courses used sequencing and navigation features that did not function as expected. We incorrectly assumed that the certification process tested everything.
The new Content tool offers the ability to run both SCORM 1.2 and SCORM 2004 content packages in the same course offering without any configuration changes. Click here to find out more.
There are many sources for SCORM information. The Advanced Distributed Learning (ADL) website is a good place to start (www.adlnet.gov) as they remain the authoritative information resource for the US DoD ADL Initiative. ADL released the SCORM 2004 3rd edition in October 2006 and it promises to be more robust and complete than previous versions. This version is the new baseline standard allowing industry and the user community to catch up and stop chasing a moving target. The ADL site has all of the SCORM related documentation and test suites you will need to implement SCORM content as well as an active discussion forum with a huge knowledge base. When you follow the SCORM link, you will also find many SCORM content examples that illustrate the SCORM course structure, sequencing and navigation.
The Academic ADL Co-Lab is another good source (www.academiccolab.org). Check the initiatives for information about the SCORM School and the SCOurse: a self-paced tutorial about SCORM developed by the co-lab and offered for download from the ADL website.
Consider joining the ADL Community (www.adlCommunity.net), a new virtual community created to bring together people interested in advancing the possibilities for distributed learning. Although the community is just getting started, there are many resources listed on this site related to SCORM and other ADL initiatives. For example, visit the Design and Development Topic in the Main Community to find several SCORM resource links.
Develop your courseware using web (de-facto) standards and avoid proprietary formats. We have had the most success using XHTML, JavaScript, CSS, and SCORM as well as avoiding any browser-specific capabilities. Even though it is proprietary, Flash is ubiquitous so we use it as well.
Develop your courseware using SCORM 2004 3rd edition and follow the specification carefully. Even if you don't take advantage of the sequencing and navigation features, you can create a basic content package that is up to date. If you really need SCORM 1.2 content, then create a course that includes the logic to run both versions. The hook you need is cmi._version. You will still have to create two content packages – one for each version – but you can reuse the same course content for both.
Even though metadata is not mandatory according to the SCORM specification, develop it for the content package and for each SCO at a minimum and include it in your content package when importing. You can implement the metadata either directly in the manifest or in separate XML files linked from the manifest (D2L will read the linked metadata). It is easier to include the metadata when importing a content package and let D2L do all the work of filling in the metadata element fields than for you to do this on a per object basis, element by element in the metadata editor.
Test your courses rigorously before loading them into your production LMS. Your steps should include the ADL Test Suite, the ADL Runtime Environment and either a staging LMS or a sandbox area of your production LMS. When using the ADL Test Suite, I recommend testing the manifest first, then the metadata and then the entire content package. You will save a lot of time debugging your SCORM course outside the complexities of the LMS.
Ensure that your installation of Desire2Learn is configured to load and execute SCORM courses, either 1.2 or 2004 and is configured to display SCORM Reports.
If you have trouble with SCORM courseware development, you are not alone. I encourage you to get involved in the SCORM community both within the ADL and D2L. By perusing the various SCORM resources, you may find that many of your questions have already been asked and addressed and if not, I have found the people in the SCORM community knowledgeable and very helpful.
Ms. Skublics is the Director of eLearning Software Engineering at XIA Systems Corp in Ottawa, Canada. She is one of the pioneers in the realm of eLearning and has led many initiatives in the design and development of SCORM courseware. With over 20 years of experience in the IT field, she is responsible for course software R&D and standards including XML, IMS and SCORM. Suzanne's detailed knowledge of IMS standards, SCORM specifications, metadata and Learning Management Systems has contributed to the successful creation of numerous SCORM 1.2 and 2004 courses. She has managed several SCORM related contracts with the Canadian Dept of National Defence (DND) and is currently under contract with DND as a SCORM and XML expert. Suzanne has been using SCORM and actively working with the ADL SCORM Community since 2001.
Her publications include "Dynamic Appearance Model" (whitepaper submitted to the ADL for consideration in SCORM) Mar 2002. "You Can Do That?: An Early Conversion of CBT to SCORM v1.1" (Plugfest4 Proceedings), "Smalltalk with Style" (Prentice Hall), "A Matter of Style" (The Smalltalk Report), and "Teaching Smalltalk as a First Programming Language" (SIGCSE Conference Proceedings). She holds a Master of Computer Science from Carleton University and a Bachelor of Applied Science in Engineering Science from the University of Toronto.



