Wednesday, March 18, 2009

Book Review: The Art of Lean Software Development

The Art of Lean Software Development by Curt Hibbs, et. al. Published by O’Reilly, ISBN 0596517319.

This is a concise work weighing in at around 120 pages.  Its point is to give people a 30,000 foot overview of many things relating to Lean software development, and it’s absolutely targeted to technical and business decision makers who are trying to learn a bit about how they can benefit from Lean.

The problem with the book’s approach is that the authors fly past points so quickly that there’s not enough serious discussion of the crucial topics central to Lean. I also think the authors spent the majority of the book covering topics which aren’t specific to Lean. I’m all over source control, continuous integration, test driven design/development, etc., but these are fundamentals for many other methodologies or approaches. The authors don’t spend enough time hitting hard the concepts of eliminating waste, tight cycles, etc.

Worse yet, in the authors’ attempts to give only high-level coverage of concepts they do a bad job of describing some critical issues.  As an example, I screamed, literally, when I found this passage in their section on Reuse Existing Software:

Software reuse exists in many different forms, each of which affects codebase size differently:
  • Copying source code from one component to another reduces coding time and debugging, but it actually increases codebase size. 

Dudes. Really. Copy and Paste development is awful for so many reasons, and increase in codebase size is utterly the last issue you should be talking about when discussing why you should never do it. Instead, focus on the impact of copy/paste on code complexity, violation of DRY principles, the loss of clarity, increased dependencies, and the replication of bugs throughout your codebase.

This isn’t an awful book, and the authors generally did a good job laying out the material. The problem is a lack of focus and a sacrifice of vital information in an attempt to turn an introduction to Lean into some sort of 30 minute infomercial.

I’d much rather point folks interested in Lean to Tom and Mary Poppendieck’s Lean Software Development or their follow-on Implementing Lean Software Development for a great introduction as well as solid details on adopting Lean. Folks interested in the broader Agile topic should run, not walk, and grab Shore and Warden’s The Art of Agile Development.

No comments:

Subscribe (RSS)

The Leadership Journey