| This book is a practical guide to modern software development. It grew out of a course I regularly teach at TASC, which itself began as happenstance. I had been asked to appraise an online course on managing object-oriented development. I hated it. It was a rehash of the old, discredited waterfall methods of software development. They replaced the design and code steps plus some object jargon. When I expressed this opinion, TASC management threw down the gauntlet, essentially saying, “If you are so smart, then you teach the course.”
While preparing the course, I realized a few things: The first is that we in the industry really do know how to manage software development. There is no reason for software development to be a risky, high-stress business. On the other hand, most programs do not seem to benefit from what we have learned over the last few years. Second, a lot of material must be covered when teaching software management, most of which is not commonly taught in universities. And because developers are still the best source of software managers, it is important that a book be available to teach the trade. As of this writing, I know of no other book that covers the material that I feel is essential for any project manager.
The third realization is that the use of objects and object design languages such as the Unified Modeling Language (UML) can improve not only the technical quality of the development: It can also facilitate the task of the project managers. I believe that all new software development projects should adopt object methodology and be managed according to the techniques in this book. |