SCORM Driver Integration Process

Last Modified: April 17, 2012

Current SCORM Driver Version: 4.0

SCORM Driver Integration Process

Welcome

Working Together

Implementation Process

Key Architectural Decisions

Debugging Must Be Available... Always

How will I handle custom modifications and standards?

Support Many Standards

Going Forth

Material Completion

Certification

First Integration Assistance

Support Process

Troubleshooting

Updates and Patches

Welcome

You’ve either purchased SCORM Driver or downloaded it free for non-commercial use. Either way, thank you! We're eager to get started and to help you use the SCORM Driver to its full potential. This document will provide you with a road map to the integration process. It is not intended to be a comprehensive document listing every bit of functionality that the SCORM Driver provides, that would kill too many trees. Rather, this document will orient you to the integration process, set expectations and provide you with the key information needed to complete your integration.

If at any time you find yourself wishing that you had more information, or that the SCORM Driver could do something more, or that the integration could be handled differently, please ask.  You're using a very flexible piece of software that can handle many divergent content scenarios, and if it can't accommodate you today, we'll try to find a way to make it.

Note: This document is not intended to serve as documentation for the SCORM Driver.  That’s available here.

Working Together

So far, you've probably been working with Tim (our one-man sales department) to gain some familiarity with the SCORM Driver and have concluded that the SCORM Driver is the right solution for you. Or you might have stumbled upon SCORM Driver as a free way to get your content SCORM’fied for non-commercial use. Now it’s time to hand things over to the technical folks to work their magic.

For folks using SCORM Driver free for non-commercial use, we have a “SCORM Driver Quickstart” guide. We can’t provide high level support for the free users, but we can try to answer your questions with our documentation. See the “SCORM Driver Quickstart” guide here. For more information on SCORM Driver free for non-commercial use, click here.

For paid customers, we have a team of developers that handle SCORM Driver integrations. We will assign one of them to this project to act as your integration consultant. The integration consultant is there to walk you through the process step-by-step. The consultant will handle the conversion of a template course (to be discussed later) and guide you through the changes that need to be made in your content. Our integrators are quite knowledgeable and are there to answer any questions you may have during the integration phase.

