the elearning guild’s · 2015-04-24 · between january 2002 and august 2005, this publication...

10
January 23, 2006 Are you building today’s e-Learn- ing with yesterday’s approach to development? In an era when business demands speedy response, every producer of e-Learning must ask that ques- tion. Many of the best answers come from our colleagues in software development, and we would do well to adopt some of those methods. In this week’s article, a seasoned developer discusses templates, “skinning,” and future-proofing in terms of what they offer e-Learning designers and developers. Templates, Reusability, Future- Proofing, and the Technology Side of Rapid e-Learning By Kendrick Abell I t cost a lot of money to build CBT ten years ago, when I started in what was to become the e-Learning industry. $50,000 an hour was the stan- dard metric, and from there you would modify the cost based on factors such as the amount of video, quality of video, flexibility of navigation, tracking requirements, and number and complexity of interac- tions. Today, the standard cost is under $25,000, and that includes in-depth instructional design, complex interactions, non-lin- ear navigation, and lots of high-quality media. Ten years from now it will prob- ably be closer to $10,000 for the same course, with better quality media and more complex interactions, navigation, and tracking. So, what has changed in ten years? Hardware has changed. I’m sure we could chalk technology advance- ments up for a large chunk of the cost savings. At the front end, thanks to better quality equipment at lower prices, everything a cash-strapped multime- dia shop or department needs is easily within their reach. During production, tasks that used to take days now take hours. I remem- A publication of THIS WEEK: Development Strategies The eLearning Guild’s Practical Applications of Technology for Learning SM

Upload: others

Post on 18-Apr-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: The eLearning Guild’s · 2015-04-24 · Between January 2002 and August 2005, this publication was known asThe eLearning Developers’ Journal™.In September 2005, we changed the

January 23, 2006

Are you building today’s e-Learn-

ing with yesterday’s approach to

development? In an era when

business demands speedy

response, every producer of

e-Learning must ask that ques-

tion. Many of the best answers

come from our colleagues in

software development, and we

would do well to adopt some of

those methods. In this week’s

article, a seasoned developer

discusses templates, “skinning,”

and future-proofing in terms

of what they offer e-Learning

designers and developers.

Templates, Reusability, Future-Proofing, and the TechnologySide of Rapid e-LearningBy Kendrick Abell

It cost a lot of money to build CBT ten yearsago, when I started in what was to become the

e-Learning industry. $50,000 an hour was the stan-dard metric, and from there you would modify thecost based on factors such as the amount of video,quality of video, flexibility of navigation, trackingrequirements, and number and complexity of interac-tions. Today, the standard cost is under $25,000,

and that includes in-depth instructional design, complex interactions, non-lin-ear navigation, and lots of high-quality media. Ten years from now it will prob-ably be closer to $10,000 for the same course, with better quality media andmore complex interactions, navigation, and tracking.

So, what has changed in ten years? Hardware has changed. I’m sure we could chalk technology advance-

ments up for a large chunk of the cost savings. At the front end, thanks tobetter quality equipment at lower prices, everything a cash-strapped multime-dia shop or department needs is easily within their reach.

During production, tasks that used to take days now take hours. I remem-

A publication of

THIS WEEK: Development Strategies

The eLearning Guild’s

Practical Applications of Technology for Learning

SM

Page 2: The eLearning Guild’s · 2015-04-24 · Between January 2002 and August 2005, this publication was known asThe eLearning Developers’ Journal™.In September 2005, we changed the

Between January 2002 and August 2005, this publicationwas known as The eLearning Developers’ Journal™. InSeptember 2005, we changed the name of the publication

to Learning Solutions e-Magazine™ and completely redesigned the layout to make itmore reader-friendly. Since its inception, this publication has focused on being a forum formembers to share their strategies, techniques and best practices for designing, develop-ing and managing e-Learning. While the editorial focus of the publication will not change,we believe this new name will more accurately reflect the true content and audience of thepublication which is much more than just developers. We hope you like the new name andlayout and we certainly hope you continue to find value in this important publication of TheeLearning Guild.

Learning Solutions e-Magazine™ is designed to serve as a catalyst for innovation and as a vehiclefor the dissemination of new and practical strategies, techniques, and best practices for e-Learningdesign, development and management professionals. It is not intended to be THE definitive authority...rather, it is intended to be a medium through which e-Learning professionals can share their knowl-edge, expertise, and experience. As in any profession, there are many different ways to accomplish aspecific objective. Learning Solutions will share many different perspectives and does not positionany one as “the right way,” but rather we position each article as “one of the right ways” for accom-plishing an objective. We assume that readers will evaluate the merits of each article and use theideas they contain in a manner appropriate for their specific situation.

