Estimating the time to create a training course

The Question

I received this email asking how to estimate the time it takes to create a software training course:

Hello,

I have a strong background in software development and training development and delivery. My training has always been around soft skills, business processes, and employee orientations.

I recently joined a software company as the Training Manager and I’ve been tasked with “figure out how we should do user training for our product”. I’ve purchased and read your book, User Training for Busy Programmers and it’s been very helpful already in translating my current knowledge of software development and non-software training into what I need to do for software user training.

I was wondering if you have any thoughts or resources around estimating the time it takes to develop user training following the process you outline in the book?

Thank you,

Jennifer

The (somewhat disappointing) Answer

Here's my reply:

Jennifer,

Years ago I asked this question on several of the most popular training and technical writing mailing lists. I also tried equating the time it took to develop training and documentation to things like function point counting, number of screens, number of keystrokes and clicks. None of it worked.

Seriously. The conclusion I arrived at is that there is way to predict the time to develop training and documentation, that is more accurate than your own experience.

Since you have experience developing training in business processes, you're not far off from being able to accurately estimate time to develop training for software. Because at the end of the day, a software class is (or should be) nothing more than a business process class that features a new tool. So when you're trying to estimate development and delivery time for a software class, ask yourself how long it would take to develop and deliver the class if you approached it as teaching a new business process, which just happens to use a new tool.

Sorry I couldn't give a more concrete answer. This is a question the continually challenges me, and I'd be happy to hear of any resources you find that help with it.

Regards,

William Rice

A Plea for Help

I want to hear what you have to say about estimating the time it takes to develop a software training class. Do you have any objective, quantitative methods that work for you? Or like me, must you rely on intuition and experience? How accurate are your estimates?

This topic is ripe for conversation. Leave a comment, and keep the dialog moving!

Book Review: Training for Software Rollouts

When a book on software training begins with the political issues of selling the training program to management and users, it's a sign that the author has real-world experience. As a training professional who's read too many books that take an academic approach to training, I appreciated the practical approach in Training for Software Rollouts: The Definitive Guide to Developing and Implementing Software Training Programs.

Charles H. Trepper's 480-page book is a comprehensive and accessible guide for IT managers and training professionals. Following the methodology in this book probably won't save you time compare to the seat-of-the-pants, ad-hoc method I've seen at many companies. However, the discipline and thoroughness of Trepper's method ensures better results for the time you invest.

Trepper takes a conservative approach, and bases his method on Instructional Systems Design (IDS), which consists of five phases:

  1. Analyze
  2. Design
  3. Develop
  4. Implement
  5. Evaluate.

Trepper adds his own experience in company-wide software rollouts to the IDS method. For example, he covers Political and Organizational Issues in Chapter 1, which is probably worth the price of the book alone. He then moves on to the Analyze phase of IDS, with Chapter 2, How to Conduct a Training Needs Analysis.

Chapters 3 and 4 cover the Design phase of IDS. Some topics that only an experienced trainer could add are 3.4 Getting funding--where does all the money come from? and 3.7 Avoiding training budget cuts.

Chapters 5 through 8 cover the Develop phase, when the actual training materials are constructed. These are some of my favorite chapters.

Chapter 5, Self-Directed Training versus Classroom Training, helps you decide between classroom, self-study, and live distance learning. It ends with a brief discussion on combining these methods, 5.5 Combining methods for maximum effectiveness and efficiency. In the training profession we call this blended learning. If you decide to go this route, you'll probably want to learn more strategies for mixing learning modes than this section provides.

Chapter 6, Make or Buy--Purchasing Training versus Developing and Delivering Training In House, helps you make this important decision. Trepper points out that

It is reasonable to assume that some training professionals, in an effort to perpetuate their usefulness, may present a barrier to the outsourcing option.

This resistance is not only futile, but also counterproductive. As Trepper briefly states, "the role of training professionals within corporate environments is changing." The profession is seeing a shift from training to performance consulting, and trainers who don't get with this program are going to be left behind.

