LOGICAL DATA MODELING
INTEGRATED SERIES IN INFORMATION SYSTEMS Professor Ramesh Sharda Oklahoma State University Series Editors Prof. Dr. Stefan VoB Universitat Hamburg Expository and Research Monographs Integrative Handbooks Advanced Topics on Information Systems! Expository Research Selected Dissertations ' State of the art of application domain and/or reference disciplines as related to information systems Edited refereed numbered volumes Guest edited by experts Refereed conference proceedings Other published titles in the series: E-BUSINESS MANAGEMEISTT: Integration of Web Technologies with Business Models! Michael J. Shaw VIRTUAL CORPORATE UNIVERSITIES: A Matrix of Knowledge and Learning for the New Digital Dawn/Walter RJ. Baets & Gert Van der Linden SCALABLE ENTERPRISE SYSTEMS: An Introduction to Recent Advances/ edited by Vittal Prabhu, Soundar Kumara, Manjunath Kamath LEGAL PROGRAMMING; Legal Compliance for RFID and Software Agent Ecosystems in Retail Processes and Beyond/ Brian Subirana and Malcolm Bain
LOGICAL DATA MODELING What it is and How to do it Alan Chmura Eastern New Mexico University, Portales, New Mexico J. Mark Heumann META Group EMEA, Dubai, UAE Springer
Alan Chmura Eastern New Mexico University Portales, New Mexico J. Mark Heumann META Group EMEA Dubai, UAE Library of Congress Cataloging-in-Publication Data A CLP. Catalogue record for this book is available from the Library of Congress. ISBN 0-387-22950-7 e-isbn 0-387-22962-0 Printed on acid-free paper. 2005 Springer Science+Business Media, Inc. All rights reserved. This work may not be translated or copied in whole or in part without the written permission of the publisher (Springer Science + Business Media, Inc., 233 Spring Street, New York, NY 10013, USA), except for brief excerpts in connection with reviews or scholarly analysis. Use in connection with any form of information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now know or hereafter developed is forbidden. The use in this publication of trade names, trademarks, service marks and similar terms, even if the are not identified as such, is not to be taken as an expression of opinion as to whether or not they are subject to proprietary rights. Printed in the United States of America. 987654321 SPIN 11054832 springeronline.com
Contents Preface Acknowledgments vii xi 1. GETTING STARTED 1 2. THE ART GALLERY WEB: A DATA MODELING EXAMPLE 31 3. BUILDING THE DATA MAP 35 4. THE ART GALLERY WEB (CONTINUED) 55 5. KEYS AND VALID ASSOCIATIONS 63 6. THE ART GALLERY WEB (CONTINUED) 99 7. DEFINING ATTRIBUTES 109 8. THE ART GALLERY WEB (CONTINUED) 127 9. VERIFYING THE DATA MODEL 133
vi Contents 10. VALIDATING THE DATA MODEL 149 11. DESIGN PATTERNS 167 12. FROM LOGICAL TO PHYSICAL 197 13. THE END AND THE BEGINNING 217 References 221 Index 223
Preface This book is directed toward three groups of people: Business subject matter experts Information technology professionals Advanced students in Computer Science, Management Information Systems, and e-business. The book's purpose is to teach the basics of logical data modeling specifically, data modeling for relational database management systemsin simple, practical terms and in a business context. We feel that relational data modeling is better than oriented data modeling, hierarchical data modeling, and network data modeling when it comes to modeling real business activities. We have written this book from the point of view of the project leader or project manager, a subject matter expert charged with developing a relational database and the information systems which interact with that database. Of course, real-world data modeling is best done by experienced data modelers. But by reading and understanding this book, the enterpriseside project manager should gain enough understanding of data modeling to follow what is going on and help communicate that understanding to the people who know the business, do the work, and are going to be affected by the system being built. The person who masters this material should be able to show an understanding of the business function of logical data modeling
viii Preface show an understanding of the role of collaboration and community in building a data model collect business rules for a functional area write formal Business Statements translate those Business Statements into logical data model entities, s, and s build a data map create an list validate the data model against normalization and other standards assist a Database Administrator in translating the logical data model into a physical data model. Advisory The Boy Scouts place this statement at the beginning of every recipe they publish: Sounds like good advice to us. Read instructions twice before starting. A NOTE ON TERMINOLOGY There is no universal agreement regarding the terms used in logical data modeling. The following table shows many essential terms used in this book and corresponding terms in several data modeling notations other than ours. The table is not intended to exhaust the vocabulary of data modeling, nor are all data modeling notations represented. We do not claim that the terms we have provided are necessarily the best or the only terms, or that we have completed work on the matrix. We have excluded several flavors of (Principal, Role, Structure, and Type) because we have discovered few if any directly correlating examples in notations other than Information Engineering. Strong and weak flavors, used in some notations, do not correspond directly with Information Engineering notation. Unified Modeling Language (UML) is a generalized language. It deals with s and classes (constructs within the -oriented paradigm), not data per se, and it is usually used for defining the components of software applications other than relational databases (the kind of database for which we are modeling). Because UML is generalized and oriented, its terminology maps only approximately to the terminology used in this book.
Logical data modeling IX The following sources were used in preparing this table: Chen Entity Relationship: Chen 1976. IDEFIX: US Government 1993. Oracle/Barker: Halpin 2000; Barker 1990; Burek 2004. Semantic Object Model: Kroenke 2002. UML: Object Management Group 2003. This book cardinality categorizing child compound primary key data map foreign key instance identifying intersecting key mandatory nonidentifying 1 Chen Entity- Relationship cardinality, connectivity weak, dependent, type, set intersection, bridge identifier IDEFIX cardinality categorizing child composite key diagram foreign key, migrated instance identifying associative key mandatory nonidentifying Oracle/ Barker cardinality, degree type, unique identifier mandatory Semantic Object Model semantic, link, property cardinality subtype group identifier semantic model class instance mandatory UML 1 cardinality, multiplicity child class diagram class instance class
Preface This book non-key optional optionality parent primary key recursive secondary subtype supertype Chen Entity- Relationship descriptor optional optionality, existence, independent type identifier unary sub-type, subtype super-type IDEFIX non-key optional parent primary key categorizing sub-type, sub-class, category generic, super-type, super-class Oracle/ Barker optional optionality primary identifier, primary key recursive subtype supertype Semantic Object Model optional parent identifier subtype parent UML 1 1 parent, superclass child, subclass subtype, generalization supertype
Acknowledgments We acknowledge with gratitude the contributions made by Clive Finkelstein, the Father of Information Engineering. His books An Introduction to Information Engineering: From Strategic Planning to Information Systems (Sydney: Addison-Wesley, 1990) and Information Engineering: Strategic Systems Development (Sydney: Addison-Wesley, 1992) have been of inestimable value. We wish also to thank Visible Systems Corporation for their support, both for giving us use of their enterprise modeling tool Visible Advantage and for answering the many questions that arose in the course of writing Craig Mullins, Database Administration: The Complete Guide to Practices and Procedures (Boston: Addison-Wesley, 2002), for his contribution to our discussion of denormalization (Chapter 12) Michael C. Reingruber and William W. Gregory, The Data Modeling Handbook (New York: Wiley, 1994), for their contributions to our discussion of s (Chapter 7), verification (Chapter 9), and normalization (Chapter 10). Peter Rob and Elie Semaan, Databases: Design, Development, and Deployment Using Microsoft Access, 2nd ed. (New York: Irwin McGraw-Hill, 2004), for their contribution to our discussion of normalization (Chapter 10).