Two men looking and pointing to a computer screen. The word VS is draw onto the image in red and here is a yellow drawn crack down the middle.


Please note that this blog is archived and outdated. For the most current information click here!

What’s the Best Agile Project Management Method for You: Scrum vs Kanban

This article does not intend to pit Scrum vs Kanban. Both methods have their unique value. Thus, we'll articulate the key differences and summarise the trade-offs between the two. In the end, you may wish to apply one or both of them both to your Way of Working. At WorkingMouse, we favour the Scrum approach within our Way of Working during development and then use a Kanban approach for support and short term hiring.

Iteration Planning

Diagram comparing iteration and continuous flow. The left side illustrates iteration with a circular flow of tasks in stages, represented by colored sticky notes, and arrows indicating repeated cycles. The right side shows continuous flow as a smooth cycle with tasks moving steadily forward, represented by colored notes in a circular arrangement. The comparison highlights differences between iterative processes and continuous workflow in project management.

The difference in planning between Scrum and Kanban is regular versus on-demand. In Scrum, traditional planning happens at the beginning of an iteration (or sprint) which will usually last between 10-15 business days.

At the end of the iteration, the software is re-deployed. Following that, the team plans the next iteration. Kanban is a continuous flow of issues without an actual planning point. Once an item has finished a stage, e.g. 'Design,' it is on-demand pulled into the next stage, e.g. 'Development' like a production line. Each production stage should have a limit on the amount of items worked on at any one time.

The critical trade-off between the two here is immediate flexibility vs. how much the team can demand. In Scrum, can your product wait until the next iteration cycle for an item to be added? At the same time with Kanban, putting an issue into the production line will affect the work that is already in progress. Therefore, are you sure you won't block the production line with too many planning changes? If so, what will you have to pull out of production?

Software Estimations

Diagram comparing advance estimations of time with retrospective estimations. The left side, labeled ‘Advance Estimations/Time,’ shows clocks in various colors representing planned time predictions. The right side, labeled ‘Retrospective Estimations/Time,’ features a layered chart tracking actual time spent over time, highlighting the difference between estimated and real progress. The comparison illustrates the contrast between forward-looking time estimates and analyzing past project performance.

The estimation process between the two methods is polarising, with Scrum estimating proactively and Kanban retrospectively. In Scrum development, estimates happen before each iteration. Items should be broken down, so they are small enough to finish within the iteration, and time is applied to each item. There are many different methods for achieving Scrum estimates from traditional to scientific.

In Kanban software development, it is optional to estimate when items are completed. There's no set time on issues as they are pulled into the next stage, and it's dependent on what's in production. These estimates can even be done on items in the backlog. The Kanban estimates on complete items are lead time and cycle time. These provide an average estimate of the amount of time it takes for a task to move from start to finish. If you want to understand the present state for Kanban, a cumulative flow diagram (CFD) is the best analytical tool to understand the time it takes and the current workflow in production.

The trade-offs here are relatively straightforward, you can either know how long something will take or know how long something took. Either method relies heavily on trust in the team's estimation and skill. The question is, how vital are estimates to you? If you're working within a set budget, a Scrum approach may appeal as you will know what you're getting for every iteration before it begins. In Kanban, if you have no set budget and a continual amount of resources, this approach may be favoured.

Scope Changes

Diagram comparing ‘Stop & Wait’ versus ‘Go Now’ approaches in project management. The left side, labeled ‘Stop & Wait,’ shows tasks represented by colored blocks halted in a sequence, while the right side, labeled ‘Go Now,’ displays tasks in motion, indicating continuous progress. The visual highlights the contrast between waiting for approval or completion versus advancing tasks without delays.

Change requests are a direct reflection on planning. In Scrum, it's simple "no changes for you "... well, at least until the next iteration. As the items are estimated, and the iteration length is fixed, nothing can be changed. This can be frustrating, especially if there's an immediate need/issue. In Kanban, the freedom is all yours, put in your changes as you need them. However, with great power... you know the rest.

The pros and cons of the ability to change immediately are clear. It's a big pro to put in an immediate change, especially if that change relates to a product issue that is affecting many users. However, there is merit to the patience of Scrum. A difference you view as essential today could have other priorities trump it when it comes to the next iteration planning session. The ability to have a cooling-off period on your production line may be of benefit. This comes down to how to make the best decision. You should consider your data sources around product usage, customer-centric design (user experience, competitive offerings, pricing, market share, and industry trends.