Chapters 7 and 8, Purchasing Training and Customizing Packaged Training to Meet the Needs of Your Organization, finish the Develop phase. Chapter 8 is notable because I have not seen any other training books offer guidance on how to customize purchased material. Don't expect detailed step-by-step directions on how to deconstruct a Flash-based training module. The situations are too varied. The advice is useful, but necessarily broad.

Chapters 9 through 11 cover the Implement phase of IDS. Chapter 9, Implementing the Training Program, makes you aware of administrative needs such as Tracking attendance, Maintaining Courseware, and Monitoring and Logging Training. However, it doesn't offer detailed solutions. For a more thorough treatment, you might want to check out The Trainer's Support Handbook by Jean Barbazette (disclosure: I get credit from Amazon when you buy through that link).

Chapter 10, Communicating the Training Rollout to the Organization, discusses employee resistance to training and how to deal with the resistance. This is the only training book I've seen that deals with this crucial topic. I think this topic is worth more than 12 pages, and if I could ask Mr. Trepper to expand any one chapter this would be it. He talks briefly about determining the "real resistance reasons" to training, but doesn't tell us how to do that. Even a few examples of these reasons would be very helpful. For example, I've found that employees often resist training because:

  • They're afraid that efficiencies created by the new system will result in their jobs being eliminated.
  • They are the only ones who can do their jobs well, and the new system might make their jobs easy enough (or appear easy enough) for almost anyone to do.
  • They believe that the new system will take just as long as the present system, but management will still require more productivity to justify the new system.
  • Their managers will require them to do the same volume of work even while they're taking time out to attend training.
  • Previous, unsuccessful software rollouts make them cynical about this rollout's chance of success.

Chapter 11, Tips for the Trainer, gives some valuable advice for first-time trainers. The tips are general enough that they apply to almost every training situation. For more information about software training techniques, a good beginner's book is The Accidental Trainer : You Know Computers, So They Want You to Teach Everyone Else (yep, another Amazon Affiliate link).

Trepper devotes a few paragraphs to dealing with difficult students. If you want a more tips on dealing with hostile audiences, take a look at my article Surviving a Difficult Presentation: Techniques for Handling a Hostile Audience.

The Evaluate phase is covered in Chapter 12, Measuring Training Success by Measuring On-the-Job Trainee Performance. Trepper explains Kirkpatrick's Four Levels of Evaluation, which is the most popular and widely-accepted model. The four levels of measurement are:

  1. The students' reaction to the training. Did they like it? Did they think it was clear?
  2. The learning that took place. Did the students learn the material?
  3. The transfer of the learning to the job. Can the students apply the learning on the job?
  4. The result of the training on the organization. We also call this the Return on Investment, or ROI.

The ultimate goal here is to determine if, and how much, training has supported organizational goals. It's a big topic, but this chapter is densely packed and gives you enough information to evaluate your training program's effectiveness and return on investment.

One of my favorite pieces of advice in this chapter could come only from someone who has learned the hard way. Trepper writes about the difficulty of measuring the effect that training has on an employee's performance. He defines "results" as things the employee produces and that can be quantified: a completed widget, a completed support call, a discharged patient, a resolved customer complaint. He then defines "behavior" as something the employee does, without producing something that can be quantified: clean a room, give a massage, serve a diner. Results are easy to measure. But what about behaviors?

...begin by measuring results and only measure behavior when you have to. Most people try to identify the results of a position by listing its responsibilities and asking what product each activity generates. This process can take several hours and usually ends up with a very long list of results. A faster and better method involves identifying your customers and what you provide to them. This produces a list of key performance indicators.

In other words, to evaluate the bottom-line effectiveness of your training program, determine what effect it had on your customers' experience.

Chapter 13 covers Training the I/T Staff. I know many techies will appreciate this chapter, because I/T staff are often left out of training plans. The assumption is that training is for users, and techies can get what they need to know from the manuals and hacking around with the software. This is far from the truth, as Trepper adequately demonstrates in this chapter.

I've been called in several times to develop and deliver training for software that has already been rolled out. In Chapter 14, Trepper acknowledges that

..."training is not always at the top of the corporate priority list. Often training is developed casually as the software is rolled out."

