Both Kanban and Scrum have their fans and success stories. When translated into software, the main differences that Kanban vs. Scrum comparisons make are still there:
Kanban is a method for optimizing and managing workflows, which lets you visualize processes on a Kanban board and continuously process work items. The work in progress limits at each stage of the workflow allows your team to optimally use its capacity. In other words, Kanban helps you optimize your existing process with a set of principles.
Kanban has 4 principles and 6 core practices:
Scrum is a highly prescriptive framework compared to Kanban. Scrum requires detailed and restrictive planning, has predefined processes and roles.
The Scrum framework is based on 3 pillars:
In Scrum, the work is divided into smaller tasks that have to be completed in a predefined time (sprint). Also, adding new work items during a sprint is highly discouraged, making new work waiting for newsprint and reducing the team’s ability to react to change.
Now that we know the fundamental differences between the two concepts, let’s dig in a little bit deeper and see the similarities and the differences between Kanban and Scrum software solutions.
Scrum has a set of mandatory roles that you must implement:
The Product Owner is in charge of the backlog and gives direction to the team. The Scrum Master dictates the timelines, and the team processes the work that is agreed on during the Sprint planning.
Kanban allows you to keep your current structure without making drastic changes. Still, there are two Kanban roles that you can implement but are in no way mandatory:
The Service Delivery Manager is responsible for ensuring that work items pass efficiently through the process by keeping an eye on the board and assisting team members when there’s a problem. The person in this role has to facilitate continuous improvement within the team and suggest improvement activities.
The Service Request Manager is usually a secondary role of the team manager. This stakeholder is responsible for managing the process policies and consistency, improving corporate governance, and reducing the risk associated with a single individual.
Planning in Scrum happens iteratively at the beginning of each Sprint. A dedicated meeting facilitates it for this purpose. There, the Dev team, Product Owner, and Scrum Master gather to break down user stories into tasks.
Then, they estimate how much time would be required to finish everything on the list. When there’s an agreement, the team commits to finishing all items in the upcoming Sprint and starts working. If there’s a change of priorities mid-sprint, the current Sprint must be aborted, and the planning process is restarted.
The Kanban method relies on a probabilistic approach to planning, which is a prognosis based on past workflow data. It must be based on work types, size, classes of service, and various other factors related to the work itself and not so much on the team that processes it.
In Kanban, your workflow is continuous. Therefore, it is a common practice to extend the Requested section of a Kanban board by adding roadmap columns like “This month”, “Next Month”, etc. to visualize planned work.
As a result, when there’s available capacity, your team pulls a new work item towards “In Progress” according to its priority. Finally, when you know what’s the average time required to finish a task of a given type and size and how many work items your team finishes per week, for example, you can plan the start and end dates of each task.
Kanban preaches deferring commitment as long as possible to ensure agility and deliver value frequently and at the right time. As WIP limits prevent team members from working on multiple tasks, everybody commits to finishing what they have started before engaging in new work.
In Scrum, the commitment for a Sprint is in the form of forecasting. When the team doesn’t anticipate their capacity accurately, or unexpected problems arise, either the sprint fails, or personal heroics are required to finish everything on time.
When looking at the argument Kanban vs. Scrum, you can’t ignore the key performance indicators (KPI) that will become part of your work life when you make a choice.
Scrum has two specific KPIs that you should focus on:
Velocity is based on actual story points completed, which is typically an average of all previous sprints. It is used to plan how many product backlog items the team should bring into the next sprint.
Capacity is how much availability the team has for the sprint. This may vary based on team members being on vacation, ill, etc. The team should consider the capacity in determining how many product backlog items to plan for a sprint. If capacity is expected to be less for the sprint, the team has to consider taking on fewer items from the product backlog. Likewise, if more team members are recently added, the team may want to take on more product backlog items.
To keep a check on them, usually, Scrum teams implement a couple of charts:
The Burndown chart is a visual representation of how much work remains to be completed versus the remaining amount of time in the Sprint. On the other hand, Velocity charts are usually in the form of histograms showing the past performance of the Scrum team.
In Kanban, the most important metrics are:
Shortly explained, Lead time is the period between a new task’s appearance in your workflow and its final departure from the system. Think of it this way – lead time starts ticking as soon as you commit to working on a task or customer order.
On the other hand, Cycle time begins when the new arrival enters the “in progress” stage, and somebody is working on it.
Your goal is to reduce the values of each metric (which are usually measured in days) over time and keep your process efficient all the time. To keep a close eye on them, there are two primary charts that you can implement:
The CFD will show you how stable your flow is and help you understand where you need to focus on making your process more predictable. On the other hand, the cycle time histogram is a simple way to monitor your process performance over time.
As we already stated, in Kanban, meetings are optional. Still, if you decide to implement them, you can choose between 7 different types that will keep your team aligned:
You can learn more about each of them from our dedicated article on the topic, but what’s important to understand is that you can combine them or skip those you don’t find necessary. For example, we are doing the Service Delivery Review and the Replenishment & Commitment meeting together every week. So as long as it works for your team, you’ve got the liberty to improvise.
Each Sprint cycle consists of 4 mandatory types of meetings:
Sprint planning is held at the beginning of each Sprint. If the Sprint cycle is 1 month, it is not unusual for these meetings to last up to 8 hours. After everything is delegated and committed, the team meets every day to discuss progress and share any problems that occurred. At the end of each sprint, the team and any relevant stakeholders meet to review what was achieved. At last, the Retrospective is dedicated to analyzing what worked and what could be improved during the next iteration.
Visual management boards are applied in both Kanban and Scrum. However, there are some fundamental differences between them.
The Scrum board is an extension of the product backlog. When the team commits to a given amount of work, it is added to the Scrum backlog on the board, and then the team starts putting work in progress at their will. The goal is to get everything one by the end of the Sprint. Logically, the board is reset after each iteration.
On the other hand, the Kanban board is a continuous map of the team’s process. When building it, your goal is to create a sustainable Kanban system that could stand the test of time. A proper Kanban board has WIP limits visualized on it. The goal is to control the amount of work that enters and leaves the process so you can improve delivery speed.
Just like the Kanban method itself, Kanban software relies heavily on Kanban boards, where your team would map all its processes and all of the work items. This allows for unprecedented work visibility and full transparency into its progress.
Each work unit becomes a card on a board with columns that help visually communicate work stages and swimlanes that could visualize the priority or type of work inside each lane.
Scrum software used to focus more on largely text-centered interfaces, turning work epics function into something more like folders with items inside. Recently, Scrum tools started integrating boards similar to those in Kanban software to display work stages and work items themselves visually.
However, on a Scrum board, your team would have to add all stories (units of work) at the beginning of each sprint and keep the list intact until the end of a sprint.
Only when all of them are completed can the sprint be considered a successful one, and any new work can be reviewed and started. After each sprint, there is a retrospective meeting, and the board should be reset and prepared for newsprint. Additionally, the Scrum board is usually owned by a cross-functional team with all the skills required for the completion of the sprint.
Last but not least, in Scrum, the work in progress limits are predefined for each sprint. This is because the team commits to accomplishing an exact number of tasks during the sprint. Respectively, the total predefined number of tasks is their WIP limit.
On the other hand, a Kanban board doesn’t have to be owned by a specific cross-functional team. Kanban is more about the efficiency of a workflow. Moreover, in Kanban, WIP limits are set per workflow stage. This ensures that bottlenecks won’t appear in the work process, or if they do, you can easily identify them and take action.
In a good Kanban software tool, the columns on the board are labeled to show workflow states and set a WIP limit for each column that restricts the maximum amount of work that can enter each work stage.
Additionally, on a Kanban board, there are no time restrictions (such as sprint length in Scrum tools), and new cards (work items) can be added at any time if WIP limits (which represent the team’s optimal capacity) allow it. Therefore, a Kanban board doesn’t need to be reset periodically.
In other words, Kanban software tools are based on and actively support the continuous flow of work. Advanced Kanban boards also let you collect data for each piece of work that appears on your Kanban board and use it for locating bottlenecks, improving cycle times, and else.
There is a backlog in a Scrum software tool where all future activities for the sprint are placed. To keep the pace of work on the right track, Scrum software tools are equipped with a Burndown Chart.
It is a fundamental performance indicator of a Scrum system that illustrates how much work remains to be completed in the project.
Generally, Burndown Charts might be good for a short overview of current progress relative to the plan, but if there is a gap in the process, it is hard to be identified through the chart. After all, it simply displays a summary of work for all team members. In other words, when something goes wrong, you will see it as a drop in total work finished.
However, deducting the reason for that drop is up to you alone – most Scrum tools will not help discover the true roadblock of your project.
On the other hand, Kanban software doesn’t have a Burndown chart because there is no predefined length of time in which a backlog should be finished.
Instead, digital Kanban boards usually have a Cumulative Flow Diagram, which automatically collects data for every task that enters the workflow.
As a result, CFD can visualize both work items along with the time they have spent in specific work stages. This lets the team immediately see when a specific work stage starts blocking cards – the longer each card stays at a specific stage, the wider the section of this stage on the diagram will get.
This means you can directly locate problematic parts of your workflow and act instead of simply being notified that things are not going according to the plan.
In Scrum software solutions, estimation is an essential part of the process, and the entire team does it during the sprint planning meeting.
During the planning stage, your team agrees on the levels of difficulty for each user story. Afterward, user stories must be prioritized.
The estimation process’s main purpose is to determine how many work items can be executed by your team within the predefined period of the sprint. The Scrum-based software lets you assign story points to each story and keep track of them.
The estimation process is a time-consuming activity, and it is often of questionable value. This is because teams can rarely forecast the exact amount of work that can be finished for a sprint and the initial estimation often turns out to be wrong.
There is not a predetermined estimation of work tasks in a typical Kanban software solution, but only a task size field. The value that you enter there corresponds to the relative amount of effort needed to complete a given task. However, it is up to your team to decide whether to estimate the sizes of their work tasks or not.
In Kanban, it is recommended to break down large assignments into smaller tasks. The idea is to keep tasks as small as possible without decreasing the value of the final deliverable. This helps during the execution of the tasks and supports a steadier flow that is much more reliable than bursts of work.
Instead of estimation, good Kanban software solutions offer workflow forecasts. Because it uses historical data of actual work items, and advanced Kanban board analytics can forecast what amount of work can be completed within a predefined time in the future.
For example, the analytics module in Restyaboard features a Monte Carlo simulation. This tool can provide you with a statistically correct approximate number of tasks that your team is likely to complete within a specified time frame. All of this is mathematically calculated based on the previous history of the work of a specific team.
Unlike Scrum tools, Kanban software gives you predictions based on historic data and not based on the team’s unreliable assumptions.