Agile and Iterative Development: A Manager's Guide
I read this book a few months ago. I originally got turned onto it from reading Mr. Larman’s other book, Applying UML and Patterns. I had heard the rumblings out there about agile methodologies and their benefit to development, and I wanted to learn some more.
This is the perfect book to use as a jumping off point to learn about four of the major agile methodologies: Scrum, Extreme Programming, the Unified Process (yes, it is an agile methodology), and Evo.
I don’t think that this book should be read by just managers, but by anyone involved in software development, from product managers to program managers to developers to QA engineers. There are a lot of great ideas that can be taken from the different methodologies and incorporated into a software organization.
I really appreciated that Mr. Larman didn’t take a hard-liner’s attitude about the different methodologies, or the techniques used by each (i.e., you must do A first, then B, then C, etc.). He happily provides suggestions and recommendations for taking different techniques from each methodology and combining them as needed.
He understands, I think, that when you attempt to carve a Methodology into your development process, you end up choosing process over people, and that is just not right.
There is something to be said, I think, about letting teams organize themselves (see Peopleware for more information on this). On any good team, there will be a variety of different personalities and styles. Wrapping all these people into a nice neat package and putting a bow on it will only cause more discussion about the color of the package and size of the bow, then it ever will about the actual people and software.