The title of this chapter, Training Issues After a Software Rollout, talks about training issues when no training has been done, and when training was done with the rollout and now needs to be updated. Like Chapters 8 and 10, I've not seen any other training books deal specifically with this topic. And once again, I'd like even more of Mr. Trepper's valuable advice on this topic.

Chapters 1 through 14 comprise part one of the book, Designing, Developing, and Implementing a Software Training Program for Your Organization. Chapters 15 through 19 comprise part two, Application-Specific Training Issues. The applications covered are:

  • MS Office
  • Windows
  • Lotus Notes
  • SAP
  • Oracle.

Each chapter covers some key training points for the application, potential problems, how to customize training for that application, and buying advice for training services and materials. These chapters are short but the advice is very targeted. For example, Trepper advises

Organizations often think they "know" Oracle because they possess the database. However, they fail to realize that the applications will probably be customized as much as the database.

Appendix A is the shortest of the seven appendices at only four pages. Trepper covers Rapid Development for Small Projects. I've spent at least half of my fifteen-year career rapidly developing small training programs, and I found Trepper's advice to be solid. For example, he states that

Designing the [training] program and custom-developing training can be done almost simultaneously...

This is often the case; an experience training developer will design and prototype the training program at the same time. Trepper includes a table of small-project steps and deliverables. This chapter, plus the guidance given in part one of the book, will serve you well if you need to rapidly develop a small training project. For a more focused treatment of rapid training development, you might want to look at my book User Training for Busy Programmers. It doesn't deal with the broader issues of a rollout like Trepper's book, but does offer a plan for non-trainers called upon to quickly develop end-user training.

Appendix B consists of Training Team Job Descriptions. Even if your team has been selected and everyone has their assignments, I recommend reading this chapter. Looking at the Principal Accountabilities given for each position may result in an "Aha!" moment when you realize that you left a task or area of responsibility unassigned.

Appendices C through G are hardcopy of sample materials that can be downloaded from the McGraw-Hill website:

  • Appendix C: Sample Training Sales Presentation
  • Appendix D: Sample Training Program Plan Outline
  • Appendix E: RFP Outline and Completed Sample
  • Appendix F: Training Program Process Checklists
  • Appendix G: Sample Forms

These forms are in Microsoft Word format. Original purchasers of the book are permitted to download and customize the forms for their use.

At first glance, it would seem to be this book's focus that makes it uniquely useful. There are few books about training for software rollouts. However, after reading it, I realized that it's not the topic but the author's insight that makes this book unique. About three-fourths of the information in this book is standard Instructional Systems Design, customized for a software rollout. The other one-fourth consists of advice and insight that only someone with experience can offer. This is where the book most differentiates itself. If you're an experienced trainer, Trepper's insight can save you hours of work. If you're a non-trainer tasked with managing a company-wide software training effort, consider supplementing this book with some of the others I recommended, or with books from the American Society for Training and Development. Either way, this book is an investment that will pay off in a smoother software rollout.

How to Install Moodle on GoDaddy Hosting

I recently concluded an email exchange with someone who was very frustrated trying to install Moodle on their GoDaddy.com host. My first recommendation was, "If you can get your money back, switch to DreamHost.com or BlueHost.com and use their one-click installer instead." But he decided to see it through, and a dozen or so emails later we got his Moodle site up and running. In case you're using GoDaddy to host your Moodle site, let me post the instructions for installing Moodle on GoDaddy here.

First, create your MySQL database.

  1. Go to godaddy.com and log in with your account number and password using the form on the right-hand side.
  2. Once logged in, click the link My Account that appears where the form was.
  3. In the Hosting & Servers drop-down, choose My Hosting Account.
  4. Under Control Panel for the domain you wish to create a database on, click Open.
  5. When your Hosting Manager window opens, and assuming Godaddy have put you on the right account package, under the Databases title click MySQL.
  6. Click the CREATE NEW DATABASE button. GoDaddy is different from most hosts. It will ask you to enter a description, username and password. Note that you do not enter a name for the database. Instead, the username also becomes the name of the database. Make a note of the username and password.

    Add the name of your domain to the beginning of the username, such as williamrice_moodle. This ensures the name of the database is unique.
  7. Determine the host name by clicking on the pencil icon. It probably isn't "localhost." So click the pencil and note the name of the server.