The articles in Learning Solutions are all written by people who are actively engaged in this profession — not by journalists or freelance writers. Submissions are always welcome, as are sugges-tions for future topics. To learn more about how to submit articles and/or ideas, please visit our Website at www.eLearningGuild.com.

Publisher David Holcombe

Editorial Director Heidi FiskEditor Bill BrandonCopy Editor Charles Holcombe

Design Director Nancy Marland Wolinski

The eLearning Guild™ Advisory BoardRuth Clark, Lance Dublin, Conrad Gottfredson, Bill Horton, Bob Mosher, Eric Parks, Brenda Pfaus,Marc Rosenberg, Allison Rossett

Copyright 2002 to 2006. Learning Solutions e-Magazine™ (formerly TheeLearning Developers’ Journal™). Compilation copy-right by The eLearning Guild. All rights reserved. Pleasecontact The eLearning Guild for reprint permission.

Learning Solutions e-Magazine™ is published weeklyfor members of The eLearning Guild, 525 CollegeAvenue, Suite 215, Santa Rosa, CA 95404. Phone:+1.707.566.8990. www.eLearningGuild.com

Important Announcement

Development Strategies

2LEARNING SOLUTIONS | January 23, 2006

ber three people spending half a day, running a fulllab of computers non-stop to process the audio filesfor an hour-long course. Today, that same task takesa high school co-op student an hour on a single PC.One can now do, over lunch, 3D animations thatused to render overnight, and compiling that 30-sec-ond video clip is something you do while you get acup of coffee.

Of course the time savings don’t stop there. Be-cause the client has access to better hardware, wedon’t have to worry as much about using higher bitdepths or complex compression algorithms. We canalso design for 800x600 or 1024x768 resolutions,and know our audience won’t need the latest tech-nology (or a magnifying glass) to use our course-ware.

Software has changed too. Better hardware hascontributed to putting more powerful developmenttools into our hands. Ten years ago we could sendtext, pictures, and audio over a phone line. Now yousay you want a 3D multi-user environment deliveredin a browser? Hey, no problem. The hardware limita-tions no longer hold the software back.

Another major driver of progress has been a con-vergence of custom tools and modern programming

languages and methodologies. Custom scripting lan-guages used to be designed around a limited fea-ture set the designers thought was important. Whilethat is still somewhat true, the majority of productstoday are based on standardized scripting languagessuch as ECMAScript (JavaScript), which allow greaterflexibility and portability, due to their more genericnature, as well as an easier transition for traditionalprogrammers.

We — the producers — have changed. Yes, we toohave evolved along with the software and hardware.As an industry we are more interested in definingstandards, re-using content, and generally being efficient in our work. We’ve also taken the advance-ments in our tools and leveraged them to create morewith less. Some of this leverage has come from apply-ing principles of software engineering and design toour courses and the engines that drive them.

Software engineering and e-Learning“Software Engineering and e-Learning” could have

been the title of this article, but it lacked the buzzwordappeal. It could also have deflected the attention ofanyone who isn’t a software engineer. Rest assuredsoftware engineers are not the target audience.

Page 3: The eLearning Guild’s · 2015-04-24 · Between January 2002 and August 2005, this publication was known asThe eLearning Developers’ Journal™.In September 2005, we changed the

Development Strategies

3LEARNING SOLUTIONS | January 23, 2006

Now that I’ve allayed your fears, let’s talk aboutsoftware engineering. Take almost any applicationout there and you can divide it into three compo-nents. There is the interface, which is the toolbarsyou see above this article and the window that con-tains it. There is the data, which is the article itself,text, graphics, hyperlinks, etc. And there is the logic:the component responsible for intelligently sharingdata between the two.

If you were to open a software engineering text-book, you might find a diagram that looks like Figure1 to the right.

Now, let’s talk about your static HTML e-Learningcourse. Are all of those three-tier components identi-fiable? Sure they are. We still have navigation but-tons, content, and communication between the two.The problem is that all of the layers are in the sameplace. (See Figure 2 to the right.)

The basic course

Assuming the most basic HTML course, we have:• Statically linked pages. (Each individual page holds

information pointing to next and previous pages.)• Replicated interface. (A copy of the code for the

global navigation and graphical layout is includedon every page.)

• Static layout. (One must place every element onthe page manually including text, graphics, interac-tions, and navigation elements.)

