All too often, the genesis of an eLearning project can be traced to a stakeholder saying “We need a training module on _______,” and someone is told to make it happen. Also common is an additional instruction to “make it mobile,” or whatever the technology du jour happens to be.

Adoption of an instructional development (ID) model can apply a brake to the process. While managers might still ask for training, when the someone—maybe a team of designers and developers—starts working on it, the development model just might make them pause to clearly define the need, rather than jumping right into creating “training.”

Whichever model they use, they are likely to start with a needs assessment—clearly defining the need, or the gap between current and desired results.

Is there a skills gap? Do employees lack specific information or knowledge? Do they need to develop “soft” skills, like leadership or communication? Or is the gap in “hard” skills, like coding or Spanish or accounting? Do employees need compliance training or guidance on following the company’s social media policy? The response to each of these needs should be different.

Using a development model, the team can follow logical steps, starting with needs assessment and culminating in eLearning or a job aid that is appropriate to the need. What is an instructional development model and how can developers use it to accomplish this miracle of logical problem-solving?

As in science, economics, and many other disciplines, using a model helps with the identification and analysis of a problem, the description and prediction of potential ways to address the problem, and the conceptualization, design, and implementation of a solution.

While most ID models include similar steps or stages, they tend to land on a spectrum that ranges from sequential models, where each phase is completed before the next is started, to iterative and incremental models. Developers using an iterative model produce several prototypes, in sequence, each representing a larger portion of the final functionality. An incremental model produces small portions of the final product, completing and testing each piece before moving to the next piece. Some models entail testing early versions of the eLearning on potential learners and revising as needed to ensure that the final product meets the needs of actual users. Each approach has its fans and its detractors, as each has advantages and disadvantages.

Sequential or waterfall models

Sequential models are often called “waterfall” models, since each phase is completed before the next is started, and developers cannot back up or revisit an earlier phase.

Figure 1: ADDIE is a sequential approach: Developers can’t go up the waterfall

A common waterfall ID approach in eLearning design is ADDIE: Analyze, Design, Develop, Implement, Evaluate.

  • Analyze: Identify target audience, learning goals, and success criteria; define technical requirements and constraints
  • Design: Determine the format and presentation method of the course—lectures, video, simulations, games—and the assessment criteria
  • Develop: Produce the materials defined in the design phase
  • Implement: Deliver the course to the learners
  • Evaluate: Use feedback from the learners to determine what is working—and what is not

Not all design models that use or are based on ADDIE follow the steps in a rigid linear manner, but the model is primarily regarded as sequential. ADDIE is a solid, basic ID model created for the US military in 1975 to develop effective training for increasingly complex topics.

ADDIE has been used for vast projects; the UN’s Food and Agriculture Organization (FAO) recently published a detailed white paper describing its creation of eLearning courses using ADDIE.

Some see ADDIE as costly and time-consuming, but admirers cite ADDIE’s flexibility, using it with instruction targeted to both individuals and enormous groups. A key criticism of ADDIE and other sequential approaches, though, is their lack of flexibility—serious flaws might not be caught until the final phase, evaluation, when correcting them is costly or impossible. That has given rise to iterative and incremental models, many based on ADDIE.

Iterative and incremental models

It can be difficult to anticipate all the ways learners will interact with eLearning, which means that a completed and delivered eLearning module might miss the mark. Therefore, one modification of ADDIE uses it to create successive versions of a product, using information gathered in the evaluation phase to launch the next analysis and design phases. Many of these iterative or incremental development models follow the same phases as ADDIE, but with tweaks. They are sometimes described as “mini-waterfalls” or “rapid prototyping.”


One model that uses this method is SAM, the successive approximation model. SAM starts from the premise that eLearning is never perfect and can always be improved. It also assumes that a functional prototype, which learners can “test drive,” is the best way to spot design or implementation flaws.

At its simplest, SAM envisions an in-depth preparation or evaluation phase, similar to analysis in ADDIE, where designers define and analyze the learning goals. They then create a design and develop a prototype, which undergoes user-testing (Figure 2). Developers can repeat these steps in multiple iterations; the evaluation of one prototype leads to improved design in the next. Each successive prototype incorporates more of the final functionality, as well as design changes—which can be significant—until a final or “gold” version is completed. While critics call the possibility of endless iterations “death spirals,” the creator of the SAM method, Michael Allen, suggests three iterations as the “magic number.”

Figure 2: Three is the “magic number” in SAM

However, that can be misleading. In a more complex version of SAM, the design phase can undergo three iterations of “design→prototype→evaluate.” Only then does the development phase begin; it, too, can undergo three separate iterations of “develop→implement evaluate.” In each phase, actual learners test the design or prototype. For a large and complex eLearning project, Allen suggests using SAM to produce an alpha, a beta, and finally a gold version of the course.

Agile software development

Inherent in SAM is the idea of incremental development, based on agile software design. Agile methods of software or eLearning development, described in detail in in Megan Torrance’s article What Does It Mean to Be Agile?, include Scrum, Lean, and Kanban.

Agile adds a literal twist to the linear steps of ADDIE, according to Torrance in Reconciling ADDIE and Agile (Figure 3).

Figure 3: Multiple mini-ADDIEs: Waterfalls become whirlpools (figure used with permission of Megan Torrance)

It adds a testing phase after the design and development of a bare-bones implementation. The feedback spurs a new design and development cycle. Each iteration is usable enough to give learners the opportunity to offer meaningful feedback—and each is incrementally more complete. Agile models tend to be fast-moving and deadline-driven; seen as both a plus and a minus, depending on whom you ask. It allows for, but could also invite, significant changes throughout the development. Designers (or their managers) usually decide on the number of iterations before design begins—otherwise, the cycle could repeat endlessly.

Can’t we all just get along?

So, is ADDIE, agile, or SAM the best approach for eLearning design and development? To many eLearning developers, choosing is not necessary. Many approaches synthesize the best of each model. What’s essential is to define the needs clearly and follow a coherent process to create eLearning that meets those needs.


Gustafson, Kent and Robert Branch. Survey of Instructional Development Models. 1997.

United Nations Food and Agriculture Organization. E-learning methodologies: A guide for designing and developing e-learning courses. 2011.