Sunday, May 22, 2022

What is the difference between Kanban and Scrum? Peter Case, PMP, SPC, CSM. Agile Coach.

so thank you peter for doing this today i just have one question what is the difference between tan band and scrum and when i should use kanban and when i should use chrome uh talk about different scenarios when they fit well .

So uh tell me about your thoughts around this topic sure well the interesting thing about kanban versus scrum is that they are both uh agile frameworks which really just means that um that they that they are are set up to deliver .

Solutions with agility and so it and anymore you know people use principles from kanban principles from scrum and kind of intermix them a little bit and that's only because both of them as frameworks say you know we are not prescriptive this is kind of guard rails .

But there are some best practices most scrum teams are using kanban boards because kanban boards help us quickly visualize where the work's at and that saves out you know a lot of meetings and questions about what status is but kanban itself it is uh .

It is looking at cycle time so from the moment a work item begins to the moment that a work item is is released and so it's it's really aligned to uh like maintenance teams ci cd teams because again you're looking at your cycle time but there are a lot of principles and .

They value most of the same things right they value collaboration and they value learning and incrementally improving over what we've done and so you know scrum is one of those things where for for work that's not necessarily as fully defined up front .

Scrum is great for that and of course in scrum we are using you know we're using uh what our our capacity is our velocity for that increment of time and our increment of time is our sprint uh guardrail i guess our sprint sprint container whereas kanban .

What they're saying is we don't really have that that fixed period of time that that uh sprint uh we always pick off the most important thing or the highest priority thing and uh and we just work on that and so we don't kind of containerize ourselves within a sprint and there's there's pros and cons .

One of the cons that i found is that the sprint x is a really kind of great guardrail to then look back at that that previous period of time and analyze how you did relative to to to previous sprints so that you are always improving it's it's .

We think about like the scientific method right we're trying to prove a hypothesis to do that and you have a theory you try to keep as many variables constant as possible and that's what scrum helps us do is keep a lot of those variables constant and we can analyze how we did sprint over sprint .

So i see as you said both are agile methodologies and at the end of the day they both talk about or give you a framework to take a big complex task break it into pieces and how to execute .

That's that's what the booth the framework help you uh execute a complex task in scrum i have a sprint which is a time box it can be two weeks or four weeks and then supposedly i should not take any new work in the spring and in kanban it's a little bit .

Free-flowing as the tickets move you can go and grab most important things as you said right so my one question is in sprint in scrum what i do is i do a backlog refinement in the middle of the sprint when i'm preparing for the next sprint and figure .

It out what all should go in the next sprint so it's a lot of planning goes there and i know all my priorities and everything how you do this in kanban uh because it's a continuous flow of work so talk about the prioritization .

In kanban so the prioritization can change on a daily basis um and and so what that that does is it actually kind of encourages a little bit more planning and collaboration than you .

Might otherwise have because you're getting new work in that's that's a candidate or it's top priority so you have to as a team figure out how you're going to decompose it and uh and then implement it and so you know it gets the point where you do end up spending a lot of time doing planning on it because that's one of the beauties of .

Scrum is that you try to limit change or you know to the to the sprint and so you know when you begin working we can keep developers heads down which is fantastic because we know that that context switching pays a heavy price and so you know one of the things that that organizations .

Um sometimes fall fall on is this kind of the sky is always following mentality and scrum kind of helps to encourage getting away from that so we're intentional about what we're doing and i found in my career at least in times where i've used scrum versus kanban we've had product owners come .

Back and say hey with scrum we're we're delivering things that we've been promising for years and we're finally delivering it because i as a product owner i'm not always you know coming back every day and saying we're pivoting in kanban you are a little bit more subject to whoever's speaking the .

Loudest which is why i say it's really optimized for maintenance teams as opposed to to feature teams that's good i think uh the difference is very clear that sprint is very much time box kanban is free-flowing now my next question is go ahead .

Yeah and the you know the major gap between the two is for practitioners who don't understand one or the other there are a lot of people for example who don't understand kanban and say well you know we don't do retrospectives we don't do planning we don't have to talk to one another because we're just throwing it over the fence in our you .

Know in our columns that's just a misunderstanding of what kanban is when you really start helping people understand what kanban is and and uh you know some of the benefits but also some of the practices then you you start to see that they're a lot more similar than than dissimilar .

Um and i hear most of the time i see people use kanban for the devops where you know a lot of devops work is happening and for the regular uh software development they prefer scrum is it right to say that for development you use scrum and for devops maybe you can use .

Kanban well i really kind of it depends on the context and like i said the context being that if you are trying to roll out larger features um then then scrum might be a great way for .

You to go but if you have to you know maintenance for example it's the highest bug that comes in or the highest tech debt or whatever it is so you can pivot like that what that does though is that it doesn't keep you focused on delivering larger initiatives and so that's why i say it's kind of .

Contextual depending on you know which tool but but generally if you're a team who is um is maintenance is cicd you know that your system is really healthy and you're able to to deploy frequently kanban might be the best way to go you


Most Popular