• Duplication of content. (The content in the story-board is not tied, in an automated way, to the con-tents of the course.)This course is not easy to create. We must copy

every page from the storyboard. The programmermust make layout decisions, screen by screen. Wemust update the navigation links on every page andthoroughly test each one when the course is finished.We must create interactions from scratch or copythem from existing code and then customize them.

This course is not easy for the subject matter ex-pert or instructional designer to update. Both the sto-ryboard and the course require updates. Alternatively,we may throw the storyboard out once the course iscreated, and it is then more difficult for reviewers toprovide feedback on the course contents.

This course is not easy to update for the program-mer. Adding or moving a page means updating thelinks on the next and previous pages as well. Changingglobal controls or adding new features requires, atbest, a complicated search-and-replace operation,and at worst it requires manually editing each page.

This content is not reusable. If someone werebuilding a different course and wanted to re-use amodule, they would have to replace all of the hard-coded navigation and modify the layout in every

page to match the look and feel of the new course.If the layout in the new course is different, and thecontent needs to be re-arranged, then you basicallymust create each page from scratch.

Beyond the basics

There is a lot one needs to do to turn this courseinto a full three-tier application, probably more thanthe average developer has time to even think about.Luckily, we can build up the final application over anumber of courses by working in stages. This approachcosts more in terms of overall work, since you don’thave the easy development environment up front,and you will probably also want to go back to earlycourses and update them once your engine is com-plete. On the positive side, time-to-market is better;since you don’t have to wait to build the engine youcan keep the whole team busy, and you can spreadthe engine development cost over multiple courses.

� Figure 1Three-tier architecture

Figure 2Three tiers in one

Page 4: The eLearning Guild’s · 2015-04-24 · Between January 2002 and August 2005, this publication was known asThe eLearning Developers’ Journal™.In September 2005, we changed the

Development Strategies

4LEARNING SOLUTIONS | January 23, 2006

TemplatesA template is the separation of content and design

elements. A cookie cutter is an example of a tem-plate. The cutter is the design element and the cook-ie dough is the content. With regard to an e-Learningcourse, a template can mean many different thingsand you can apply it on many different levels.

Background and positioning templates

When moving from a static course, the first step,and probably the biggest up-front time-saver, is the“background and positioning” template. This meanstaking everything around your content and makingsure there is a single copy of it. The simplest way to do this in an HTML course is to take a page, cuteverything above the content, and paste it into aseparate header file; then do the same with every-thing below the content for the footer. Now yourcontent is in a file all to itself, and can reference theheader and footer files. Changes made to the head-er and footer files affect the course globally. This isnow a two-tier application; since you have separatedthe data (content) from the interface and logic. (SeeFigure 3 to the right.)

Data as data

This is all fine, but there is still a significant amountof hard-coded information, dictating how the datashould be displayed, stored in the page. The simplesolution is to use styles with your content. This way,you can change the styles if you need to change lay-out, size, or color in the course. Unfortunately, thisstill doesn’t give you full control, and it really onlyworks well in HTML anyway.

The ideal solution is to completely abstract yourdata from all layout information. This is probably bestand easiest to do in XML, but any data structure willwork. The important thing is that you present thedata as unbiased data. Metadata then provides con-text, which is interpreted by the engine to decidewhere the text, images, and video go. Now if a par-ticular client wants the picture at the top left of thepage, video at the top right, and rubber duckies forbullet points you can say, “OK, but it’s going to takeme at least 15 minutes to reformat all of our courses!”

You can find a simple example of this in Power-Point. You can change the background as well asthe look and feel of the content by applying a newdesign template to your presentation. PowerPointdoesn’t store “Here is a block of ‘Green 16 pointArial’ text which says ‘Hello World’.” PowerPointstores “text ‘Hello World’ with ‘heading 1 format’”and separately stores “style ‘heading 1’ is ‘Green 16 point Arial’.”

Interaction templates

Another useful place to use templates is in interac-tions. One of the features introduced in Authorware 3was the concept of models. A model allowed you topre-build a component and then place it whereverand whenever you liked. Of course this was basicallycopy-and-paste without the effort of finding and copy-ing your example component, but it quickly brought tolight the power of a template approach. You put ineffort up-front to create a perfect working example ofan interaction and then you didn’t have to build itevery time you needed it. The emphasis on “perfect”is because although I could create an interaction fromscratch in not much more time than it took to cus-tomize the pasted version, oddly enough, the interac-tions customized from the “model” rarely had errors oromissions. Interactions built from scratch were muchmore likely to come back to me for rework.

