Introduction to Kanban and Scrum
kanban is all about visualizing your work, limiting work in progress, and maximizing efficiency(or flow). Kanban teams focus on reducing the time it takes to take a project from start to finish. They do this by using a kanban board and continuously improving their flow of work.
Scrum teams commit to ship working software through set intervals called sprints. Their goal is to create learning loops to quickly gather and integrate customer feedback. Scrum teams adopt specific roles, create special artifacts, and hold regular ceremonies to keep things moving forward.
Kanban vs. Scrum
Many large companies have adopted either Scrum or Kanban for project management. Teams in companies like Apple, Valve, Google, Amazon are using Scrum whereas some like HP, Pixar, Zara, Spotify have gone for Kanban.
It is clear that both Scrum and Kanban have their merits and demerits. It should be noted that Kanban usually works well with smaller projects whereas Scrum is much more beneficial for large projects. It depends on the team which framework it believes will be best suited for achieving the end goal. .
|Cadence||Scrum processes place heavy emphasis on schedule with a prioritized list of story points. This iterative process enables accurate estimations of work flow and effective management of multiple projects.||There are no required time boxes or iterations. While the Kanban method is iterative in nature, the continual improvement is expected to occur in an evolutionary fashion as work is continually completed.|
|Release methodology||At the end of each sprint||Continuous delivery|
|Roles||A Scrum Master, Product Owner and Team Members make up a Scrum Team.||No required roles.Roles are not required to be cross functional.|
|Work Boards||Columns are labeled to reflect periods in the work flow from beginning through the team’s definition of done.||Columns are likewise labeled to show work flow states, but also publish the max number of stories allowed in column at once.|
|Change philosophy||Teams should not make changes during the sprint.||Change can happen at any time.|
Scrum Teams are required to commit to specific amount of work. It is important to identify all the tasks, prioritise them and estimate the number of hours each task will take or number of story points that are assigned to it. A commitment should then be provided based on this estimate.
Commitment is optional for teams following Kanban. Thus, teams work at their natural speed. Sometimes they may deliver more while other times they may deliver less in the same time duration.
Since Scrum demands commitment, any obstacles that arise need to be immediately dealt with. The earlier it is done, the better they can retain their momentum and deliver accordingly.
The work and progress in Kanban is completely transparent and so the teams can spot obstacles and bottlenecks easily. They are thus able to avoid such obstacles and ensure smooth flow of work.
Types of teams
In Scrum, cross functional teams are necessary as they are better able to deal with any disruption that may cause a bottleneck in the process. However cross functional team doesn’t mean that everyone is equipped to perform every task. It means that certain members of different teams should be equipped with various other important skills, and utilise them as and when required.
Instead of cross functional teams, Kanban encourages specialised teams as the workflow is intended to be used by any and all teams involved in the project.
Focus of team
In Scrum, all the teams focus to collaborate and complete the tasks to produce something greater. Scrum encourages conducting daily standup meetings to educate every member of other’s responsibilities. They work together and help each other to achieve their team goals.
In Kanban, teams strive to achieve goals and reduce the amount of time to complete the entire process. A reduction in the average time cycle is one of the indicators of success here.
Since Scrum places heavy emphasis on its schedules, new items cannot be added to ongoing iterations. Only when the current sprint is completed can they take on another sprint. Gradually teams get adept at estimating and scheduling sprints accordingly.
Kanban is more iterative in nature due to lack of timeframes. And so new items can be continually added whenever additional capacity is available. When any tasks moves from ‘in-progress’ stage to ‘completed’ stage, a new task can take its place immediately.
A sprint backlog is owned by only one team at a time as Scrum encourages cross functional teams. Each team has all the necessary skills to successfully complete all the tasks during the sprint.
Kanban boards have no ownership. They can be shared by multiple teams as everyone is dedicated to their own relevant tasks.
Roles and responsibilities
Scrum, every individual has a set role and responsibilities. They are assigned the roles of Scrum Master, Product Owner, Team members or Stakeholders where every role has its fixed responsibilities and no one ideally should play more than one role at a time. The scrum team itself also must be cross-functional, which is to say that one team must have all the resources necessary to complete the entire sprint’s work.
Kanban does not have set roles and it provides complete flexibility in terms of individual responsibilities. In the absence of roles, individuals are assigned work according to their specialisation or preference.Under Kanban, no set roles are prescribed. Practically speaking, it makes sense for someone to serve as a project manager or supervisor, especially for larger more complex Kanban projects, but the roles should theoretically evolve with the needs of the project and the organization.A Kanban team is not required to be cross-functional since the Kanban work flow is intended to be used by any and all teams involved in the project. Therefore, a team of specialists and a separate team of generalists may be working on different aspects of the same Kanban project from the same board, and that’s ok.
The board itself
While very similar, the Scrum Board and Kanban Board are different animals.
On a Scrum board, the columns are labeled to reflect periods in the work flow beginning with the sprint backlog and ending with whatever fulfills the team’s definition of done. All the stories added to the board at the beginning of each sprint should be found in the final column at the end of that sprint or the sprint was unsuccessful. After the sprint retrospective, the board is cleared and prepped for the next sprint.
On a Kanban board, the columns are likewise labeled to show work flow states, but with one vital difference: they also publish the maximum number of stories allowed in each column at any one time. This enforces the team-determined limitations Kanban prescribes for each condition. Since each column has a limited number of allowed stories and there are no required time boxes (such as sprint length), there is no reason to reset the Kanban board as work progresses. It will continue to flow for as long as the project continues, with new stories being added as the need arises, and completed stories being re-evaluated should it be necessary.
How are Scrum and Kanban the same?
Both Scrum and Kanban allow for large and complex tasks to be broken down and completed efficiently. Both place a high value on continual improvement, optimization of the work and the process. And both share the very similar focus on a highly visible work flow that keeps all team members in the loop on WIP and what’s to come.
How are Scrum and Kanban different?
As alluded to above, there are a number of differences in both the philosophy behind and the practical application of Scrum and Kanban. While the individual differences are many, they can be grouped into the following three buckets:
The Scrum process
The Scrum process encourages team members to evaluate what is working and what is not. Communication is an essential part of the scrum process. It is carried out through meetings called Events. Scrum Events include:
The Daily Scrum is a small meeting that happens at the same place and time each day. At the end of every meeting, the team reviews work that was completed on the earlier day and plans what work need to do in the next 24 hours. In the daily scrum team meeting, members speak up about any problems which may become the obstacle to the project completion.
Sprint Planning Meeting
Sprint refers to the time frame in which work must be completed, generally its 30 days. In this sprint plan meeting, everyone should help to set the goals. In the end, at least one increment of software should be produced.
A Sprint Retrospective meeting take place after a Sprint ends. In this session, everyone reflects on the Sprint process. A team-building process may conduct in this phase. An essential goal of a Sprint Retrospective is continuous improvement.
In the Kanban process, everything is gradually improved whether it is software development, Staffing, Marketing, Sales, Procurement, etc. The Kanban Method follows a certain set of principles for managing and improving the flow of work.
Four principles of the Kanban Method are provided below:
1. Visualize Work
By creating a visual model of work and workflow, It helps to observe the flow of work moving through the Kanban system.
2. Limit work in process
It allows team members to decrease the time taken by item to travel across the Kanban system.
3. Focus on flow
By using work-in-process limits and developing team-driven policies, you can optimize Kanban system to improve the smooth flow of work.
4. Continuous Improvement
When Kanban system is in place, it acts as a foundation for a continuous improvement. It helps teams to measure their effectiveness by analyzing tracking flow, quality lead times, etc.
Pros and Cons to Kanban vs Scrum
Neither methodology is going to fit perfectly, so it’s worthwhile to examine the pluses and minuses of both.
- Alignment – Kanban boards keep everyone on the same page.
- Exposing chokepoints and bottlenecks – When columns start getting too long, they indicate a disconnect between resources and demand.
- No hard-and-fast rules – True flexibility regarding prioritization, decision-making, what processes are necessary to enter or exit each stage
- Flexibility – The queue of work to be done can be rearranged and reprioritized based on new data and strategic inputs without impacting the rest of the product development workflow.
- Timeless – Kanban boards have no dates. Additionally, there’s no way to know if an item is one day or three months away from exiting to the next column within a particular stage.
- Potentially outdated – Like any artifact, if you don’t update the Kanban Board, it’s not accurately reflecting things.
- Understandable – Scrum has no shortage of firmly established and documented processes, nomenclatures, processes, and timelines.
- Rapid feedback – Because Sprints are so short, and there’s ample opportunity to release things, get input, and incorporate it into a future Sprint. Plus, there’s flexibility regarding what the team will work on in the next Sprint right up until it begins.
- Daily meetings – The ceremonies of Scrum (including daily standups) mean issues don’t fester for long as everyone’s interacting daily to discuss things.
- Inflexible – True Scrum is very strict about how things happen and who can be involved.
- Constant pressure – The short length and rapid frequency of Sprints can be exhausting and doesn’t allow time to “breathe.”
- Scrum is an agile process that allows us to focus on delivering the business value in the shortest time.
- Kanban is a visual system for managing software development work.
- Kanban method fosters continuous improvement, productivity and efficiency are likely to increase.
- Scrum is focused on the backlog while Kanban on dashboard.
- Scrum master acts as a problem solver.
- Kanban encourages every team member a leader and sharing responsibility amongst them all.
- Scrum prescribes time-boxed iterations.
- Kanban focuses on planning a different duration for individual iteration.