views:

108

answers:

2

Hey,

I'm basically familiar with Agile methodology and Scrum.

But what is "Lean Software Development" and "Kanban"?

Is it safe to say that Scrum, Lean and Kanban are implementations of Agile methodology? or Lean and Kanban are different methodologies?

Do Lean and Kanban provide a skeleton (like Agile) and leave the implementation to a set of practice like XP and Scrum?

Thanks for help and time.

+1  A: 

Hello.

Agile expert Mary Poppendieck wrote about the principles of Lean. Find her credentials here.

Instead of me writing a lot about Kanban, please read what Swedish advisors Crisp say about it.

The practices of Lean are quite different from the hands-on, practical tasks that programming-centric XP asks you to do in your project ("Automate everything", "Have tests", "Meet daily"). Value-stream analysis could give you some new insights and conceptual tools with which to reason about business and tasks to do.

Hope this helps navigating the process-speak. Best of luck!

olleolleolle
+3  A: 

Actually neither agile nor lean has a precise definition. In both cases it is rather a set of principles and practices in the former case basing on Agile Manifesto in the latter on Toyota Production System adapted to software/IT industry.

I would say that both lean and agile are two flavors of the same movement in software industry which focuses on effective delivery of products customers need (it is a vast generalization though). The difference is in ways this goal is achieved.

With agile there is focus on well organized process which allows frequent delivery which makes it easy to adjust the course of development. Lean focuses more on limiting waste (including work in progress which is considered as one of types of waste) and making production and delivery workflow efficient.

Now, it happens often agile and lean approaches are put into the same bucket so you will find all sorts of mixing, Scrum + Kanban being the most significant example. See Scrumban as a reference. Unless you talk with an orthodox it shouldn't be a problem if you name Kanban an agile method.

To make some order in labels: Agile and lean are general concepts. Scrum and XP are specific implementations of agile while Lean Software Development and Kanban are specific implementations of lean. At least this is how people usually perceive them. It is definitely possible to mix different approaches, or parts of them, into one method. Scrum+XP or Scrum+Kanban are probably the most popular combination.

If you want to dig deeper I can recommend great minibook comparing Kanban with Scrum: Kanban and Scrum making the most of both. Pdf can be downloaded for free.

pawelbrodzinski