A few years later, Authorware added a much morepowerful feature called Knowledge Objects. Theseallowed you to not only paste a model, but to controlthe contents of the model through a step-by-step wiz-ard interface. Now standard interactions were errorfree all the time, and course creators never even sawthe code behind them. The drawback was that creat-ing the knowledge object was much more complicat-ed than creating and manually editing the model.

There is another drawback to both approaches.The logic, interface, and data are all stored in theinteraction. When the requirement came in for all

Figure 3HTML course with top and bottom visiblypartitioned

Page 5: The eLearning Guild’s · 2015-04-24 · Between January 2002 and August 2005, this publication was known asThe eLearning Developers’ Journal™.In September 2005, we changed the

Development Strategies

5LEARNING SOLUTIONS | January 23, 2006

multiple-choice questions to respond to keyboardshortcuts, you had to program in that functionalitymanually for each interaction. To avoid such prob-lems, we again turn to the two-tier approach. Ab-stract the generation of the interaction to a globalfunction, and not only can you modify the way everyinteraction in the course works with a single change,but you don’t have to do more than cut and pastethe interaction content to create it in the first place.

Communication templates (APIs)

Another obvious “template” in the e-Learningworld would be the SCORM or AICC APIs. This isa communication template between course contentand a LMS. Communication templates are whatenables a three-tier approach.

I mentioned SCORM. It is hard not to at leastbring it up these days when the subject is e-Learn-ing. My advice, contrary to popular opinion, wouldbe to ignore it. Instead, I recommend being flexible.

Now I’m coming at this from the perspective of acustom content and off-the-shelf e-Learning devel-oper, so being flexible in terms of interoperability isvery important for me. Why don’t I use SCORM?Because none of my clients do! Of all the govern-ment, educational, and business clients, from smallbusiness to huge multi-nationals, I’ve only run intotwo that could actually accept SCORM content,and they both wanted hosted content instead, sothey didn’t have to deal with the process required to get a course into their centralized LMS.

In the multi-cultural world of today’s LMS market,one system requires post data to a hidden frame,the next uses a parameterized image load, and athird uses one of the AICC methods or some formof SCORM. In order to be flexible, you can’t buildthe communication into your pages; it has to be aglobal function. The particular data your pages com-municate has to go through your own API into yourengine, which then knows how to deal with the par-ticular environment it is running in. In my Flash deliv-ery engine, a configuration XML file is included withthe engine files. Changing one setting in this file isall that is required to get a new course running in anexisting client’s LMS or delivery environment. Yes,that comes in handy.

Now that’s not to say that the work done by theAICC and the ADL initiative in building their stan-dards should go to waste just because your clientdoesn’t use their standards. There is nothing wrongwith the data models and communication methodsused. Using those same data models in your ownengine will make adding SCORM and AICC sup-port down the road that much easier.

A conference with PERSPECTIVE! Learning technologies should help you ACHIEVE RESULTS so

we focus on presenting PRACTICAL SOLUTIONS.

Register Today! +1.707.566.8990www.eLearningGuild.com

Two ways to participate...

A Global Event for Focused e-Learning Professionals

Hosted by

April 19 - 21, 2006 • Boston, Massachusetts

Page 6: The eLearning Guild’s · 2015-04-24 · Between January 2002 and August 2005, this publication was known asThe eLearning Developers’ Journal™.In September 2005, we changed the

Development Strategies

6LEARNING SOLUTIONS | January 23, 2006

”Cookie cutter” courseware

I am sure some of you got a negative vibe frommy cookie cutter analogy. We are building engaginglearning material, something that challenges peopleand makes them think. A cookie cutter is the lastthing we want to compare our courseware to. Inorder to avoid the repetitious feeling of the cookiecutter course, you don’t need to make every screendifferent, you just have to be able to mix things upand stay open to new ideas. Solution: Use multiplebackground and layout templates. I generally use alayout or two for video, a few for pictures and anima-tions, one for un-scored questions and interactions,and maybe one for scored questions if they aremixed into the course. Your particular requirementsare likely different, but the best approach I’ve foundis to start with the few obvious requirements, thenlook for opportunities to create new layout templatesas you encounter different types of content or anexcess of similar content that needs to be broken up visually.

