Published on: July, 2014
- Development •
- Methodologies
Kanban vs Scrum By Belatrix Software | Topics: Software Development
Have you ever wondered what the best agile methodology is? Even though you may not need to make a decision right now, you probably want to understand how each methodology can help you.
I want to share with you a brief comparison between 2 trending agile methodologies. Each one has its own evangelists dedicated to preach about the advantages and functionalities that makes one better than the other. But… which is the one that fits your needs? What’s the most adopted methodology world-wide?
I’m briefly describing both and then reviewing some of the differences and similarities of each one, so we can understand which one is better for your project.
So instead of a large group of people spending a long period of time building a unique, big product, we have small teams, working in short periods of time, building small parts of the product, integrating them regularly to the bigger project.
Kanban has almost no restrictions. The only 2 rules are “Make the workflow very visual” and “limit your WIP” (Work In Progress).
Scrum | Kanban |
Timeboxed iterations prescribed. | Timeboxed iterations optional. Can have separate cadences for planning, release, and process improvement. Can be event-driven instead of timeboxed. |
Uses Velocity as default metric for planning and process improvement. | Uses Lead time as default metric for planning and process improvement. |
Cross-functional teams prescribed. | Cross-functional teams optional. Specialist teams allowed. |
Items must be broken down so they can be completed within 1 sprint. | No particular item size is prescribed. |
Burndown chart prescribed | No particular type of diagram is prescribed. |
WIP limited indirectly (per sprint) | WIP limited directly (per workflow state) |
Estimation prescribed | Estimation optional |
Cannot add items to ongoing iteration. | Can add new items whenever capacity is available |
A sprint backlog is owned by one specific team | A kanban board may be shared by multiple teams or individuals |
Prescribes 3 roles (PO/SM/Team) | Doesn’t prescribe any roles |
A Scrum board is reset between each sprint | A kanban board is persistent |
Prescribes a prioritized product backlog | Prioritization is optional. |
It all depends on the context and needs. For example, Scrum is better to work in the following conditions:
Kanban is ideal in the following scenario:
Scrum has more restrictions than Kanban because it requires iterations and self-organized teams among others. Kanban is closer to “do whatever you want”, although this seems to be very agile, it’s also true that the lack of limits and clear rules makes team management more difficult.
Shorter iterations lead to Kanban. Once you start talking about doing iterations shorter than a week, you should consider moving off from closed time iterations.
Regarding daily meetings and retrospective meetings, I strongly recommend to have them in both methodologies.
Until 2013, Scrum and all Scrum variations (73%) are still the most popular methodology. Despite Kanban represents only 5% of all methodologies, its use continues growing within organizations.
This discussion is just starting. Although Scrum is more world-wide adopted and has proven efficiency in software product development, Kanban adoption is growing at a fast rate.
The final decision depends on your project’s current situation. Being Agile can also mean being able to change the methodology if the project rules change (the amount of work becomes inconsistent, team members or team members availability change, etc.).
Being Agile means being flexible to adapt to changing scenarios to deliver high-quality software products, providing innovation and leveraging the potential of top talent. Your final decision should be based on choosing the methodology that will make your project hit the goals faster and better.
Belatrix Software is a leading Software Services Outsourcing company with its main offices and delivery centers based in Mendoza, Argentina and Lima, Peru. We provide Software Development, Quality Assurance, Localization and Graphics Design Services using the “Agile Near-Shore Model”.