Second, download the latest Moodle zip file

Go to http://download.moodle.org/, and download the latest stable version of Moodle to your PC. Choose the .zip file.

Third, upload the Moodle zip file to your root directory.

The preferred way to upload files to your hosting account is using an FTP client. GoDaddy has documentation on how to set up your FTP client. You can also upload files using a Web-based interface. Since we're going to upload just one file, the Moodle zip file, here are directions for uploading it using the Web based FTP. The text was copied from GoDaddy's support documentation:
  1. Log in to your Account Manager.
  2. Under the My Products section, select Hosting Account List.
  3. Next to the hosting account you want to use, click Open. The Hosting Control Center opens.
  4. Under the Content section of the Hosting Control Center, click the FTP Client icon.
  5. If a security certificate window displays, click Yes or Trust to accept the certificate and open the FTP program.
  6. In the Local System section, go to the location on your computer where you saved the Moodle zip file and select your file.
  7. Click the >> arrows to upload the file to your hosting account.

Fourth, unzip the Moodle package on your site

  1. Log in to your Account Manager.
  2. Under the My Products section, select Hosting Account List.
  3. Next to the hosting account you want to use, click Open. The Hosting Control Center opens.
  4. Under the Content section of the Hosting Control Center, click the File Manager icon.
  5. Assuming you have uploaded moodle.zip to the root, select it by using the check box on the left, then click on Unarchive at the top. In the resulting window, leave Select Destination as your root and don't select Overwrite Existing Files. The File Manager will unzip the files.
  6. You should now see a folder called moodle in the root. Click on it to make sure that it contains all the moodle sub-folders.
  7. Go back to the root directory and select the moodle folder again by checking the check box on the left.
  8. Click on Permissions at the top.
  9. In the resulting window, set these permissions for the moodle folder:
    Inherit = unchecked
    Read = checked
    Write = checked
    Reset all children to inherit (All subdirectories will be reset to inherit from current directory) = checked
  10. Click OK. The File Manager will set the folder permissions for moodle and all its sub-folders.

Fifth: Create a Moodle data directory

If you've followed the directions above, you should be in the File Manager, at the root of your site. There is a /moodle directory with Moodle unzipped into it. Now, create another directory for the Moodle data. For example, /moodledata.

  1. Click the New Directory button.
  2. Enter the name of the new directory, such as moodledata.
  3. Click OK.
  4. Select the moodledata folder by checking the check box on the left.
  5. Click on Permissions at the top.
  6. In the resulting window, set these permissions for the folder:
    Inherit = unchecked
    Read = checked
    Write = checked
    Reset all children to inherit (All subdirectories will be reset to inherit from current directory) = checked
  7. Click OK. The File Manager will set the folder permissions for moodledata.

Sixth: Step through the Moodle setup process

Open a new browser, and to the web address of your new Moodle installation. For example, http://www.williamrice.com/moodle. The setup process will start. Most of it is self-explanatory, but if you want instructions, try the guide at http://www.installationwiki.org/Moodle. That page contains the installation chapter from my book, Moodle E-Learning Development. When the book is updated, the publisher will also update that page.

These instructions should get you through installing Moodle if you've chosen GoDaddy.com as your host. If you have any questions, please contact me via the email address in my profile. Wherever you choose to host, happy Moodling!

Using different kinds of feedback in a Moodle quiz

Moodle quizzes enable you to create different kinds of feedback. Let's define the different types of feedback, and then, let me suggest some best uses for each kind.

Types of Moodle Quiz Feedback

Different Feedback for Each Answer

You can have feedback for each of the answers in a question, so if the student selects answer "A" the feedback is different than if the student selected answer "B." Let's call this kind of feedback "choice specific," because it changes with each answer that the student chooses.

Different Feedback for Right and Wrong Answers

A less specific type of feedback is using one feedback message for the correct answer to a question, and another for all of the wrong answers to the question. Let's call this type of feedback "right/wrong," because the feedback changes according to whether the student got the answer right or wrong.