The other important aspect, which I consider amust, is to allow static content. There are somethings you just don’t template, like subject-specificgames or extremely complicated interactions. One of the early courses I worked on had a “Click on the next joint to solder” interaction. There was nospecific order, simply a rule that you didn’t soldertwo adjacent joints and risk excessive heat buildup.If the last two joints were side-by-side, you had towait two seconds before soldering the second one.I’ve never come across a similar interaction. If I wereusing my template system and I didn’t allow staticcontent, then that interaction, which to this day isone of my favorites, would have been written off anda multiple choice question would have taken itsplace. One of your options should always be toinclude a file instead of building a page. The extrahassle when converting your course or moving plat-forms is worth providing creative freedom for yourinstructional designers.

Another tier?

All this talk about software engineering and three-tier applications and I’ve only talked about splittingthe content out. The next step, splitting the interfaceand business logic, is actually fairly easy at thispoint. Move the logic. Right now in our two-tiercourseware, when you click on the forward arrow itknows where to go and takes you there. To makethis a three-tier application, make the forward arrowask the engine to move forward. Want to know if youneed to disable the forward arrow because we areat the last page? Get the engine to tell the forwardarrow when it should be enabled.

Separating this functionality out creates a numberof opportunities for us as developers. For starters,we have no longer specifically tied the developmentof the engine to the interface. We can send theinterface to the graphics department for updateswithout worrying about them breaking something,and we can continue to work on the engine whilemodifying the interface.

The astute among you may have noticed a conun-drum with separating interface and logic in interac-tions. Generating an interaction on the page is halflook-and-feel and half logic. So where does thecode go? Well, you do have the option of trying toseparate the logic half from the display half, but thismay be more effort than it is worth. In Flash, I put thegeneration on the display side, since different dis-plays will use different font sizes, etc. In an HTMLenvironment, I would put the generation on the en-gine side and use CSS to control the layout fromthe design side.

The trade-off is up-front complexity vs. time saveddown the road, and this isn’t the only place you’llfind this kind of issue. The solution is to make aneducated guess as to which is more overall effort. Ifyou aren’t sure, implement it the easy way anddecide later if it would be better to put in the extratime. Another alternative is modularizing your compo-nents further. For instance, you can make the inter-action generator a modular part of your interface.This way you would only update it when a particularinterface was wildly different than another, and youcould simply drop upgrades into existing courses,instead of upgrading every interface separately.

ReusabilityWe know the benefits of templates in terms of

development effort and down-the-road updates, butreusability is where the real, but sometimes lessobvious, benefits are to be seen.

”Skinning”

Everyone loves the personal touch. Jill’s BigDigging Machines Ltd. wants a course on soil typesand you already have one you wrote for Joe’s FlowerHut. Fantastic! This is how money is made! Theproblem is, Joe wanted a flowery look. Jill, on theother hand, probably doesn’t. The advantage of hav-ing your logic separate from your interface meansthey can both get what they want, and you have tomake only one course, maintain one engine, andbuild them each their own interface, or “skin.” If youupgrade the engine later on, you can pass that up-grade on without having to worry about re-doingeach interface.

The concept of skinning has wide reach. In many

Everything I’ve des-cribed in this articleshould take your aver-age programmer aboutone to one and a halfmonths after all of thefeature creep, debug-ging, etc. is said anddone. That’s probably a week of design, twoweeks of programming,and one-to-three weeksof working out the bugsand adding features.That’s effort, not elap-sed time. Figure outwhat that costs you.Now figure that it takesalmost zero program-ming time to createevery standard courseyou develop from nowon. How long until yousave money?

Page 7: The eLearning Guild’s · 2015-04-24 · Between January 2002 and August 2005, this publication was known asThe eLearning Developers’ Journal™.In September 2005, we changed the

Development Strategies

7LEARNING SOLUTIONS | January 23, 2006

The concept of skinninghas wide reach. Inmany entertainmentapplications “skins,”applied on a user-by-user basis, can makethe interface moreappealing to the indi-vidual. There’s no rea-son one can’t do this ine-Learning.

entertainment applications “skins,” applied on a user-by-user basis, can make the interface more appeal-ing to the individual. There’s no reason one can’t dothis in e-Learning, and although I haven’t implement-ed it myself yet, I’ve certainly heard it requested.

Interoperability

One of the mandates of the ADL initiative is inter-operability. Vast repositories of content are beingcreated from which one can simply “pluck” a LOhere and a LO there and create a finished course.Of course, in reality, it doesn’t really work that way.Each learning object has its own color scheme, key-board shortcuts, levels of accessibility, optimal screensize, fonts, point sizes, etc. Put a bunch of objectsfrom different vendors together and it is definitely alearning “experience.”

Our three-tier content abstraction helps immense-ly in this area. If someone has your collection oflearning objects and wants to use them in theircourse, they first edit your interface component tomatch their existing course. After that, the engine