During integration, we use a tool called Basecamp for project management. Basecamp provides a simple interface for exchanging messages, transferring files, tracking to-do lists and setting milestones. We strongly encourage the use of Basecamp for all electronic communication (you'll even notice our implementers logging summaries of phone calls in there). Basecamp provides you and us with a single place to go to find the latest deliverables, see notes from prior conversations and refresh our memories as to why things are implemented the way they are. We have found this tool to be invaluable to both our implementers and our clients. You will receive a welcome message via email with your log in information to Basecamp. We can add as many users as needed to the system, so if you have additional people who will be participating in this project or just want visibility into its progress, we'll be happy to give them access.

We have carefully architected the SCORM Drive to isolate our code from your code and vice versa. We maintain this barrier to ensure that changes to one system don't require additional integration work and don't adversely affect the other system. Similarly we find it best to maintain a similar boundary in the work that our integration consultants do and the work that your developers do. We are very reluctant to make changes or affect your code in any way. Your developers are the experts in your code and they are the ones that should be trusted to modify your system. We will work side by side with them, guide them and advise them as much as needed, but at the end of they day, they will be responsible for maintaining your system and they need to fully understand everything that’s in there. Likewise, we do not expect your developers to become experts in our system overnight. We will gladly handle the the customizations and configurations needed in the SCORM Driver. If you prefer, we can also set your developers up with a simple development environment where they can make changes to the integration code. We’re also happy to help your developers learn the innards of the SCORM Driver's source code should they be so motivated, but we don't want this learning curve to stand in your way.

Implementation Process

SCORM Driver implementations vary wildly, because every piece of content or content creation tool is as different as the person creating it.  (LMSs, on the other hand, are startlingly consistent.)  For this reason, SCORM Driver implementations vary wildly as well.  For the purposes of this document, I’ll try to group them loosely into the following groups.

Whenever possible, we prefer to take a representative course, find the logical integration points, integrate the SCORM Driver, and return that as a template for all of the other courses that are produced by our customer.  This process is dependent on receiving a representative course that allows us to access sufficient levels of the code.  (A Flash course, for example, isn’t very useful here.  We’re not Flash experts and we often receive compiled Flash courses.  These are a dead end.)

When we go to do a conversion, we’re looking for a few logical events that correspond to the data that we can share with an LMS via learning standards.  Here are some of the events we’re seeking:

These questions apply to a single course or a tool that creates courses automatically.  When we deal with authoring tools or client content libraries, it also helps to get a tour of those systems so we have a larger scale picture of the possibilities for an application.  Yes, this is an ambiguous step.  The applications for SCORM are so varied that we don’t know what might need to be done until we see the scope of what can be done in an application.

Key Architectural Decisions

Debugging Must Be Available... Always

One of the inevitable truths of deploying SCORM content is that sometime, somewhere, that content isn’t going to behave as expected.  There are plenty of reasons for this, chief among them the variable quality of LMSs in the world.  Given this, it’s imperative that the debugging functionality in SCORM Driver be available in each deployment.

Making the debug log available can be done in a number of ways.  In certain SCORM Driver frames, you can push the ? mark button five times, and the debug window will be opened.  This is one option.  Most of all, though, we want you to ask yourself with this project is done... “If I need the debug log to show up, how will I make that happen?”

How will I handle custom modifications and standards?

We recommend providing the ability to support custom modifications of the standard communication.  We’ve equipped SCORM Driver to be extensible to additional standards (and poorly implemented versions of the current standards).  If you deliver SCORM content complete with the SCORM Driver code in its typical form, it’s possible to extend that SCORM package to accommodate mistakes in the host LMS.

Support Many Standards

It’s worth the effort to support more than one standard, particularly given that you’re implementing a product that can do so very easily.  They key for you, the customer, to consider, is this.  How will you manage multiple versions of the same course (the manifest files vary between standards, and you have to have them all ready to go.)


In an authoring tool, this means that you need to allow the user doing the export to
choose the right version.  In a custom piece of content, you might keep 2 - 4 copies of the course available, depending on the standard required.

Going Forth

Material Completion

Once we have collectively created a course that you can import and play in a SCORM LMS (such as SCORM Cloud), you have achieved what we refer to as "material completion".  This a relevant milestone from both a process perspective and a contractual one.  From this point forward, we have found that your requests are often better managed via our support portal (see below for information).  Our project managers will confirm with you that you are comfortable importing content and that you can access the support portal as needed.

It is important to understand that moving from the "implementation phase" to the "support phase" has no impact whatsoever on the level of support or access to our people.  It is merely a change in process that helps us take better care of you.

Certification

ADL offers a certification program that formally certifies or declares products to be SCORM conformant.  A sample SCORM Driver course has been certified for every version of SCORM, but unfortunately, this certification does not transfer to your product. To be formally certified by ADL, you must put a specific piece of your content through the certification process. The process is not hard and we will be happy to walk you through it. It costs about $1,000 and gives you the right to say that your specific piece of content is ADL SCORM Certified and to use their certification logo. We recommend that all of our clients get certified.

First Integration Assistance

Deploying your course for the first time can be a little intimidating.  We want to help you through this process so that you can be confident in the content we’ve produced together.  So, choose one of your first course deployments and have us help you with it.  

Support Process

We are always here for you, even after your integration is complete and your application is deployed.  We have a dedicated support staff.  If something goes awry after your integration is completed, please email us at support@scorm.com or visit our support portal. This will open up a support ticket and ensure you the fastest response. Our integration consultants rotate between many projects, including development of our products, and may not always be available to answer your questions directly once the integration is complete. For more details on the support process and our support portal, visit this document.

Troubleshooting

Nobody's perfect, we all make mistakes and things don't always go as expected. When problems arise, the SCORM Driver provides a few mechanisms for getting additional diagnostic information.

The most common problem our customers face is an LMS behaving in unexpected ways. In almost every instance, this problem stems from a misunderstanding of the SCORM standard on the part of the LMS developer, but we want to hear about these problems anyway so that we can ensure the SCORM Driver does everything it can to accommodate these varying interpretations of the standards. To diagnose SCORM problems, the SCORM Driver maintains a very detailed debug log that tracks all of the SCORM calls it has made in addition to other debugging data. This debug log can be accessed by clicking in certain location areas of the SCORM Driver interface and pressing the question mark key five times. This should cause the debug window to pop up.  In most cases, we will have discussed with you a way in which the SCORM debug logs can be accessed.

Rustici Software offers a tool that can be invaluable in confirming reasonable content behavior.   SCORM Cloud is a freely available hosted version of the SCORM Engine that is designed to quickly evaluate and debug courseware.  SCORM Cloud always contains the latest updates and patches to the SCORM Engine. If content is not behaving as expected in an LMS, it is often useful to run the content through SCORM Cloud as well to see if the problem is with the LMS in particular or if it is a more general problem with the content itself.

Updates and Patches

We are constantly developing and improving the SCORM Driver. Our release schedule is largely dictated by the evolution of the standards, but we typically target about one major release per year. In the interim, we will periodically issue patches to fix significant errors or to deal with significant standards issues. These updates are available to any customer that who continues to pay their support fees.

The best source of information on the evolution of the SCORM Driver is in our support forums. Patches are typically only applied as necessary to avoid overly burdensome update processes. Updates are generally straightforward to apply, but our consultants are available to you as needed.