General Question Feedback

General question feedback gives the student the same feedback no matter what answer they chose.

Different Feedback for Different Quiz Scores

You can also have feedback based on the student's score for the quiz. For example, if the student scored greater than 90 percent, the feedback might congratulate the student on a great score. Let's call this "overall feedback," since that's the term Moodle uses.

Uses for Moodle Quiz Feedback














Best uses for different types of feedback in Moodle quizzes.
Type of feedbackUsage

choice specific


and


right/wrong

For right answers, tell why that choice is correct, in case the student selected the correct answer by guessing.


For each wrong answer, there's a reason the student would think that it is correct. In the feedback for that choice, I address that specific reason. For example, take the question "Which is the smallest planet?" If the student selects "Pluto," then my feedback will state something like "A few years ago, your answer would have been correct. Pluto was considered the smallest planet, until it was downgraded to a pluton. Now Uranus is the smallest planet." The challenge for me is in creating feedback that addresses the probable reason the student chose that answer, without assuming that reason. If I can't do that, then I fall back on just using that same feedback for all wrong answers.

general question feedbackGive students background about the knownledge the question was testing. Or give a link to more information about the knowledge that was tested.
overall feedbackWhole-quiz feedback is difficult for me to make meaningful. If I want to tell the student anything more than, "You passed with flying colors," the quiz needs to be very very focused on a narrow topic. For example, what if the student scores low on a quiz on the American Revolution because (s)he missed all the questions on dates? And what if the student answered every other question correctly? The computer doesn't say, "You did great with concepts and names, but you seem to have a problem memorizing dates." But if I break that quiz up into mini-quizzes, and one of them is "Dates of the American Revolution," then I can say something meaningful in the whole-quiz feedback.

Articles About Using Feedback to Help Learning

Since we're talking of using question feedback as a learning tool, you might be interested in these articles that I found online: "Effects of immediate self-correction, delayed self-correction, and no correction on the acquisition and maintenance of multiplication facts by a fourth-grade student with learning disabilities." Also, "Effects of immediate and delayed error correction on the acquisition and maintenance of sight words by students with developmental disabilities." If you use question feedback, and make the quiz short so there's not a long delay between answering question number 1 and submitting the quiz, then I think that qualifies as "immediate error correction." Even more immediate would be to use a lesson, with one question per page, which the student answers before moving on to the next page in the lesson. That's my preferred way of creating immediate error correction. Partly because a lesson page is more flexible than a quiz question. And partly because each lesson page is "submitted" before moving to the next, making the feedback/error correction truly immediate.

Creating an Instructor Kit

After you've tested the in-class exercises, polished the presentation
materials, printed the handouts and workbooks, and created the data files
for class, are you ready to hand over the course to an instructor? Not
yet. You have one more thing to do before calling your course finished:
Create the instructor kit.

An instructor kit often differentiates a good course from an exceptional
course. It is more than a pretty package or a finishing touch. It is an
integral part of any training course that you must hand off to an instructor.
The instructor kit's ultimate goal is to increase the quality of the students'
experience, by helping the instructor to assimilate, set up, and deliver
your course.

This article addresses creating an instructor kit for a software course.
However, 90% of this article is directly applicable to creating an instructor
kit for any technical course, and the other 10% is easily adaptable to
non-software courses.

What is in an Instructor Kit?

An instructor kit consists of information and tools.
Most of the information helps the instructor teach. Most of the tools
help the instructor set up, reset, and delete the course. The information
that you should include in an instructor kit is listed below. The software tools that you should include are described after that.

Types of Information in an Instructor Kit

Most instructor kits require the following types of information:

Prerequisites

Prerequisites include:

  • Proficiencies the instructor must have to teach the course.

  • Information the instructor must know about the subject.

  • Minimum equipment and software needed to teach the course.
Setup Directions

Setup directions include:

  • Required settings and configurations for the equipment and software before installing the course.
  • Directions for installing the course files.
  • Required settings and configurations for the equipment and software after installing the course.
  • Directions for testing the installation.
