Kanban, Agile and Scrum: are there any differences?
Kanban and Agile
To properly understand the Kanban method, it is important to understand its relationship to Agile and the possible points of convergence and divergence.
Agile project management focuses on parallel, adaptive workflows and belongs to various management methodologies, including Scrum and Kanban.
You can look for the fundamental differences between Agile and Kanban for a long time, but the truth is that the Kanban method is a type of Agile methodology. Thus, the idea of opposing them is, in fact, a delusion.
Kanban uses Agile principles and implements them in a specific way. Therefore, Kanban is a framework that falls under the Agile methodology.
If the values of an organization using Agile are combined with the characteristics of Kanban, the result is Agile Kanban. This practice is becoming increasingly popular in software development, which combines an agile iteration approach with a focus on the Kanban value stream. The Agile Kanban Framework focuses on visualizing the entire project on boards to increase project transparency and collaboration among team members.
But unlike Scrum or Agile, Kanban is about work states that focus on sprints and iterations. Kanban focuses on breaking down work into small tasks, visualizing them, and getting multiple items in any given work state. On a Kanban board, work always moves from left to right.
The versatility of Kanban lies in its simplicity. It fits into current workflows and takes into account existing roles and responsibilities. It can be used regardless of the industry. The content editor can use it the same way as the owner of the e-commerce object.
Kanban can be used in any knowledge work environment, especially when work arrives unpredictably, and work needs to be deployed as soon as it is ready rather than waiting for other work items.
Overall, Kanban is one of the easiest frameworks to use as it allows project managers to manage and track their projects effectively. A distinctive feature of the Kanban framework among various agile methodologies is its compatibility with the existing organizational environment.
If your workflow changes priorities on the fly, and one-time tasks can be performed at any time, Kanban is the best fit, as it provides the ability to add tasks at any stage of the work. It can also be used when there are no iterations.
Kanban and Scrum
It's worth comparing Kanban to one of the most popular agile frameworks, Scrum.
Scrum is a framework (of the "lightweight framework" category) designed for project management with an initial focus on software development. However, it is also used in other areas, including research, sales, marketing, and advanced technologies.
In other words, Scrum is a management framework in which one or more cross-functional self-organized teams create a product in increments, that is, in stages.
Scrum has a system of roles, events, rules, and artifacts. In this model, teams are responsible for creating and customizing workflows.
Unlike other popular frameworks, Kanban involves making small but meaningful changes to an existing setup. This suits organizations with a traditionalist culture where the hierarchy and roles of functional managers are considered important.
The Kanban methodology is an agile method focused on continuous improvement, increasing flexibility in task management, and improving workflow. With this visualized approach, the entire project's progress can be easily understood at a glance.
Kanban has been used in a manufacturing environment to manage inventory throughout the supply chain using a practice called just-in-time (JIT) manufacturing. In project management, the Kanban methodology adopts the same concept, ensuring that the amount of work required matches the work capability of the team.
Kanban is a pull system. The pull system is a lean manufacturing method that controls workflow by replacing what has already been done. A vending machine is a perfect example of a pull system: items will only be refilled when they run out. Kanban exactly fits this definition.
Scrum and Kanban are considered the cornerstones of the Agile implementation methodology. According to PMI's "Pulse of Profession 2019" report, over 57% of organizations have used various Agile methodologies, with the largest share committed to using Scrum and Kanban.
Kanban and Scrum focus on a consistent product release and keep iterating until perfection is achieved. However, their approach is different. The Kanban and Scrum frameworks implement the values and principles of the Agile Manifesto, but the way they do it is completely different.
The most important difference between Kanban and Scrum is that the former is a method, and the latter is a framework. Kanban builds a continuous delivery model where teams create value as they are ready, and Scrum organizes work in sprints.
Which solution to use depends on the nature of the process. However, it can be said that Kanban offers a more personalized approach, while Scrum relies on predetermined rules.
Another key differentiator between the two is Scrum and Kanban's mindset and underlying belief systems.
To understand this, take a look at the table below.
Kanban - adaptive method
Scrum is a prescriptive framework
1. Start with what you are doing now
2. Accept evolutionary change
3. Encourage acts of leadership at all levels
4. Focus on customer needs
5. Manage work
6. Review your service network regularly
Cadences - command-level cadences
- Service-oriented cadences
- Fixed duration sprint
- Sprint planning
- Daily Scrum
- Sprint Review
- Sprint Retrospective
- No predefined roles are required
- Product Owner
- Scrum Master
- Development Team
- Cycle time
- Work in Progress
- Planned capacity
So Scrum revolves around a fixed-length "sprint", and work is done in small batches. Kanban focuses on the continuous improvement process, and tasks are performed orderly.
Kanban can be easily changed at any time because it is task-based, while Scrum requires one sprint plan to be completed before any changes can be made.
This makes Kanban a suitable option for extremely versatile projects, while Scrum is better suited for projects that require work to be done in batches. Kanban also has no prescribed roles. Scrum has predefined roles - Scrum Master, Product Owner, and Team Member.
Finally, if you've ever been part of an Agile team, you may have used the Kanban board's relative: the Scrum board. Scrum boards are very similar in appearance to Kanban boards, and most of the teams that use them follow the same basic principles.
The fundamental difference between Kanban boards and Scrum boards is that Scrum boards are designed to be used by teams working in time-limited iterations. In comparison, Kanban boards are used by teams working on continuous flow. In other words, Scrum teams use their boards to “burn” all tasks, while Kanban teams use them to keep moving work through the process.
So, it becomes clear that where Kanban pulls, Scrum pushes. Kanban is flexible, while Scrum is more structured. Kanban limits work in progress to balance work against actual capacity, while Scrum relies on continuous evaluation. Kanban is less prescriptive than Scrum; therefore, Kanban users are expected to experiment with the process to adapt it to their environment.
But, if it seemed to someone that Kanban is combined with Scrum, he is not mistaken. Many IT development teams mix work styles in the so-called "Scrumban". However, "pure" Kanban advocates argue that some Scrum practices must be abandoned because they waste time without directly adding value to the client. For example, fixed-length sprints, user story evaluations, sprint and release planning meetings, and strict prioritization of user stories in the Product Backlog.
The teams that make up the Scrumban group retain the concept of fixed-length Scrum iterations. Each Sprint begins with a Sprint Planning Meeting, where the content of the next iteration is agreed upon with the Product Owner, and the initial version of the Sprint Backlog is determined.
Considering the agile scheduling rules, Product Backlog stories take precedence, and each team must:
Determine your expected speed
Score user stories using predefined values (0, 1, 2, 3, 5, 8, 13, and 20).
The content of the Sprint Backlog should not exceed the estimated speed. A Sprint Review and a Sprint Retrospective are organized at the end of each Sprint. The Scrumban teams present their results to the Product Owner at the review. At the retrospective meeting, participants meet to evaluate the development process in the previous sprint and make suggestions for improvements in the next.
The Scrum mentioned above environment is complemented using a Kanban board and WIP limits. The whiteboard visualizes the workflow, and WIP restrictions prevent team members from working on multiple work items simultaneously, minimizing lead time. The Kanban board includes a "Sprint Log" column that opens at every sprint planning meeting.
So, it is important to understand that the Kanban method is not a software development practice or a project management methodology. Kanban says nothing about how software should be developed. It says nothing about how software projects should be planned and implemented.
Thus, Kanban is not a management structure like Scrum. However, Kanban's goal is to improve its workflow continuously. Therefore, the Kanban Method is incrementally improving everything an organization does: software development, IT/operations, recruitment, marketing and sales, purchasing, etc. Almost any business function can benefit from applying the principles of the methodology Kanban.
The beauty of Kanban is that it can be applied to any process or methodology. Whether using Agile methods (Scrum, XP, etc.) or more traditional methods (waterfall, iterative, etc.), there is always an opportunity to apply Kanban to improve processes incrementally, reduce cycle times and improve flow.