Rustici Software

Rustici Software - We Make SCORM Easy SCORM Consultants
     Home HOME     SCORM Engine LMS STANDARDIZATION      SCORM Driver CONTENT STANDARDIZATION      SCORM Test Track TEST TRACK      Offline Delivery OFFLINE DELIVERY      SCORM Resources RESOURCES

"Can you recommend an LMS for me?"
12.03.2008 - Tim Martin

Ah, a relatively common question for us... People come to us asking for recommendations on content and LMS's with some regularity. I theorize that it's for one of two reasons...
  1. They think we're the governing body for SCORM.
  2. They know we aren't the governing body, but that we have expertise in the subject and have seen a bunch of LMS's.
To the first group... Sorry, that's not us. ADL is the governing body for SCORM at this point. They've shepherded it to this point and have stood up the Co-Labs and still manage the evolution of SCORM 2004. For what it's worth, they wouldn't be able to provide this sort of guidance either.

To the second group... you're right, we've seen a bunch of content and LMS's. On certain topics, we might even have useful insight for you. Our problem is this: we want no part of a conflict of interest. If we were to recommend an LMS, we would be choosing amongst our customers and our prospective customers. Each of my daughters does certain things better than her sisters, but I don't choose one of them to love more either. It just wouldn't be right.

So, we've elected to remain agnostic on the subject. I don't have a favorite LMS... in truth, I know a limited amount about each of them... our purview is really limited to the SCORM aspects of these systems.

If you are looking for an LMS, though, I would say this. Make absolutely certain that it is SCORM conformant, and not just a little bit. Lip service simply isn't enough to prove that a system really is conformant. I would look for further indication. Ask your sales person to import a course or two that you provide. Challenge the LMS provider on which versions of SCORM they support. If that vendor indicates they support some SCORM elements, but not all of them, ask them if they're crazy... [This topic, partial SCORM support, is a hot button for me. I promise I'll write about it another time. In fact, in an homage to Alton Brown's frequent "that's another show" references, I will begin tagging posts like this as "that's another post". None of you will find that tag particularly useful, but I certainly will when I need some new material.]

There are bunches of good LMS's out there. Many of them have great SCORM support. A good portion of those do so by implementing the SCORM Engine, and I'm more than happy to tell you if that potential LMS purchase is one of them.

Labels: , ,

9:34 AM 1 comments


Joel on Servanthood
12.01.2008 - Tim Martin

Joel Spolsky is a bit of an icon in the software development world. His blog and conferences are wildly popular, and, for the most part, Mike and I buy into a lot of what he has to say. In a recent article published in Inc. magazine, he had this to say.

"In our company, management's job is to get things out of the way so that all the great people we've hired can get work done."

I couldn't agree more. Whether this means drawing the line for our clients with regard to our responsibilities or breaking down the boxes from our new furniture to get them out of the office, that's what our job is in management. (Frankly, it's hard on me to describe myself with that word; it carries such negative connotations for me from prior employers.)

Joel has accomplished a great deal, but seriously, Joel, we all know you're not this tall...


Labels:

3:35 PM 0 comments


"Candor" Conveys Competence
11.21.2008 - Tim Martin

I exchanged emails with one of our long standing clients yesterday. I worked with this individual more than two years ago in integrating the SCORM Engine with their LMS, and was aware that he was a solid developer. In this most recent exchange, I noticed that his job title had changed, and so I congratulated him on his promotion. This was his response:

Yes, thanks Tim. I’m the PHB of the dev group these days. Should be no problem to get you that data. I’ll try running it later this afternoon.

This is such a perfect response, and makes me want to hire this guy away from our client (which we won't be doing, mind you.) To me, this conveys so many things... confidence in that he doesn't have to say how good he is, humility in that he can already mock himself.

Note to our prospective hires and current employees: Be so good that you don't have to tell me, but not so proud you can't make a little fun of yourself.

To that end, we make mistakes with our software sometimes. Given the overall quality of the software, we're willing to admit them when they come along. I ran into one of those issues this morning, and I thought I'd share it in the context of this post. For you non-technical readers, this is the point at which I delve into technical minutiae, feel free to evacuate at any time...

One of the core integration layer functions in the SCORM Engine allows us to pass detailed data regarding a learner's progress to the host LMS; it's called RollupRegistration. Like other integration layer functions, it can be implemented however the client likes, but it's almost always implemented via a stored procedure we provide to our clients. In this stored procedure, we collect the current state of two values: success_status and completion_status. In this default procedure, we used the values 0, 1, & 2 to represent unknown, incomplete, and complete (in the case of completion_status). There's nothing wrong with this except that we have values that correspond in our Logic.Types classes... and they correspond poorly. In the Types definition, the enumerated values are 1, 2, & 3... yup, off by one.

This mistake (or lack of clarity) on our part hadn't reared its head to this point. 2007.1 has been in circulation for more than a year, and no one had attempted to establish correspondence with these types in the code... Well, today, we discovered this inconsistency with a client who was confused by it (rightly).

Our answer? "Yup, you're right... that's confusing. No doubt." We offered our apologies.

So, going forward, what's the answer? Our recent release of the SCORM Engine, 2008.1, happens to have addressed this elegantly in our ScormEngineManager class. The ScormEngineManager is an enhanced approach to interacting with the SCORM Engine from the host LMS... And worthy of its own post another time.

On this issue, though, we've handled this by pushing the host LMS interaction out of the stored procedure layer and into the code, where we are handling the types properly and providing the already enumerated values to the host LMS like this:

public override void RollupRegistration(ExternalRegistrationId externalReg, ExternalConfiguration externalConfig)
{
RegistrationSummary regSummary = ScormEngineManager.GetRegistrationSummary(externalReg, externalConfig);

// Completion is an enumeration: UNKNOWN, INCOMPLETE, COMPLETE
Completion completionStatus = regSummary.CompletionStatus;

// Success is an enumeration: UNKNOWN, PASSED, FAILED
Success successStatus = regSummary.SuccessStatus;

// Total time in seconds tracked by ScormEngine (not as reported by course)
long totalTime = regSummary.TotalSecondsTracked;

// Score is unknown until explicitly reported by the course
bool scoreIsKnown = regSummary.ScoreIsKnown;
// Score is from -100.0 to +100.0
double score = regSummary.Score;

// TODO: VanillaCo:
// RollupRegistration is run whenever the course pushes data back to the ScormEngine.
// You should extend this method to update your LMS from the values above.

}


Our hope is that this option is far clearer and yet every bit as powerful. If it isn't, then every prior option is still available to the host LMS. Further, we hope that our candor conveys our competence.

Labels: , ,

10:09 AM 0 comments


Archives
August 2005
September 2005
October 2005
December 2005
January 2006
February 2006
April 2006
May 2006
June 2006
August 2006
October 2006
November 2006
December 2006
January 2007
February 2007
March 2007
July 2007
August 2007
September 2007
October 2007
November 2007
December 2007
January 2008
March 2008
May 2008
June 2008
August 2008
September 2008
October 2008
November 2008
December 2008
January 2009

Subscribe to
Posts [Atom]




Products

Easily standardize virtually any web-deliverable content.


Case Studies

Wants the best of the best.



Call us for a Complimentary Consultation

(866) 49-SCORM  |  info@scorm.com
HOME |  LMS STANDARDIZATION |  CONTENT STANDARDIZATION |  TEST TRACK |  OFFLINE DELIVERY |  RESOURCES

CONTACT


Copyright © 2002-2009 Rustici Software, LLC. ALL RIGHTS RESERVED