instantly formats any object they pull in the way theywant. Think about it, that’s pretty cool!

Future-proofingFuture-proofing and reusability are basically the

same thing. It’s great when you can reuse stuff nextweek, but when you can use it 10 years from now,it’s even better.

Accessibility

This is a current issue for lots of us, but it couldalso be a future issue for a course where you didnot think it would be required. My company had toturn down a contract years ago because our courseon visual inspection of solder joints wasn’t fully ac-cessible to the blind — you just never know. Even ifyour content is accessible now, standards evolve.With abstracted data you have full control over theaccessible components of your course. A singlechange to bring all of your courses up to the lateststandards is a powerful thing.

The eLearning Guild has created TheeLearning Guild’s Online Forums, anongoing series of online events thatwill be held throughout the entire year. You can register to participate as anindividual or as a group in a one-day “virtual conference” every month thatincludes four highly interactive sev-enty-five minute sessions designed to explore a specific topic. Check outthe entire list of topics for 2006 atwww.eLearningGuild.com.

E-Learning for e-Learning Professionals...

Individual orSite Registration:

Participate as anindividual or you can pay a site fee, set up your meetingroom, and have youre-Learning teamparticipate in anOnline Forum as a group!

To learn more about each upcomingOnline Forum and to register, go to:

www.eLearningGuild.com

Here’s a brief description ofthe next Online Forum in theseries...

Here’s how the Online Forums work:

J A N U A R Y 2 6 , 2 0 0 6

Advanced Flash DevelopmentTechniques for e-Learning

We continue our coverage of MacromediaFlash, one of the most widely-used tools fordeveloping e-Learning. Examine more tech-niques for using Flash to extend instruction-al features in your programs. Our expert pre-senters will cover advanced interactionswith Flash using JavaScript, creation of high-ly reusable functionality, and Flash to AICCcommunication strategies. In the closingsegment of this all-day event, the presenterswill participate as a panel in the learningapplication and integration session, to giveyou further support in putting your newknowledge to work.Target Audience: Attendees should have asolid understanding of Flash features. Notethat this event will show you how to usethese features or techniques but does notinclude “hands-on” practice for participants.

Page 8: The eLearning Guild’s · 2015-04-24 · Between January 2002 and August 2005, this publication was known asThe eLearning Developers’ Journal™.In September 2005, we changed the

Development Strategies

8LEARNING SOLUTIONS | January 23, 2006

I am not aware of a sin-gle integrated toolwhich does all I justdescribed, but collec-tively at least 85% of itis implemented andavailable for purchaseas a number of sepa-rate components. Thetradeoff of third-partytools is complexity vs.required features andfuture customizability,but they generally getyou up and runningcheaper and cost lessto maintain than ahomegrown solution.

The future is m

M-Learning is the next big thing, or at least that’swhat I’ve heard. I’m not ready to buy that line quiteyet, because I despise low-resolution displays andam rarely five meters from my computer anyway.Then again, I’m probably not the target market. Thepoint is that m-Learning could be in your course-ware’s future. If you separate the engine and inter-face from your course content, then your entirelibrary of courses could be available on a PDA nearyou with a lot less work than you might think.

Expert systems and intelligent tutors

What I consider to be the future of e-Learning, andthis may just be the geek in me, is not the deliveryplatform, but the underlying method that provides theright information at the right time. Expert systems andintelligent tutoring systems do just that, but they arecomplicated pieces of technology and require a lot of invested time and information before they are ableto function properly. What they need is data, and atsome point one source of that data could be existingcourseware. Having the data separated from the con-tent makes it much easier for the system to extract it. Having contextual information with the data maymake it easier for the system to understand it. Thisalso brings to light the importance of metadata. Thinkabout what you might want to know about the con-tent if you were peering at it from a distance or tryingto place it in a larger hierarchy of knowledge. This will immediately help people with content reuse in a repository environment, but may also eventuallyhelp computers to understand your content as well.This is once again an excellent place to look to theSCORM for inspiration.

ROI and rapid e-Learning Thus far, I’ve said nothing about doing things fast;

it has all been about consuming time before coursedevelopment even begins in order to eventually savetime after the course is finished. The biggest businessdriver is what generates the most money right now.

ROI

Everything I’ve described in this article shouldtake your average programmer about one to one-and-a-half months after all of the feature creep, de-bugging, etc. is finished. That’s probably a week ofdesign, two weeks of programming, and one-to-three weeks of working out the bugs and addingfeatures. That’s effort, not elapsed time. Figure outwhat that costs you.

