By Jeffrey S. Poulin,
Loral Federal Systems
In his book on Object-Oriented Database (OODB) Systems, Bindu Rao touches on the merits of OO and OO databases, the demerits of relational systems, and the features provided by several leading OODB products. The book contains a large amount of itemized information presented, unfortunately, without adequate discussion, analysis, or comparison. This, coupled with an incomplete index and glossary, relegates the book to a secondary role in the practitioner's reference library.
Rao sets the stage nicely with introductory material on OO concepts to include an excellent tutorial on the major OO design methods by Rumbaugh, Shlaer-Mellor, Wirfs-Brock, and Schultz's Seven Step Approach to OOD. Following this background, the book assumes a working knowledge of databases and OO concepts. Rao proceeds to dive into the detailed shortcomings of relational systems and the goals and features used by OODBs to address these shortcomings.
Rao has assembled a wealth of sources and material on OODB issues and products. However, he presents the material in list after list of problems, issues, features, and goals. Except for several extended quotations, the book contains very little accompanying text to explain the lists, much less help the reader identify the most important issues the book claims to address. Even some of the best chapters on example commercial OODBs (ObjectStore, Objectivity/DB, and Versant) contain little material beyond the introductions found in those product's user manuals, which in fact provide the only cited references. The reader gets the impression that the manuscript resulted from a compilation of presentation charts; the book contains the bullets but lacks the annotations.
General disappointment stems not only from the lack of analysis but also the overall lack of consistency and structure in the text. For example, several chapters contain only 3-4 pages of mostly lists taken from other sources. The book has a sadly incomplete index and glossary, typographic errors, and other editorial inconsistencies ranging from notation to grammar. These problems all lead the reader to question the commitment made to this book.
Because Rao has brought together information from a variety of sources, the book could provide a formidable resource for instructional or presentation material. Professors or professional trainers can use the lists to construct charts of their own or to validate the charts they already have. Some readers will simply benefit from Rao's compilation and find the book a useful reference when they need to consult the highlights of major products or methods. These chapters contain the most useful information in the text, to include example code illustrating the features of ObjectStore and Objectivity/DB.
Although Rao has successfully enumerated OODB issues, his book does little to add understanding of the topic nor help the reader appreciate, prioritize, or comprehend the trade-offs surrounding each issue. The book will help professors and trainers who already understand OODBs prepare better classes, charts, and handouts. However, for the student of OODBs or engineer seeking to make more informed decisions regarding OODBs, the book does not contain adequate analysis, discussions, or comparisons to serve as a useful text.
Object-Oriented Databases: Technology, Applications, and Products by Bindu R. Rao, McGraw-Hill, New York, 1994. 272 pp. Hardcover, ISBN 0-07-051279-5, $40.00.