Book review: Lean Software Development
Update: Cleaned up mess made by “WYSIWYG” tool)
Rating: Must-buy
The agile movement has started to gain speed and become more mainstream, and the Poppendiecks’s “Lean Software Development” added an important part of the puzzle for me.
Like so many manifestos before it, Lean Software Development compares software development to other industries (lean thinking takes its roots in the Toyota manifacturing system). However, the authors reach a very different set of conclusions. The crux is to not compare the practices that were useful in other industries, but the principles underlying these practices. The ideas developed in the book are very much like the agile manifesto.
Lean Thinking uses the following principles (each described in a separate chapter in the book):
- Eliminate waste
- Amplify learning
- Decide as late as possible
- Deliver as fast as possible
- Empower the team
- Build integrity in
- See the whole
As you might notice, the list is not specific to software development. Each chapter is rich in great examples, both from the software industry and other industries of how to do and not do lean thinking. One of the greatest parts of the book is the table comparing the wastes in manifacturing to the wastes in software development:
Manufacturing
Software
My Notes
Overproduction
Extra Features
CHAOS report: 40% of s/w features are never used
Inventory
Work in progress
The background for iterative development
Extra processing
Unused artifacts
Artifacts should have an “eager customer”
Motion
Finding information
XP: “Customer on-site”
Defects
Defects
Waiting
Waiting
Includes customer waiting for the product
Transportation
Handoffs
XP: “One team”
As the table shows, “Lean Software Development” very much supports the position of Agile software methods, but adds a new facet to the discussion: Why does agile work, and where can we see similar ideas bringing success in the non-software world. In conclusion: Why agile makes business sense.
If you are addressing software from a business point of view, or if you are trying to convince people why Agile development is a good idea from a business point of view, you need this book.