Database Design for Smarties: Using UML for Data Modeling (The Morgan Kaufmann Series in Data Management Systems)
If you want to see how your next database project can profit from object-oriented design, check outDatabase Design for Smarties, a lively and intelligent guide to using objects in databases.The book begins with a tour of some underlying factors in modeling databases. Here, the author distinguishes between theexternal,conceptual, andinternal modelsof database design.) Then it's on to data architectures, be they the traditionalrelationalor the newerobject-relationalandobject-oriented(OO) database types.After discussing some of the pitfalls of gathering and implementing user requirements, the author looks at UML notation for use case diagrams. (His example here, a crime database for tracking Sherlock Holmes's stories, along with criminals and clues, is both intelligent and entertaining.)The author's guide to UML class design is topnotch. He covers basic and advanced OO concepts such as inheritance, aggregation, composition, and polymorphism with clear and concise explanations. He also shows you how to model business rules using objects and UML class diagrams. The most valuable part of this book comes with the mapping of UML class diagrams onto three different kinds of databases: relational (on Oracle7), object-relational (on Oracle8), and object-oriented (on the POET platform). The author shows how to emulate object-oriented ideas successfully using stored procedures and triggers, even if you are not running on a "true" object-oriented platform.Exceptionally well-written and clear,Database Design for Smartiesoffers consistently invaluable advice on how to take advantage of objects to create simpler and more maintainable database designs.--Richard Dragan