There’s a delightful irony in the fact that the very book you are holding in your hands has an agile pair of authors yet requires three times as many forewords as you’d find in any normal book.

Well, this is not a normal book; rather, it’s a very pragmatic book that is not only quite approachable, but it is also immediately useful.

I have now personally lived through three generations of method wars. The era of structure analysis and design methods initially found its voice in methodologists such as Tom DeMarco, Ed Yourdon, Larry Constantine, Harlan Mills, Michael Jackson, and many others. There is an essential structured method that one can extract from their collective experience, but in the midst of that era, there was a veritable cacophony of competing approaches. The era of object-oriented analysis and design methods found its voice in methodologists such as Jim Rumbaugh, Ivar Jacobson, Peter Coad, Stephen Mellor, Watts Humphrey, myself, and many others. Here too one can extract some essential best practices (which is what the Rational Unified Process is all about), but still, that era was also characterized by dueling methods, each on a path to total world domination. Now we find ourselves in the post dot-bomb era, and a fresh way of building systems has arisen, with individuals such as Kent Beck, Martin Fowler, Robert Martin, Jim Highsmith, and many others giving voice to the movement.

I expect that this won’t be the last set of method wars I’ll live through.

Actually, it’s a sign of extreme health for our industry that there exists such a vibrant community of practice dealing with process and the developer experience. As I often quote from Bjarne Stroustrup, our civilization runs on software. Building quality software that has economic value has been, is, and will remain a hard thing to do, and thus energy spent on improving processes is energy spent on reducing the friction of software development.

Barry and Richard are in an excellent position to examine the current method wars from a dispassionate, calculating way. In this book, they extract the essential practices from the more high ceremony methods as well as the more low ceremony ones. Their day in the life of the developer is absolutely wonderful in highlighting the differences and similarities among methods in this spectrum of ceremony.

This day in the life work alone is worth the price of this book, but they then go on to analyze two extended case studies from the real world. As they explain in the following section, taking a risk-driven approach is a pragmatic means of reconciling the strengths and weaknesses of disciplined and agile methods.

Being a certified bibliophile and a professional geek, I have more shelf space devoted to books on software methods than any reasonable human should possess. Balancing Agility and Discipline has a prominent place in that section of my library, because it has helped me sort through the noise and smoke of the current method wars.

Grady Booch
Chief Scientist
IBM Rational Software