In the context of eLearning development, is Kanban:
- A framework for implementing agile project management?
- A way to increase the efficiency of project development teams?
- A clever strategy to reduce the number of team meetings?
Kanban is actually all of these; it offers a way to streamline the eLearning development process so that fewer projects or project elements are in development at a time, allowing developers to focus on—and complete—one project or iteration before switching gears to work on something else. It’s also a tool that can be applied to different types of project management.
“Kanban is a flexible, adaptable, visual system that, when set up properly, can provide a transparent representation of an eLearning team’s workflow. Because it provides details about each piece of work’s status in a workflow pipeline and who is currently working on it, it mitigates the need for frequent status meetings and, instead, allows workers to collaborate effectively—asynchronously,” said Angella Dagenhart, a training specialist at Dickinson College, in an email interview.
The origin of Kanban
In the 1940s, Toyota engineers pioneered an approach to inventory and manufacturing based on “just-in-time” restocking of inventory, an idea they borrowed from supermarkets’ model of stocking inventory to meet consumer demand, optimizing product flow.
Toyota applied the just-in-time approach to restocking to manufacturing processes. Factory workers and suppliers would signal the warehouse when fresh supplies were needed. This signal was a card or “kanban.” Teams would pass a kanban to other teams or to the warehouse to let them know when they had available capacity for more supplies or work. The warehouses used the same system with suppliers.
The processes Toyota developed gave rise to lean software development in the 1980s (see “Lean Software Development Emphasizes Efficient Workflow for eLearning Projects” for more information). In 2007, David J. Anderson and other innovators applied the Kanban principles to knowledge work.
According to Dagenhart, Kanban can quickly “be deployed successfully with no knowledge of overarching agile philosophies,” unlike other agile methodologies, like lean and scrum, which have much longer learning curves. Kanban can be used in conjunction with these agile methodologies or on its own.
Kanban is based on three principles:
- Create a visual model of workflow—This allows managers and team members to see bottlenecks and other hindrances to progress.
- Limit the number of projects in process—By starting new tasks only when earlier ones are complete, teams minimize task switching, which slows down the process.
- Optimize flow—When a task is completed, the next item on a prioritized “to do” list is begun. Constant analysis of the workflow allows managers to predict and avoid blockages and other problems, while also ensuring that the highest-priority tasks get the attention they deserve.
Kanban is not a system that is put in place then left to run. Teams constantly track flow, strive for greater efficiency, and pay close attention to quality, production time, and other metrics—always with an eye to increasing both the team’s effectiveness and product quality.
The Kanban board
Kanban’s name comes from the Japanese word for a card or a visual signal; Kanban project management implements this literally, with a physical or virtual board of “sticky notes” that let managers and team members see each step of a process. Each card describes a single work item or task, estimates how much time it will take, and likely identifies who is doing it. Each card is placed in a “to do,” “in progress,” or “done” column. These might appear under larger headings that represent stages, such as analysis, development, testing, and deployment.
If a task moves from “in progress” to “done,” a new task from the “to do” list can take its place. When sticky notes are lined up in a “done” column, waiting to move to the next stage, it’s easy to identify the bottlenecks in the process or areas that need additional resources. The system also highlights areas where a team member is idle, waiting for more work or supplies.
The Kanban process allows agile software development teams to apply the Toyota engineers’ just-in-time principles to workflow capacity. They match the amount of work in progress to the team’s capacity. It is flexible and allows teams to focus on the task at hand, rather than constantly juggle multiple tasks. It also makes for better planning and helps teams anticipate and avoid logjams.
“Because each member of a team can see their collective work and where it is in the workflow pipeline, they can get a clear picture of what the current workload is, as well as anticipate next-step actions to take to keep things running smoothly. Too, because the system discourages having too many items of ‘work in progress’ it discourages bottlenecks,” Dagenhart said. She added that universal participation is essential: “If not everyone is managing the work assigned to them within the system, it is not an accurate representation of the team’s work.”
Kanban improves team performance
When applied to software—and eLearning—development, Kanban allows team members to focus on completing their tasks while sustaining a big-picture view of the project’s progress.
“The primary advantage of using Kanban in instructional design is its ability to significantly reduce the disruption to individual attention and distraction while maintaining or, better, boosting a team’s productivity and the quality of the work they produce,” Dagenhart said.
She described how using a Kanban approach is helping her campus during a migration to Microsoft Office 365 software. “The working group organized to facilitate this transition is composed of individuals with differing areas of expertise from several different departments. Many of our responsibilities to the project are dissimilar, but interrelated. By using a Kanban system, we are all able to keep tabs on where the initiative is, what steps are currently in progress, issues that have come up during the process, and where our individual responsivities are in relation to everyone else’s.”
Using Kanban has produced a bonus effect that most developers will celebrate. Keeping close tabs on progress “has drastically reduced the number of meetings that would have otherwise been required to stay on target,” Dagenhart said.