Agile! The Good, the Hype and the Ugly
by Bertrand Meyer
Are you attracted by the promises of agile methods but put off by the fanaticism of many agile texts? Would you like to know which agile techniques work, which ones do not matter much, and which ones will harm your projects? Then you need Agile!: the first exhaustive, objective review of agile principles, techniques and tools.
Agile methods are one of the most important developments in software over the past decades, but also a surprising mix of the best and the worst. Until now every project and developer had to sort out the good ideas from the bad by themselves. This book spares you the pain. It offers both a thorough descriptive presentation of agile techniques and a perceptive analysis of their benefits and limitations.
Agile! serves first as a primer on agile development: one chapter each introduces agile principles, roles, managerial practices, technical practices and artifacts. A separate chapter analyzes the four major agile methods: Extreme Programming, Lean Software, Scrum and Crystal.
The accompanying critical analysis explains what you should retain and discard from agile ideas. It is based on Meyer’s thorough understanding of software engineering, and his extensive personal experience of programming and project management. He highlights the limitations of agile methods as well as their truly brilliant contributions — even those to which their own authors do not do full justice.
Three important chapters precede the core discussion of agile ideas: an overview, serving as a concentrate of the entire book; a dissection of the intellectual devices used by agile authors; and a review of classical software engineering techniques, such as requirements analysis and lifecycle models, which agile methods criticize.
The final chapters describe the precautions that a company should take during a transition to agile development and present an overall assessment of agile ideas.
This is the first book to discuss agile methods, beyond the brouhaha, in the general context of modern software engineering.
It is a key resource for projects that want to combine the best of established results and agile innovations.
About the author
Bertrand Meyer is one of the pioneers of object technology and invented the concept of Design by Contract. His previous books include Touch of Class (Springer), an introduction to modern programming; Eiffel: The Language; and Object-Oriented Software Construction, one of the all-time most cited publications in computer science.
“This book was written to be an independent, impartial and objective study of the various agile methods (scrum, xp, lean, crystal) viewed against the knowledge-base of software engineering methods and principles. … This book, in my view, should be essential reading for any software manager, looking to understand agile methods before diving head-first into a vanilla, textbook-implementations.” (Outlet!, khanmjk-outlet.blogspot.de, November, 2015)
“The purpose of this excellent book is to ‘enable readers to benefit from the good ideas in agile methods and stay away from the bad ones.’ … The overall presentation is elegant, clear, and understandable … . It can be used both by novices and by experts … .” (H. I. Kilov, Computing Reviews, September, 2014)