Mentoring Object Technology Projects
In Mentoring Object Technology Projects, one of the world's leading object development consultants presents a complete life cycle framework for managing any object-based project. Drawing on his consulting experience in 28 countries, Richard T. Dué covers every facet of project management, including planning, estimating, staffing, organization, implementation, ongoing supervision, and more.
Coverage includes:
- Why traditional IT project management approaches do not work in object-based environments
- The critical success factors in object project management
- Exclusive "rule-of-thumb" metrics for estimating and monitoring object technology projects
- Building realistic project schedules
- Objective evaluations of today's leading methodologies, including the Unified and OPEN approaches
- Includes templates and techniques you can apply immediately to manage object-oriented projects from start to finish
Whether you're an "in-the-trenches" project manager, an IT executive, planner, developer, or IT client, these are the object technology best practices you need to succeed-no matter what your project, language, tools, notation, or methodology.
Review By: Jon D. Hagar
01/13/2003
For many years now, companies and projects have been trying object-oriented (OO) technologies and failing, or meeting with mixed results. This author offers his experience as a consultant who helps guide managers and engineers into the object technology world. The book views OO from an engineering management perspective, offering mentoring advice in the form of a series of lessons learned during the author’s consulting on a variety of OO projects. It focuses on OO management and IT issues.
The book has twelve chapters addressing the OO challenge; productivity (or lack thereof during start-up); management issues on OO projects; organization and staffing; business modeling; overviews of OO methodologies and techniques, including issues of each; and tools. These topics are presented in a fashion that managers working in other environments will find interesting when converting to object technologies, and they will help the manager already working in OO. The book concludes with some examples, guidelines (outlines) for getting started, and some musings on future trends in the IT industry, which make for interesting reading (although it is risky to make predictions).
The book focuses on the complete business lifecycle, not just the engineering phases. It considers business process and reengineering. Throughout the book’s various sections, the author constantly considers what it takes to make cultural shifts happen and succeed. Object engineering has been the focus of many companies and projects in the belief that it offers improvement to the engineering and business profitability.
The middle of the book considers frameworks, patterns, OO approaches, and techniques. These are not presented as in-depth “how-tos,” but at a level where a manager can understand which things will help in the decision-making or tradeoffs. The author presents both the positives and pitfalls that teams must keep in mind to be successful. The book’s presentation, while having the object bias, does not favor one set of OO methods, techniques, or tools over another. By using the key points presented in each chapter, managers can quickly come up to speed, while the questions at the end of each section can be used to provoke thought and further reading.
The book offers considerations throughout its pages on Agile approaches, which object technologies can support, though it is not clear that OO is necessary in Agile or vice versa. The inclusion of Agile concepts makes the book of interest to those looking to move into Agile along with OO.
Since the book is a management-level view of the world, coverage of quality assurance (QA) and test topics are dealt with at the same level as code design and implementation (this is not a QA or test book). Developers, QA, or test professionals will not find this book of technical interest, but should read the book to understand things from a management perspective, which too often these parties fail to consider.
The book has an easy-to-read format, offering executive summaries and key points at the beginning of each chapter. Inside the chapters are many lists that a quick reader can benefit from. Also, once into design areas, a variety of ready-to-use forms are offered and these forms would be a good starting point for many managers. However, the book is not a technical guide on OO, OOA, OOD, or OOP, nor was it intended to be. It is very much focused on the business and management levels. Readers looking for details on OO methods would best be served looking elsewhere. The book does offer what the manager needs to consider as seen from the eyes of a consultant.
If you are a project manager or business person looking to move your software project or company into the OO world, then this book offers valuable insight in an easy-to-follow flow without getting too technical.