Agile Management for Software Engineering [Bookreview]

How to apply the Theory of Constraints and metrics to Software Development.

Here you find a review about the book «Agile Management for Software Engineering», by David J. Anderson, with a foreword by Eli Schragenheim. Enjoy!

Introduction

There is an old saying that everything is said but not everyone has said it. The book I review today was published in 2003, which is quite a long time span, given the dynamic changes of our business world and of software development methods and business concepts, quite apart apart from megatrends like globalization, digitalization and internationalization! That said it is amazing how actual and fundamental and fresh this book appears.

When I read through it really struck me, how much condensed wisdom, insights, explanation of concepts and methods, suggestions for measuring software development performance and the like are assembled here concisely on only 300 pages. It is astonishing in particular, how the term “agile” has been misused and overstretched in the last decades without any substantial understanding. By applying the Theory of Constraints to agile, Anderson made up for constraints of poor agile implementation many years before the issue came up in many companies. If you ever want to understand the principles of agile and how they have to be applied to be effectively, you find here everything and even more you need.

Agile done right, using the Theory of Constraints

Edited by Peter Coad, former chief strategist at Borland, you get deep insights into the economic side of professional software creation and management.

Agile concepts – explained in detail

Not surprisingly, Anderson expanded and elaborated his insights within the last years further and offers wealth opportunities to learn in his worldwide Anderson academy.

  • The book opens with a brief overview about agile concepts and why they are beneficial in todays challenging and often even chaotic contexts (page 3-12).
  • Anderson does not simply mention shortcomings of agile, he makes up for them neatly through application of the Theory of Constraints. He does not hesitate to use formulas and drawings to make his point clear.
  • He explains the Theory of Constraints, dealing with uncertainty, the business benefits of agile; he explains the role of the agile manager (p 73).
  • In the remaining chapters he introduces a set of metrics to make software quantifieable and assessable.

Though, or precisely because Anderson bases his explanations on the foundations of the theory of constraints and of agile, he aggregated within this book really evergreen software development and project management content, which is worth reading and helpful to be taken into account for every serious implementation and management of agile procedures and collaboration in corporate and industrial contexts.

By doing so the book delivers the missing link between software development methods and business requirements, embedded on analytic metrics and formulas which proof the business related benefits of agile and lean.

Summary

In 2020 we have, admittedly, further insights and frameworks to scale agile (LeSS, SaFe, DAD). Anyhow the insights and metrics provided in this book can be still helpful and might even be necessary to apply agile not only as fashion but to get to the meat of agile in terms of accounted profitability and efficiency.

This book is a piece of advanced and sophisticated business literature and may not seem very entertaining. Anyhow, the story it tells is convincing and still provides clarity about the benefits of agile in software development and in project management. By doing so it delivers both theoretical and practical insights and tips for project managers in the IT- and software development domain.

References

  • David J. Anderson: Agile Management for Software Engineering: Applying the Theory of Constraints for Business Results, Prentice Hall, 2003
  • ISBN 978-0131424609
  • 352 pages
  • Amazon-Link