Most Helpful Customer Reviews
|
|
51 of 53 people found the following review helpful:
5.0 out of 5 stars
Sensible software process, February 14, 2000
I have worked at a Fortune 100 company for > 15 years as a software engineer, software manager, and consultant on improving software projects. During that time, I've read many texts on software engineering and software management. This book, more than any other I've read, best captures my philosophy of software management, except for the rants against software process and the SEI which I think are a little much at times. Really, what the author advocates (at least in my reading of this book) is a sensible balance -- not too much process nor too little. This book, along with Rapid Development, are my two favorite "handbooks" for software managers. If you're looking for a quick recipe that doesn't require thought and is guaranteed to be successful, you won't find it here. However, I'd argue that you won't find it anywhere. What you will find is a guide to developing your own "common sense" on software management.
|
|
|
49 of 53 people found the following review helpful:
4.0 out of 5 stars
Mountain climbing as an analogy for software development, March 12, 2000
There are many areas of human endeavor that can be used as an analogy for software development. In this book, the author uses mountain climbing to illustrate his points about teamwork, planning and adaptation to rapidly changing conditions. The points are well-taken, although he does stretch it a bit. If the team doesn't function well or a judgment error is committed while climbing, there is the real and immediate threat of injury or death. Similar problems in software development lead to much gentler consequences that are sometimes years in the future. One does not easily change teams in the middle of a climb and developers often have several golden ropes to clutch if it is necessary to leave. Nevertheless, the comparison is largely a good one. The most significant point is about how software development must be a process of aggressive, rapid adaptation to changing conditions. Among all the things that we do, software construction changes faster than anything else. The solution is to perform the delicate act of balancing on the head of a pin. On one side, there is the necessity of setting down standards of rigor that will keep the process within acceptable boundaries. However, the addition of too much rigor and the mortis sets in, making it too difficult to change the product when the inevitable modifications are needed. Many such strategies for how to maintain this minuscule middle are set forward. There are many points of sound advice in this book, several of which lead to the following simple adage. "Rules can be barriers to hide behind or guidelines for the wise to consider and break when the circumstances justify it." Effectively executing the latter is the not so secret plan for success in the current IT world of dynamic competition. I respectfully disagree with the author on one point. He argues that the day of the lone "coding cowboy", where one programmer builds a killer app, is over. While the lone programmer may be a thing of the past, the small team is not, and some small teams of two or three can work wonders. The second point of my disagreement are due to the increasing use of components and rapid development tools. Given the library of tools that can be used, it is now possible for one person to put several distinct items together in a unique way and build a complete system. Furthermore, it may be possible for a lone programmer to build the next little "big thing" component that could revolutionize how we do some things. Despite my occasional disagreements with the points made, reading this book made me think a little harder about some aspects of the software development process. The authors' metaphors of biological adaptation and mountain climbing have many equivalencies in software development that should be seriously considered.
|
|
|
9 of 9 people found the following review helpful:
5.0 out of 5 stars
Solid theory behind the Agile movement, February 5, 2002
By A Customer
Highsmith postulates: "If the core of our belief system about managing organizations is rooted in the old science of deterministic Newtonian physics and survival-of-the-fittest Darwinian biology, then only a new science such as complex adaptive systems with an equally powerful philosophy and scientific foundation provides the credibility necessary for a major management cultural evolution."He then persuasively uses the science and language of complex adaptive system theory to provide new conceptual models to guide complex software development projects. His presentation is refreshingly well thought out, synthesizing much of the best ideas in science and business management in the past decade to software development. Highsmith succeeds is providing a theoretical basis for the Agile methodologies that are sprouting up everywhere (XP being the best known). If you are looking for specific best practices of software development, look elsewhere. But if you want to understand the true nature of software development as well as principles in harnessing change as a competitive advantage, you will not find a better book. I couldn't recommend it any more strongly.
|
|
|
Most Recent Customer Reviews
|