Now figure that it takes almost zero programmingtime to create every standard course you developfrom now on.

How long until you save money?Now that’s a rather quick and exaggerated exam-

ple, but the point is that you have to consider theaggregate cost savings and benefits. Not only areyou spending less time creating a course, but yourexperienced developers are now free to concentratetheir efforts on more elaborate interactions or morecomplicated and lucrative contracts. The process ofputting the course together can now be delegatedto junior developers or, if you can find good ones,trained monkeys.

If you want to skip the course creation altogether,you can work in a system that exports to a viableXML format and simply drop that in the directory andcall it a course. This is what Fábio Martinelli Duartewas talking about in “Automate Courseware Develop-ment with XML and Microsoft Excel™” (LearningSolutions eMagazine, September 26, 2005).

Rapid e-Learning

Scripting a course, putting some media with it,and sending it off to the client: that is my definitionof rapid e-Learning. No programming, no extensiveQA, nothing else required. Everything that PowerPointcan offer you in terms of speed, and most of whatcustom development can offer you in terms of cre-ative flexibility and interactivity — all of this directly inthe hands of the instructional designer, who knowsthat when time is of the essence he is limited onlyby what he has done before.

Fast, cheap, and good — on the technology side,we can deliver!

Existing tools

I am not aware of a single integrated tool whichdoes all I just described, but collectively at least85% of it is implemented and available for purchaseas a number of separate components. I have run intoat least one e-Learning IDE (Integrated DevelopmentEnvironment), which exports XML as well as provid-ing e-Learning-specific workflow tools, course pre-views, and issue tracking capabilities. Couple thatwith a delivery environment that runs off XML, ofwhich I know of at least one available and inexpen-sive option, and you are off and running. The tradeoffof third-party tools is complexity vs. required featuresand future customizability, but they generally get youup and running cheaper and cost less to maintainthan a homegrown solution.

DrawbacksYes, there are drawbacks to this approach; how-

ever I wouldn’t be writing this article if I didn’t thinkthe benefits outweighed them.

Page 9: The eLearning Guild’s · 2015-04-24 · Between January 2002 and August 2005, this publication was known asThe eLearning Developers’ Journal™.In September 2005, we changed the

Development Strategies

9LEARNING SOLUTIONS | January 23, 2006

As a general rule, yourcontent will work bestin your own deliveryengine and will losesome functionality onother engines. Porta-bility of client-side tech-nologies like JavaScriptand Flash will also gen-erally be easier thanserver-side technolo-gies like .NET. For thisreason I built my maindelivery engine entirelyin Flash, but you mayhave constraints thatforce you to take a non-plug-in route.

LMS compatibility

Your courses will work in everyone’s LMS, butthey will not always work as well as you would like.

One of the original requirements of our off-the-shelf courses was for trainees to interact with thecourse when hidden content was available throughthe interaction. This means you must disable the for-ward arrow until they have completed the activity.This is not a standard function in every LMS, and insome implementations it isn’t possible to meet thisrequirement because the LMS provides the naviga-tion and you don’t have the option to change that.

Another issue, this one with an LCMS, was thatbecause the LCMS provided the navigation, you hadto provide a separate entry point for each page ofyour content. Passing a different page variable to the same main file was not an option because theLCMS wanted you to browse for the HTML, Flash,or document file. To make matters worse, the LCMSstored every LO in a separate folder, no matter howyou wanted your course structured. This meant youhad to replicate the engine and content for everyobjective in the course. This worked, but now if youwanted to change the look of the course you stillneeded to copy the interface for every single LO.This was actually partially a limitation imposed be-cause the SCORM didn’t allow for a shared filedependency between learning objects (LOs), or atleast didn’t require implementation of it.

As a general rule, your content will work best inyour own delivery engine and will lose some func-tionality on other engines. Portability of client-sidetechnologies like JavaScript and Flash will also gen-erally be easier than server side technologies like.NET. For this reason I built my main delivery engineentirely in Flash, but you may have constraints thatforce you to take a non-plug-in route.

Complexity and true abstraction

I mentioned the difficulty of building your interac-tion generator since it has components of both logicand display. Unfortunately, the more you add to yourengine, the more complex it gets, the more issuesyou run into, and the more compromises you have tomake. That is life in the software development world,but for a pure multimedia shop, it may become morecomplex than your developers can easily deal with.Two viable options for solving this, if you don’t havethe expertise in-house, are outsourcing developmentor using off-the-shelf tools. Adherence to OO princi-ples and a formalized event model are a must forcomplex intercommunications.

