Configuration Management Best Practices

Author: Bob Aiello and Leslie Sachs
Publisher: Addison-Wesley, 2010
Pages: 272
ISBN: 978-0321685865
Audience: Development managers, project managers, software architects
Rating: 5
Reviewer: Andrew Johnson

The subtitle of this book is "Practical methods that work in the real world". Who, and how, does it help?

Configuration management is an area that is riddled with confusing jargon and ambiguous acronyms - SCM for example can mean source code management as well as software configuration management.

The authors of this book make a point of being very clear about what they are talking about. At first glance the structure of the book looks almost over-engineered. The table of contents extends for eleven pages with topics itemized at the sub-sub-section level. Then the preface outlines the organization of the book and gives a succinct overview of each of its chapters.

Next comes an introduction that, as well as repeating information given in the Preface  provides a brief summary of the book's contents. And if there's not enough each chapter starts with an overview of its contents at the section level and there are lots of references, both forwards and backwards, within the text. However, despite this level of repetition, and the impression it creates of being a textbook, the book turns out to be readable as well as instructive, largely due to it being based on personal experience, often backed up by anecdotes.



By the time you reach the first chapter of this book you should already know that Bob Aiello takes the view that configuration management consists of six functional areas:

  1. Source code management
  2. Build engineering
  3. Environment configuration
  4. Change control
  5. Release engineering
  6. Deployment

Part I: The Core CM Best Practices Framework devotes a chapter to each of these in turn. When I first leafed through this part of the book I thought it might be hampered by following a set formula - each chapter starts with sections on goals and principles, then each has 1.1 Why Is functional area Important? 1.2 Where Do I Start. But for once this approach does seem to work. You are never confused about what the author wants you to learn about at any given point in the book and where it is going next and the framework isn't rigidly applied - where an item doesn't fit it isn't  and while there's necessarily a lot of jargon, terminology is always well explained and the writing style is conversational.




Part II: Architecture and Hardware CM has just two chapters - one on each topic in its title.

In the first paragraph of Chapter 7 the author states:

I have always believed that architecture was the Achilles' heel of configuration management, especially when the application changes in ways that can adversely impact the established configuration management procedures. I have had source code management, automated builds, and release packaging and deployment mechanism suddenly stop working because of "surprise" changes in system architecture.

The chapter looks at what architects can learn from testers, introduces Configuration Management-Drive Development and the idea of using source code management to facilitate architecture and returns to the idea that training is essential fist discussed in Chapter 1.

Although Chapter 8 Hardware Configuration Management is very short, it's very inclusion is important as this is a topic described as "often overlooked and undervalued".

Part III: The People Side of CM is the most varied part of the book - even though each chapter still starts with a discussion of goals followed in all but one case with the standard discussion of "Why?" and "Where Do I Start?"

Chapter 9: Rightsizing Your Process is an interesting, and very anecdotal, discussion of getting the correct balance for process improvement -  pointing out the dangers of both too much and too little.

Chapter 10: Overcoming Resistance to Change looks at matching process to culture, fostering teamwork, and the importance of listening.

Chapter 11: Personality and CM: A Psychologist Looks at the Workplace is contributed by the other member of the book's husband and wife team, Leslie Sachs. In fewer than twenty pages she provides insights into "what makes people tick"  that will be helpful beyond the remit of configuration management. Like the rest of the book it's practical, authoritative, very readable and well worth reading.

Bob Aeillo resumes the reins in Chapter 12: Learning From Mistakes That I Have Made which concludes that:

It is important to make learning from your mistake part of your process-improvement efforts.

We return to more mundane, but equally vital information in Part IV: Compliance, Standards and Frameworks which contains:
Chapter 13: Establishing IT Control and Compliance

Chapter 14: Industry Standards and Frameworks

Thanks to the extended table of contents it is easy to use this part of the book as a reference.

The book achieves a very satisfying balance. It looks at the technical and the human side of managing software projects. Equally while it has high information content it is both highly readable and easy to navigate.

Highly recommended to anyone involved in any aspect of IT systems management.  



Modern Fortran

Author: Milan Curcic
Publisher: Manning
Date: November 2020
Pages: 416
ISBN: 978-1617295287
Print: 1617295280
Audience: Fortran programmers
Rating: 5
Reviewer: Mike James
Not your parents' Fortran?

Python 3 For Machine Learning

Author: Oswald Campesato
Publisher: Mercury Learning
Pages: 364
ISBN: 978-1683924951
Print: 1683924959
Kindle: B084P6L424
Audience: Python developers interested in machine learning
Rating: 4
Reviewer: Mike James
Python is the language most used for AI, so why not learn both in one book?

More Reviews

Last Updated ( Tuesday, 04 December 2012 )