Difference between Agile and Lean

What is the difference between Agile and Lean?

A lot of people are asking about the difference between Agile and Lean. Are they the same? Which came first? Which is better? Better for what? This article attempts to answer all of these questions.

Lean came first. It is Japanese and old

Lean is old. Very old. “Lean” generally refers to a body of knowledge called more specifically “Lean Manufacturing”, which was developed in Japan in the 1950s and 1960s by an engineer named Taiichi Ohno.

He called it the Toyota Production System. He got many of the ideas from an American management thinker called William Edwards Deming. Lean Manufacturing turned a lot of traditional concepts on their head:

  • Production should be based on pull (demand), not push (supply). You make something when someone orders it, rather than first making things then hoping somebody orders them
  • Production is most efficient when done in small batch sizes (as small as possible), rather than large batches to exploit economies of scale
  • Taking your time to focus on quality, above all else, increases rather than decreases output and efficiency
  • Workers, not managers, are responsible for defining the way they work
  • Rather than carry out predefined tasks over and over again, workers must continuously improve the way they work (kaizen).

These ideas were heretical to modern American management theory. But the Japanese industrial companies adopting these philosophies quickly outperformed their American counterparts.

Agile is more based on development rather than manufacturing

Agile is a set of ideas around software development. It came about in the late 1990s as people tried to find better ways of making software.

Lean has its roots in industrial manufacturing, but many of its ideas are quite general and can be applied to lots of disciplines. Agile is more specific to software development and doesn’t have many ideas that are applicable outside that field (depending on what flavour of Agile you’re talking about).

Agile and Lean have some similarities

There are some clear similarities between Agile and Lean. Two that quickly come to mind are Small Batch Size and Inspect and Adapt. Lean Manufacturing prescribes building things in as small batches as possible. Rather than making 100 widgets at a time, make them one at a time. It (counter-intuitively) is more efficient that way.

Agile (especially when following DevOps principles such as Continuous Delivery) prescribes many frequent small releases of software, rather than infrequent large releases. Lean Manufacturing also tells us that any process should be continuously inspected and adapted so as to improve it. Agile (more specifically, Scrum) tells us we should hold regularly inspect our outputs (at a sprint review) and our ways of working (at a sprint retro) to find ways to improve them.

But Agile and Lean are actually different

Tom and Mary Poppendieck describe the fundamental differences between the two as being that Agile is about optimising a development process, while Lean is about optimising a manufacturing process. This means that Agile is about building one new thing for the first (and only) time. While Lean is about building the one same thing over and over again.

In manufacturing, variation and rework are bad, while in development, they are good. When building something for the first time, you want to continuously iterate. To keep going back and revisiting your design, changing it where necessary based on new information or feedback. In manufacturing, you generally have a predefined product. Then you want to produce as many high-quality instances of that thing as you can, as cheaply as you can.

Lean is about process and quality, Agile is about scope and value

If you read the lean literature, there is a big focus on process improvement (via things like value stream mapping) and quality (zero defects is the goal). While in Agile, the focus is more around scope (how do we define and manage scope for a new software product) and value discovery (how can we rapidly produce something and learn from it via customer feedback).

Each has their strengths. I would recommend anyone interested in either one should know at least something about the other.

What about this whole “Lean Startup” thing?

Good question! Eric Ries’ 2011 book “The Lean Startup” proposed a new model for businesses. Basically, you around quickly produce a Minimum Viable Product, gather validated learning from it. Then you make a quick decision to “pivot or persevere” based on that learning. While inspired by the Japanese Lean idea of reducing waste, it is not really traditional Lean at all. In fact is has more in common with Agile. It has spawned a series of books with titles like “Lean UX” and “Lean Enterprise” (both of which are very good), and these will no doubt add to the confusion.

Leave a Comment:

7 comments
Add Your Reply