Delivery Information
Delivery information includes:
  • The location of any data or documents that the instructor or student will use in class.
  • The location of any data or documents, and a list of functions or menu items, that the instructor should steer students away from.
  • Key points that the instructor must address in class.
  • Directions for demonstrations.
  • Information to help the instructor coach students through workshops.
  • Directions for using the tools listed in the next section.
Reset Information

Reset information includes:

  • A description of the state of the data and documents used in class, after class.
  • Directions for returning data and documents to their pre-class state.
  • Directions for testing the reset procedure.
De-installation Directions

De-installation directions tell the instructor how to de-install all
software placed on the training computers, and how to reset the computers
to their original state.

Types of Tools in an Instructor Kit

For a software course, most tools consist of software designed to help
the instructor present the course, such as:

  • Installation Software.
  • Electronic Slide Shows.
  • Reset Software.

Tools may also include a printed instructor guide, and hardware needed
for the course. Most instructor kits require the following types of tools:

Instructor Guide

The Instructor Guide contains all of the information given above. It
is usually a printed document, but most instructor kits also include an
electronic version of the document.

Installation Software

The installation software may be simply files that the instructor copies
to the classroom PCs, or an application that performs the installation
when launched. The installation software can:

  • Install the data used during the course.
  • Install the documents and files used during the course.
  • Install the Electronic Slide Show.
  • Configure the settings on the computer(s) used during the course.

A course may require separate installation routines and files for the
instructor and students. A non-software course may instead have equipment
that is used during setup. This equipment may differ for the instructor
and student.

Electronic Slide Shows

Electronic slide shows are usually created with an application like PowerPoint
or Astound!. The slide shows may be installed by the same software as
the data and documents used during the course. Or, it may require its
own installation software.A tutorial on creating electronic slide shows
for technical training is beyond the scope of this article.

Training Applications

Training applicatioins consist of the applications that students and
the instructor need for the course. This may include the actual application
being taught, and also:

  • The application used to run the slide show.
  • Applications used to examine documents.
  • Applications used to examine, create, or modify data that is used in class.
Training Files

Training files consist of the data and documents used during class. The
instructor may receive more complete versions of the data, for demonstrating
the results of in-class exercises. If this is so, the instructor and students
will need separate installation routines.

Reset Software

Reset software returns the data and documents used during class to their
pre-class state. It also resets and software settings that the students
changed during class.

De-installation Software

De-installation software removes all training software from the computers
used during training. It also returns the computers to their original
settings.

Outline for the Instructor Kit Guide

Use the following outline as a starting point for writing your instructor guide. I've numbered the sections so that you can see the hierarchy.

1. Introduction to the Course

Explain why the course is taught, what the course covers, and to whom it is taught.

1.1Purpose

List the proficiencies the students will develop during the course.

1.2 Software Covered

States the software that the students will learn to use. Include the version numbers and platforms for the software.

1.3 Audience

Describe the audience and the audience’s situation. For example, "This course is designed for line managers at Company X who must create budgets for the groups they manage."

1.4 Agenda

State the high-level topics and estimates for the time to teach each topic.

2. Contents of this Instructor Kit

An instructor kit is often packaged into a binder that includes a written instructor guide and CD containing all software and files. Usually, the majority of this section lists and describes the files on the CD.

2.1 Documents

Describe the purpose and format of any documents used during this course. If a document must be printed for the course, state so in its description. State when each document is used in the course.

2.2 Data Files

List and describe the data files used in the course. Stating when each file is used helps the instructor trace any problems during the course to a faulty installation. For example, suppose an exercise in loading data does not produce the intended results. If the instructor knows that FileX is used in this exercise, the instructor can check the installation of that file while troubleshooting the workshop.

2.3 Applications

If the course requires the installation of any applications, include the installation files and instructions.

2.4 Hardware

If the course requires special hardware that is not available at the training site, include the hardware in the instructor kit.

3. Prerequisites

This section describes all prerequisites for the course. Prerequisites can include physical items, software, and knowledge.

3.1 Room Equipment