Cost

Money is an issue. Time is an issue. Implementing

a template-based delivery engine will cost you both,whether you develop it in house or use third-partytools. Slowly working towards this goal may be moreattainable than building it all in one pass, and willallow you to put the time savings from the first stepstoward taking the next ones.

Conclusion: Templates, reusability,future-proofing, and the technologyside of rapid e-Learning

An industrial designer once told me that the job ofthe engineer was to always document your job func-tion so you will be easy to replace, and continuallyautomate and simplify your job function until you areno longer necessary. The automation and simplifica-tion of standard page-based e-Learning almost com-pletely removes the need for programming supportduring course development. This frees your pro-gramming resources for more useful tasks, such asporting your courses to a mobile platform, buildingmore advanced tools, or creating workflow enhance-ments to support your processes in other areas.

I have only covered one part of the developmentprocess here. Ten years ago programming wasprobably only a third of our development cost, andthat ratio has steadily decreased as the developersbecame more proficient and we built up a number ofpre-programmed components. One could certainlyargue that the week it takes to turn a storyboard intoa course (without the fancy delivery engine) isinsignificant compared to the three weeks or more ittakes to research, consult, design, and review thestoryboard or, depending on the course, the manyweeks it may take to create the graphical elements.While the technical side is certainly the easy part ofthe average course, it is also the low hanging fruit.We can probably gain in other areas as well, and Ihope that others who read this article will tacklethese difficult subjects.

Author ContactKendrick Abell is a Senior SoftwareDeveloper at Automated LearningCorporation and a Virtual CTO atABC eLearning. He has a BSc. in Integrated Science, combining

cognitive and computer sciences. E-Learning, and theuse of games in education, has been an interest sincebeing introduced to The Learn-ing Company’s productline in early childhood. An avid gamer, he also spendshis free time rock climbing and teaching ballroomdance. Contact Kendrick at [email protected]

Additional information on the topics covered inthis article is also listed in the Guild ResourceDirectory.

Page 10: The eLearning Guild’s · 2015-04-24 · Between January 2002 and August 2005, this publication was known asThe eLearning Developers’ Journal™.In September 2005, we changed the

The eLearning Guild is a Community of Practice for e-Learningdesign, development, and management professionals. Throughthis member driven community we provide high-quality learningopportunities, networking services, resources, and publications.Members represent a diverse groupof managers, directors, and execu-tives focused on training and learningservices, as well as e-Learninginstructional designers, content devel-opers, Web developers, project man-agers, contractors, and consultants.Guild members work in a variety ofsettings including corporate, govern-ment, and academic organizations.

Guild membership is an investment inyour professional development and inyour organization’s future successwith its e-Learning efforts. Your mem-bership provides you with learningopportunities and resources so thatyou can increase your knowledge andskills. That’s what the Guild is allabout ... putting the resources andinformation you need at your finger-tips so you can produce more suc-cessful e-Learning.

The eLearning Guild offers four levelsof membership. Each level providesmembers with benefits commensurate

with your investment. In the table you will find a comprehen-sive summary of benefits offered for each membership level. To learn more about Group Membership and pricing, go towww.eLearningGuild.com.

About the Guild

10LEARNING SOLUTIONS | January 23, 2006

The eLearning Guild organizes a variety of important industry events...

A Worldwide Community of Practice for e-Learning Professionals

Guild Benefits Associate

eLearning Insider

Annual Salary Survey

Past Conference Handouts

Resource Directory — Access & Post

Info Exchange — Access & Post

Job Board — Access Jobs & Resumes

Job Board — Post Resumes

Job Board — Post Jobs

Guild Research — Online Briefings

Guild Research — Reports

Guild Research — Archives

Learning Solutions e-Magazine

Online Events Archive

Online Forums

Online Symposiums

Face-to-Face Conferences

Pre-Conference Workshops

Event Fee Discounts

Online Event Site License Discounts

�*

�*

$

$

$

$

Member

$

$

$

$

20%

Member+

$

$

20%

20%

Premium

�*

�*

20%

20%

�= Included in Membership �= Not available $ = Separate fee required

*See www.eLearningGuild.com for details

December 6 - 8, 2006ONLINE

TBA TBA

February 8 - 10, 2006ONLINE

February 22 - 24, 2006ONLINE

April 18 - 21, 2006BOSTON

April 18 - 21, 2006BOSTON

April 18 - 21, 2006BOSTON

July 26 - 28, 2006ONLINE

ThursdaysONLINE