Water is fluid, soft, and yielding. But water will wear away rock, which is rigid and cannot yield. As a rule, whatever is fluid, soft, and yielding will overcome whatever is rigid and hard. This is another paradox: What is soft is strong. – Lao Tzu
In recent years, there has been a trend that shows preference for agility in the process of creating learning products and therefore the need to rethink ADDIE. In this article, I share why the agile approach is powerful for creating high quality learning experiences and how ADDIE can be used to facilitate agility.
What does “agile” mean?
Agile refers to a project management method or philosophy used in a number of areas such as software development and engineering. The agile method is iterative and incremental, interactive and highly flexible (Wiki). According to this overview of agile project management, agile approach focuses on “continuous improvement, scope flexibility, team input and delivering essential quality products”. The agile manifesto < http://agilemanifesto.org/> for software development states:
We are uncovering better ways of developing software by doing it and helping others do it. Through this work, we have come to value:
- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Customer collaboration over contract negotiation
- Responding to change over following a plan
That is, while there is value in the items on the right, we value the items on the left more.
In summary, the 12 principles of the manifesto include:
- Early and continuous delivery
- Be open to changing requirements
- Frequent delivery from a couple of weeks to a couple of months
- Frequent and close collaboration among project team members
- Autonomy and appropriate support for project team members
- Communicate face-to-face where possible
- Use the working product as the primary measure of progress
- Be able to maintain constant a constant pace indefinitely
- Strive for technical excellence and good design
- Prioritise simplicity
- The teams are self-organising
- Regular evaluation of the process and readjustment where needed
Why is there a need for “agile” in instructional development?
Imagine a time when much effort was spent on a big design upfront for a learning project and the different learning components were developed based on this big design. However after the stakeholders see the finished learning product, they want major changes! A lot of rework would need to be done to accommodate their requested changes. Would you be reluctant? In reality, things might not be as dramatic. But clearly, this approach of design and development does not encourage changes or continuous improvements which are important in creating high quality and innovative products.
On the other hand, agile principles encourage openness to changing requirements and continuous improvements. This is especially important in today world when organisation changes are the norm, and as a result, requirements for learning projects might change. Project changes could come from organisation changes, changes in stakeholders’ mind of what they need, and changes from learners’ feedback and input. Changes can also emerge as the project goes on and we have a better picture of what might be an effective learning solution to the problems posed.
The agile approach helps us to:
- Address project changes productively and timely
- Create high quality, innovative and sustainable and transforming learning solutions
- Reduce amount of rework and thus time spent
- Reduce frustration.
Agile in Instructional Design
There are several agile models in Instructional Design. Here are the main ones that you may have seen around (see Figure 1).
- SAM (Successive Approximation Model) from Dr Michael Allen at Allen Interactions
- LLAMA (Lot Like Agile Method Approach) from Megan Torrance at Torrance Learning
- AGILE (Align, Get Set, Iterate, Implement, Leverage, Evaluate) from Dr Conrad Gottfredson
Figure 1. Overview of Agile Instructional Development Models
SAM and LLAMA share some commonalities with ADDIE, but certainly are a lot more detailed in how phases are sequenced and iterated. In particular, the SAM model provides a lot of details, guidelines and recommendations of what to do in each phase. If you want a ready-to-use agile instructional development model, do check out one of these models.
Note the assumptions about ADDIE that these models’ authors have established. In reality, ADDIE is a flexible model, not a linear process, and can be used to build different types of learning solutions.
Adding agile elements to ADDIE
The models mentioned in the previous section are great and you should definitely check them out. Alternatively, rather than using a specific agile model, we can take advantages of agile methodologies by using the agile manifesto’s values and principles to guide the use of ADDIE in the development of learning products. ADDIE provides us with foundational instructional design processes. Agile is about the manner in which we carry out these processes in terms of “people, communications, the product, and flexibility”.
According to Sidky (2007), 12 agile principles can be grouped into five categories. I modified these categories by combining two of them and add the Simplicity principle as a separate category to this grouping as I think it is hard to place this under any of Sidky’s categories. The Simplicity principle is essential as it enables us to follow other principles more effectively, i.e. allow us to be flexible for changes, deliver a functional and quality learning product more frequently, and collaborate better.
The modified grouping includes the following 5 principles. These principles are applicable in all phases of ADDIE, but are specially very important in Design, Development, and Evaluation. In each principle, I list a number of recommended practices and where applicable, specify the ADDIE phase that a practice falls under. If no ADDIE phase is identified, the practice is either applicable in all phases or a project management practice. Since these principles work together, you may see some practices that align with more than one principle. For example, no big design upfront is a very important practice that supports all of the 5 principles.
- Don’t overcomplicate things when carrying out ADDIE tasks
- Determine what tasks really need to be done
- Determine what features are really needed
Embrace change to deliver customer value
- Expect and welcome changes in requirements
- When gathering requirements, instead of specifying a fixed set of requirements, be open to the fact that these are tentative and might be iteratively evolved (Analysis)
- Prioritise and determine what requested changes will be made
- Avoid extensive/over documentation and unnecessary paperwork
- Involve the customers/stakeholders in determining what features to build in each iteration
- There should be no big design up front (Design)
- Start with a small set of features
- Gradually add more for future iterations
- Make it as simple as possible (Design)
- Gather frequent feedback from learners, the customer and other relevant stakeholders (Evaluation)
- As part of project meetings, carry out regular review and reflection to fine tune both the product and the process (Evaluation)
Plan and deliver the learning product frequently
- Plan strategically (Project Management)
- Address risk elements as early as possible
- When necessary, plan for features, not tasks
- Plan for smaller and frequent releases or iterations to collect feedback
- Set project milestones around iterations or releases rather than around completion of requirements and documentation
- Plan collaboratively with all stakeholders
- Adjust plan as necessary throughout the project
- Allow some flexibility when calculating project estimates to leave room for changes
- Carry out accurate analysis (Analysis)
- Use tools that can provide quick ways to prototype a design, demonstrating ideas effectively and facilitating better communication with developers and clients (Design)
Be human-centric and emphasise customer collaboration
- Create a work environment that facilitates collaboration and allows tacit knowledge flow between team members, e.g. everyone in one room
- Empower the team to be self-organised, i.e. can make their own decision, are motivated, and is responsible for tasks as a team
- Collaborate and communicate effectively
- Where possible, communicate face-to-face
- Collaborate with other relevant people
- Where possible, have team members and learners interact with each other frequently
- Gain commitment and set expectations of what is required from customers/stakeholders
- Help customers understand the nature of evolutionary development to help embrace change
- Gather input from all types of stakeholders
Value technical excellence
- Make sure to have experienced people in the team
- Carry out daily progress tracking meetings (Project Management)
- Encourage team members to volunteer for tasks or if not, have the whole team be responsible for the task (Project Management)
- There should be no big design up front. Employ low fidelity prototyping or wireframe methods to test out design ideas and concepts. (Design)
- Due to the iterative nature of the agile approach, have an effective version control system (Development)
- Carry out evaluation for each iteration (Evaluation)
- Prioritise feedback to know what to be implemented in the next iteration (Evaluation)
- Write test cases or testing protocol to make sure all features work (Evaluation)
Which of the practices above would you use in your current/next project to take advantages of the agile approach?
Agile eLearning development with SAM (2017) Available at: http://www.alleninteractions.com/sam-process (Accessed: 27 January 2017).
Agile management (2016) in Wikipedia. Available at: https://en.wikipedia.org/wiki/Agile_management (Accessed: 27 January 2017).
Agile project management for dummies cheat sheet (no date) Available at: http://www.dummies.com/how-to/content/agile-project-management-for-dummies-cheat-sheet.html (Accessed: 27 January 2017).
Manifesto for agile software development (2001) Available at: http://agilemanifesto.org/ (Accessed: 27 January 2017).
Neibert, J. (2013) Get in GEAR with launch of AGILE instructional design course. Available at: https://www.learningsolutionsmag.com/articles/1235/get-in-gear-with-launch-of-agile-instructional-design-course (Accessed: 27 January 2017).
Sidky, A. (2007) A structured approach to adopting agile practices: The agile adoption framework. PHD thesis. Blacksburg, Virginia. Available at: https://vtechworks.lib.vt.edu/bitstream/handle/10919/27889/asidky_Dissertation.pdf
Torrance, M. (2014) Reconciling ADDIE and agile. Available at: https://www.learningsolutionsmag.com/articles/1479/reconciling-addie-and-agile (Accessed: 27 January 2017).