List and describe the non-computer equipment the instructor needs to teach the course. Some items that might appear on this list are:

  • A whiteboard.
  • A flip chart.
  • An overhead projector.
  • Give-aways for students.
  • Name cards for students and instructor.
  • Items used during training games or demonstrations.
3.2 PC Hardware

List the minimum requirements for the student computers, and the instructor computer. Some of the requirements:

  • The amount of memory. Does the instructor computer need more memory to run the training application and slide show concurrently?.
  • The amount of free hard disk space. Do the instructor files take up extra disk space?
  • Processor speed.
  • Display resolution.
  • Floppy, CD, and/or DVD drives.
  • A printer.
3.3 Software

The software on which you are training is an obvious choice for this list. Also consider any applications needed for opening files used during training. For example, if you load a graphics file into the training application during class, will you need a graphics application to examine or edit the file before loading it? If you supply documents in .pdf format, will the students need Adobe Acrobat to view them? If the training application exports data to a spreadsheet, will you need a spreadsheet application to examine the data?

3.4 Instructor Proficiencies

This can consist of a list of tasks the instructor is proficient in. Or, it can state that the instructor must have a certain amount of experience with the application.

Most in-class exercises begin with a list of the proficiencies developed during the exercise. One easy way to complete this section is copying those lists into this subsection.

3.5 Instructor Knowledge

An often-overlooked prerequisite for many technical training courses is instructor knowledge of the business processes that happen before and after training. The instructor should also know who supports the users after training.

Students often ask questions that go just beyond the scope of the application being taught, such as:

  • What is the source of the data that the training application accepts?
  • What happens to the data or files that the application outputs?
  • Who is responsible for supporting the users after training, as they begin to use the application?
3.6 Student Proficiencies

Many software courses list "Basic PC skills" as a student prerequisite. Be more specific. For example, many users who claim they have "Basic PC skills" do not know how to:

  • Navigate around a hard disk and find a file from within the Open File dialog box.
  • Turn on the display of file name extensions. With the file name extensions turned off, "file.txt" and "file.dat" are both listed as "file."
  • Right-click and use shortcut menus.

If you do not state exactly which "Basic PC skills" the student needs, the instructor may need to spend valuable class time teaching teaching remedial PC skills.

3.7 Access Rights

Many training courses are taught off-site, at a client’s offices or a rented training center. While developing the course, you have access to the application and your computer. Do not take for granted that the instructor and students will have this same access when off-site.

When writing this subsection consider whether:

  • The students can access the training application from the computers in the training room.
  • The instructor has administrative rights to install the training software on the training computers.
  • The students can access any network files they may need from the training room.
4. Setup Directions

This section includes setup directions for both the student and instructor computers. Refer to the section on software prerequisites and determine if the instructor needs to install the training application, and supporting applications used during class.

These directions do not always need to be detailed, step-by-step instructions. However, if you assume the instructor knows how to perform some parts of the installation without detailed directions, list this assumption in the Prerequisites section under Instructor Proficiencies.

4.1 Starting Point

Give a starting point for the installation. For example, before installation:

  • What software must be on the student and instructor computers?
  • What settings must be configured?
  • What hardware must be connected?
4.2 Installing and Testing the Student Files

This subsection gives directions for installing the applications and files used by the student.

4.3 Installing and Testing the Instructor Files

This subsection gives directions for installing the applications and files used by the instructor. Sometimes the instructor setup is a completely different process from the student setup. Other times it is an additional process.

4.4 Installing the Slide Show

This subsection gives directions for installing the slide show. The installation may be as simple as copying files to the instructor’s computer, or it may use an installation application.

5. About the Training Application

This section tells the instructor what is unique about the training application. It supplies the kind of information that an instructor will discover after hours of exploring the training application. Save your instructor some preparation time and include a section about the training application.

5.1 Limitations, Instabilities, and Non-functionality

The development of a training course often starts while the product is still in development. For software courses, this means that the training course is often developed using an application that is not completely functional. The instructor must know what parts of the training application are unstable or unusable. Discovering these while presenting the class will undermine the students’ confidence in the instructor and the application.

5.2 Login Information

The instructor and students may use different login information. If all students access the same networked application during class, each will need a separate login.

