Lean Software Development : An Agile Toolkit, Mary Poppendieck and Tom Poppendieck.   An excellent resource on how the lean principles from product manufacturing can be applied unto software development.  A good overview of content can be found in their 2002 paper here (pdf) and the Wikipedia article on Lean.

Overview

Each chapter in the book describes several “thinking tools” for the 7 Lean Principles.

  1. Eliminate waste describes how to identity and remove waste in order to maximize the flow of the value stream.
    • Seeing Waste
    • Value Stream Mapping
  2. Amplify learning emphasizes how short feedback cycles can improve the resulting product and development process.
    • Feedback
    • Iterations
    • Synchronization
    • Set-based development
  3. Decide as late as possible in order to deal with uncertainty, and make better decisions.
    • Options thinking
    • The last responsible moment
    • Decision making
  4. Deliver as fast as possible in order to enable late decision making, and produce value as quickly as we can.
    • Pull systems
    • Queuing theory
    • Cost of delay
  5. Empower the team in order to make use of the expertise that lies with the people that actually do the work.
    • Self-determination
    • Motivation
    • Leadership
    • Expertise
  6. Build integrity in to accommodate change and increase the period of usefulness of a product.
    • Perceived integrity
    • Conceptual integrity
    • Refactoring
    • Testing
  7. See the whole warns against sub-optimization, and provides tools for keeping the bigger picture in mind.
    • Measurements
    • Contracts

Books on process usually take me longer to get through than those dealing strictly with technical topics – with the density of information in some of the chapters, this one was no exception.  It’s a real eye-opener though and comes highly recommended for those wishing to improve their software development process, even for those in non-agile environments.

What to read if you are in a hurry

The part on Queuing Theory was particularly informative and captures the substance of the book perfectly.  More on this later.