Development Team Roles

Diagram comparing the roles of ‘Scrum master, product owner, and dev team’ versus a ‘Production line’ approach involving customer, design, developer, and tester. The left side shows a hierarchical structure with tasks assigned by roles, while the right side displays tasks moving along a production line. The visual highlights the difference between traditional scrum roles and a more linear production workflow.

This is where the structures between the two approaches show the separation of philosophy. Scrum has clearly defined roles. The roles are; product owner (you), who advocates for the end-user and manages the prioritization of the product backlog. The Scrum Master (our squad leads/project managers) who manages all of the meetings (or ceremonies). And, of course, the development team who delivers the work.

In Kanban, there is no single master. The team work collectively to collaborate and deliver a task that is on the board. Teams can enlist the help of a coach if they desire, but the coach has no influence on the product, unlike the Scrum Master and Product Owner.

The trade-offs here are between having a structured and unstructured approach. If you have a team that is experienced in working together and comprehends the domain of what the product should achieve, then a Kanban approach may suit. However, if there are multiple commercial parties, Scrum may be a better fit. At WorkingMouse, we treat the customer as the product owner. We have the domain experience in development and assume the product owner is bringing the domain experience for the problem we're solving.

Agile Ceremonies/Meetings

Diagram comparing ‘5 Meetings’ versus ‘None’ in a project workflow. The left side shows a meeting table surrounded by colored blocks representing tasks, indicating multiple discussions. The right side, labeled ‘None,’ displays a single task with no meetings, representing a streamlined approach. The visual contrasts the impact of frequent meetings versus minimal or no meetings in task management.

Due to the continuous flow of Kanban, it removes a significant amount of project time bloat. This means ceremonies are kept to a minimal. Weekly 30-minute meetings or daily 15-minute huddles are ideal. A project manager's nightmare and everyone else's delight!

The Scrum approach has several vital meetings throughout the iteration cycle. The first is a planning session where the entire team draws upon the top priorities of the backlog and agree upon the user acceptance criteria (approximately 1 hour long). The second meeting is an elaboration session where the team confirms how they will solve the issues, and the time/risk estimations (approximately 1 hour, excludes product owner). Once development has begun, the team completes a 10-15 minute daily huddle that calls out who's doing what and whether any team member is experiencing blockers (1 hour per week, excludes product owner). Lastly, upon delivery, the team does a review (approximately 1 hour) and a retrospective to look for improvement opportunities (1 hour, excludes product owner). That totals 5 hours across a single iteration if all runs well.

The trade-off here is clear, 5 hours of every team members time put towards project development or use that time for project management? This is why iterations have a minimum of 10 days or two weeks as the team would get too bogged down with running ceremonies.

Agile Boards/Reports

Diagram comparing a Scrum Board and Cumulative Flow in project management. The Scrum Board at the top shows tasks moving from Backlog to Done in a visual grid. The Cumulative Flow chart at the bottom displays the progression of tasks over time, tracking backlog, development, testing, and completed tasks. This comparison highlights different methods of tracking work in agile development.

The two methods run the same project board. Issues flow through in the following sequence: To Do, In Development, Testing & Done. The difference is that Scrum has two stages before: a Product Backlog (which encompasses everything) and the Iteration Backlog (all functionality that will be completed in this iteration). The reporting on Scrum is via a burndown chart that tracks issue completion against iteration time. This can be summarised as the project's velocity. The Kanban reports are the lead and cycle times that feed into the Cumulative Flow diagram.

Again, this comes down to product responsiveness very project planning, and the type of project you are undertaking. In my experience, I've never seen a Scrum project with an empty product backlog. There will always be more to do, and there will always be technical debt. Does removing the product backlog free you as the product owner from this and enable a forward-thinking mindset or, is it essential that this detail is never lost?

Summary

As you will now see, there's a fairly big difference between the two models. It may be best to reflect on how you like to work as a product owner? Do you prefer to work in a planned manner or reactively? Traditionally, Scrum works better for large projects that require structure such as software outsourcing while Kanban is between for fast changes, support/maintenance, and bug fixing. At WorkingMouse, we use the Scrum method in our Way of Working for project development but allow a Kanban approach to support where our clients choose what is going into support production or doesn't. We hope this article helps you find your Way of Working for your project.


All Rights Reserved. 2024 WorkingMouse Pty Ltd. All Rights Reserved.