5.3 Where the Data Is

A training application rarely contains as much data as a fully-functional production application. The instructor must know which settings will show data during demonstrations. Few things are more embarrassing for an instructor than desperately trying random settings during a demonstration, in an attempt to show how the application processes data.

5.4 Differences Between Student and Instructor Applications

The instructor’s application might contain more data than the students’ application, to make demonstrations possible. Or, the instructor’s application may have the finished versions of in-class exercises. The instructor must know about these kinds of differences before class.

5.5 Installing Fail-safe Data

Most software courses require a student to complete a series of in-class exercises. The result of one exercise often provides the starting point for the next exercise. Therefore, if a student fails to produce the desired result from an exercise, the rest of the class exercises can become impossible to complete.

Fail-safe data is data that can be copied into the training application to simulate the successful completion of an exercise. This gives the student the correct starting point for the next exercise.

If you supply the instructor with fail-safe data, include instructions for copying that data into the student application.

6. Module Notes

Each module, or chapter, in a training course usually covers a specific task or group of related tasks. Most modules follow a lecture-demo-exercise sequence. The subsections described below are based on these assumptions. Repeat each of these subsections for each module, or unit, in the course.

6.1 Points to Emphasize

Is there any information that the client asked you to emphasize during the presentation? Are there any procedures or steps that, if omitted, will cause a loss of data or failure in later procedures? Hopefully, all of the information that you have included in the course is important. But this subsection is for information that is essential to the success of the students, in class or when they return to their work.

6.2 Demonstration Script

You don’t need to script the instructor demo click-by-click. Just tell the instructor enough to re-create the demo you have prepared. Of special importance is stating exactly which data to use during the demo, and where the data is located.

6.3 Pre-exercise Checklist

This is a checklist of the menu options and features that the instructor taught during this unit. Just before the instructor tells the students to start the in-class exercise, the instructor can scan this list and determine if (s)he covered all of the topics necessary for the students to succeed at the exercise.

6.4 Starting Point for Exercise

Most students follow along with the instructor during demonstrations. This means that their screens will usually not be as they left them after the last exercise.

Describe the starting point for the in-class exercise. State where in the software the students should be, and what data they should be viewing. A screen shot may be a good idea.

6.5 Fail-safe Files for Exercise

The exercises in most software courses build upon each other. For example, Exercise 2 usually uses the results of Exercise 1 as its starting point. If a student does not produce the correct result from an exercise, this can jeopardize the success of subsequent exercises.

If this is the case in your course, provide fail-safe data for each exercise. State where the data is located and how to activate, or populate, that data if the student does not succeed at the exercise.

6.6 Slide Show Printout and Instructor Notes

You may know exactly why you’ve included each bullet point on each slide, but the instructor to whom you turn over your course may be left guessing. Instructor notes give the instructor more detail about the slides.

The slides do not need to be printed out at full-page size. Two to three slides per page gives the instructor enough detail.

Interview on Packt Publishing

Packt Publishing is the publisher of my book User Training for Busy Programmers. Based on that book, they published an interview with me on their site. We discuss some of the hard, real-world lessons I've learned as a technical trainer. It's a quick read, so if you're interested in training, check it out.

"User Training for Busy Programmers" is not just for programmers

I wrote User Training for Busy Programmers because I felt sorry for the programmers I worked with. Several of the software companies I have worked for had their programmers develop and deliver user training for their product. This was usually because the company started small, and did not have the budget to hire a full-time trainer. So the programmers were given the task of end user training. As the company grew, the programmers became too busy with programming to continue training and they became profitable enough to bring in a full-time trainer. In those cases, the programmers were very relieved to have me join the company!

I realized how common it was for small and medium sized software companies to have programmers, customer service representatives, and even salespeople conduct end user training. While many of these people have a natural talent for teaching, they are not professional trainers. They usually learn how to develop and deliver a software class "the hard way," by trial-and-error. And their employers have no intention of bringing in a professional trainer to take over the end user training. I wrote this book for them.

So don't be fooled by the title. Even if you're not a programmer, if you've been told to develop a software training class and you don't know where to start, this book is for you.