Day 2 at Agile 2005 was another good day.  It was capped with a Rockies game and some play time at ESPNZone, so this post is getting out a little later than planned.

The highlight of the day for me was a tutorial on Lean Software Development by Mary Poppendieck.  Mary Poppendieck brings a broad range of experience to her perspectives on Lean Software Development (see her book here).  Much of her career was at 3M where she wrote process control software, ran IT in a manufacturing plant, and was a product manager for a non-software product.  This perspective, along with research of lean product development approaches at Toyota and other companies, gives her material a different spin than much of the other material in the agile community. 

I have read the Lean Software Development book and referenced various sections several times.  While this session was the first time that I heard her talk, much of the information was familiar.  As the title indicates, the focus was on management issues.  I actually would have liked to hear more about some of her design concepts like Set Based Development, Decide as Late as Possible, and others.

What I like about the material in this presentation and in the book is that it focuses on some core underpinnings that make agile and other techniques useful.  The concepts are simple and have been applied in product development efforts in other companies.  They can be applied broadly to agile and non-agile projects, so they can work for situations like we have at Microsoft where we need to apply more structure than typical agile approaches suggest.

One thing that I don’t like is that the lean manufacturing analogies don’t always work (she leverages analogies from both manufacturing and product development in other industries).  The techniques are also a little more abstract to apply than some other practices.

But overall, Mary brings some useful ideas to the software development process toolkit.  I would encourage you to take a look at her website and/or buy her book.