<< 1 >>
Rating:  Summary: Not very agile Review: Configuration Management principles and practices is a good introduction to the ideas of configuration management. There is rather much repetition in the book which makes it sometimes little boring to read however.The biggest dissapointment of this book was that it's published in the agile software development series while it described and promotes quite strict configuration management. The chapters on agile development and iterative development are seperate and sometimes sometimes seem to almost conflict. Some quotes in the book almost directly go against agile development values/principles ("Fail to plan, plan to fail", everything needs to be documented, always have strict CCB etc). Much references to quality systems and CMM in the book too. For agile CM better check the pragmatic programmers CVS book (on their web site) or the "Software configuration management patterns" book. I would have rated the book with 3 stars if it wouldn't be published in the agile development series. Also I hope that the editors of the agile development series select the books little more careful! Average book.
Rating:  Summary: Agile comes of age with good CM advice Review: Someone finally wrote a CM book that addresses agile development! While the author gives a complete picture of configuration management for all environments, her chapter on CM for agile development is the missing piece of the agile approach. Some parts of this chapter are easy to implement and others not so easy. This is due to the lack of discipline in many agile groups more than unrealistic advice from the author. Easy and necessary: supporting the agile principle of welcoming changing requirements, CM gives the team the ability to control configuration using tools and processes in the book. Delivering *working* software frequently requires a robust CM program so the right components are in the build. This also supports the agile principle that working software is the primary measure of progress. There is too many opportunities for error and rework when CM is not used. Necessary, but not necessarily easy: build projects around motivated people is an agile principle. The problem is too many developers who have embraced agile development think it means getting rid of process. Agile is a process itself, and if you are to deliver working software frequently you need discipline where discipline is needed. CM is one critical area where this holds true. Motivating developers who are sloppy and convincing them that certain processes like CM are essential is the most difficult task to be faced. I've worked in CMM level 3 shops, and am now managing an Agile team, so I've seen this from both ends. In both shops the key to success was CM. Until this book there was next to nothing written about it, and now that this book is available the agile developer and manager have something to guide them. This book will explain how to implement the process, which is something the CVS book does not do well because it is more about using a tool.
Rating:  Summary: Useful, practical, consistent and complete Review: Super - this book addresses a very real problem in a very pragmatic way, and gives useful and realistic suggestions on how to solve the real world issues. The book defines an intuitively understandable structure for Configuration Management, which really helps de-mystify this very complex subject. It gives a practical understanding of what can be done, how to decide what to do and what not to do - and then it tells you in detail how to do it! The combination of overview and detail, the completeness and consistency of this book makes this book a must for all software practitioners and project managers.
Rating:  Summary: Clear and practical treatment of configuration management Review: This book covers the subject of configuration management in a clear and practical manner. It provides comprehensive conceptual treatment of principles, terminology, processes, planning, and organizational considerations. In addition, the author discusses a variety of practical configuration management situations, addressing the integration of configuration management with common development lifecycle activities, describing variations appropriate for agile and iterative development, and going into more specialized areas such as considerations for multi-platform and safety-critical systems. The book does have some areas for improvement. Some of the examples and diagrams could be a bit more more detailed and clear. Tools are very lightly covered. While it's difficult to do justice to the breadth of existing tools and the fact that they are constantly being enhanced, some more discussion of standard tool capabilities and commonly used tools, with examples of how they fit into the configuration management process, would have enriched the text and made it more tangible to readers. Finally, some of the terminology caused me a bit of confusion, such as the terms "production" (means "creation" for configuration items) and "delivery" (a collection of items released for usage), which are not defined in the Glossary.
Rating:  Summary: Complete survey of approaches for all SDLCs Review: This book lives up to its title by providing principles and practices. What makes it so special to the CM and SCM community is the thorough treatment of the subject in the large, and the attention the author pays to special needs and issues with respect to viewpoints. In the large this book is a tutorial on configuration management, and its sub specialties (project- and production-CM, software configuration management with respect to major software development lifecycle and methodology approaches, and product configuration management). Nothing is overlooked in this book. For example, the detailed discussions of how to align your CM requirements to maturity models and software process improvement methods, and international standards are invaluable to a wide spectrum of readers regardless of whether they are using CMM/CMMI, SPICE, Bootstrap, ISO 9001, US DoD, IEEE or other major standards. This book also offers tailored approaches form implementing CM and SCM for numerous SDLCs ranging from Agile methods to integrated product development to sequential development (and others). I especially like the way core CM and SCM principles are covered to give a baseline of concepts and practices, then how those are applied to environments. In particular, the metrics, organizational considerations in the form of roles, and processes that can be adapted are invaluable. This is one of the best books on CM and SCM I have in my library, and one to which I refer when I need a definitive answer to questions related to practices and processes. In addition to this book I also highly recommend visiting CM Crossroads (ASIN B00009P31G), which has a wealth of additional material that any practitioner - regardless of experience level - will find useful.
Rating:  Summary: Complete survey of approaches for all SDLCs Review: This book lives up to its title by providing principles and practices. What makes it so special to the CM and SCM community is the thorough treatment of the subject in the large, and the attention the author pays to special needs and issues with respect to viewpoints. In the large this book is a tutorial on configuration management, and its sub specialties (project- and production-CM, software configuration management with respect to major software development lifecycle and methodology approaches, and product configuration management). Nothing is overlooked in this book. For example, the detailed discussions of how to align your CM requirements to maturity models and software process improvement methods, and international standards are invaluable to a wide spectrum of readers regardless of whether they are using CMM/CMMI, SPICE, Bootstrap, ISO 9001, US DoD, IEEE or other major standards. This book also offers tailored approaches form implementing CM and SCM for numerous SDLCs ranging from Agile methods to integrated product development to sequential development (and others). I especially like the way core CM and SCM principles are covered to give a baseline of concepts and practices, then how those are applied to environments. In particular, the metrics, organizational considerations in the form of roles, and processes that can be adapted are invaluable. This is one of the best books on CM and SCM I have in my library, and one to which I refer when I need a definitive answer to questions related to practices and processes. In addition to this book I also highly recommend visiting CM Crossroads (ASIN B00009P31G), which has a wealth of additional material that any practitioner - regardless of experience level - will find useful.
Rating:  Summary: A good insight into Configuration Management Review: This volume should be prescribed reading for all IT professionals. Everybody but everybody has an opinion on the merits or otherwise of Configuration Management, but a better understanding would help us all. People not actively part of Configuration Management [CM] will then say, "Yes, it is both more important and more involved that I had thought hitherto".
There are five parts to the book; what is CM, the data required for CM, roles within CM, CM in practice and improving CM. The last three are probably the more interesting, but without the first two, it is talking into a vacuum. Throughout, there is emphasis that CM is a tool to be used, and should not become a priority in its own right. Good CM should provide benefits; unfortunately, those who receive the benefits are not always those who have paid the cost (in terms of extra effort and/or information that is required of them).
In the first two sections, there is a lot of material that seems repetitive. An example of this is material regarding the naming of configuration items, deliveries, etc. However, this is also an advantage, as chapters or parts of chapters can be read in isolation. I particularly like the use of the same examples in various parts of the text. When referred to, there is usually a diagram, and this is in text, rather than referring to another page in another chapter. Table 15-1 is the same as table 6-1. In books where the diagram is NOT repeated, but the reader referred back to re-read the other section, they never do!
Fundamental questions about what to include under the control of CM are addressed (although not always prescriptively answered). What should be included in the CM system? Do you include program source and object code, just source code, or source and the compiler? If the compiler is not included, it may not be possible to amend code for old platforms. Similarly, all tools should be potentially under CM control. Otherwise, a document written is an obscure word processor format may be available in the future, but not the means to even read it easily?
There is discussion about the need to capture both physical objects (PC's, memory boards) AND electronic objects. In this case, CM can partly overlap with asset management; it is other ways very different from the latter. However, the author stresses the need to know the boundaries of CM; the defining of a software delivery is not the responsibility of the CM team. Similarly, the use of variants is a design decision, not decided or dictated by those in CM. The latter is essentially an administrative task, concentrating on the four cornerstones; identification, storage, change control and status reporting.
The challenges of these four categories are brought out in the latter parts. Most people would agree that documents need to come under CM control at some point. The storage of documents can present challenges, particularly if a master document has many composite parts. There are also needs to take account of cross-references (which may be different to the formal linkages that are reported by the CM tool). Much information can be gathered from the information available through CM. A well-made point is that there is no point in gathering information if no one is going to use it.
Anne Mette's first language is not English, and sometimes this shows. It is difficult to define how this is the case, but sometimes the use of language can be an advantage. Some things are described as being `an inspiration', not an expression that many would necessarily have chosen. That comes across well. However, do not confuse the style with the substance. The latter is the most important, and it is a very good standard.
How do fill a book of 350 pages on CM? Several items are covered that are not exactly mainstream CM, but are very relevant and appropriate to the discussion. The section on `people roles' comes over well, and is part of the selling of CM as a discipline. This section draws on the work of Dr Meredith Belbin, and his nine team roles, applying this specifically to CM.
The last comments are reserved for the final part, allowing the CM process to be part of the overall Process Improvement drive within an organisation. If there is no CM process in place (not to be confused with there being no CM tool in place), it can be difficult to know where to start. An apt comparison is about a centipede thinking about how to walk - too much thought makes for a tangled heap in a ditch, instead of just doing it. The author says go for quick cheap wins, and if possible base any initial procedures on existing practices. This will significantly enhance the chances of success.
CM is a big topic. This volume brings out many of the issues that are involved, and gives guidelines on overcoming some specific challenges. There are practical examples, but these are more in the line of serving suggestions, rather than a fixed menu.
Peter Morgan, Bath, UK (morganp@supanet.com)
<< 1 >>
|