Data Modeling Essentials - 3rd Edition - ISBN: 9780126445510, 9780080488677

Data Modeling Essentials

3rd Edition

Authors: Graeme Simsion Graeme Simsion Graham Witt
eBook ISBN: 9780080488677
Paperback ISBN: 9780126445510
Imprint: Morgan Kaufmann
Published Date: 4th November 2004
Page Count: 560
Sales tax will be calculated at check-out Price includes VAT/GST
Price includes VAT/GST

Institutional Subscription

Secure Checkout

Personal information is secured with SSL technology.

Free Shipping

Free global shipping
No minimum order.

Table of Contents

Contents Preface Chapter 1 - What Is Data Modeling? 1.1 Introduction 1.2 A Data-Centered Perspective 1.3 A Simple Example 1.4 Design, Choice, and Creativity 1.5 Why Is the Data Model Important? 1.6 What Makes a Good Data Model? 1.7 Performance 1.8 Database Design Stages and Deliverables 1.9 Where Do Data Models Fit In? 1.10 Who Should Be Involved in Data Modeling? 1.11 Is Data Modeling Still Relevant? 1.12 Alternative Approaches to Data Modeling 1.13 Terminology 1.14 Where to from Here?—An Overview of Part 1 1.15 Summary Chapter 2 - Basics of Sound Structure 2.1 Introduction 2.2 An Informal Example of Normalization 2.3 Relational Notation 2.4 A More Complex Example 2.5 Determining Columns 2.6 Repeating Groups and First Normal Form 2.7 Second and Third Normal Forms 2.8 Definitions and a Few Refinements 2.9 Choice, Creativity, and Normalization 2.10 Terminology 60 2.11 Summary 61 Chapter 3 - The Entity-Relationship Approach 3.1 Introduction 3.2 A Diagrammatic Representation 3.3 The Top-Down Approach: Entity-Relationship Modeling 3.4 Entity Classes 3.5 Relationships 3.6 Attributes 3.7 Myths and Folklore 3.8 Creativity and E-R Modeling 3.9 Summary Chapter 4 - Subtypes and Supertypes 4.1 Introduction 4.2 Different Levels of Generalization 4.3 Rules Versus Stability 4.4 Using Subtypes and Supertypes 4.5 Subtypes and Supertypes as Entity Classes 4.6 Diagramming Conventions 4.7 Definitions 4.8 Attributes of Supertypes and Subtypes 4.9 Non-Overlapping and Exhaustive 4.10 Overlapping Subtypes and Roles 4.11 Hierarchy of Subtypes 4.12 Benefits of Using Subtypes and Supertypes 4.13 When Do We Stop Supertyping and Subtyping? 4.14 Generalization of Relationships 4.15 Theoretical Background 4.16 Summary Chapter 5 - Attributes and Columns 5.1 Introduction 5.2 Attribute Definition 5.3 Attribute Disaggregation: One Fact Per Attribute 5.4 Types of Attributes 5.5 Attribute Names 5.6 Attribute Generalization 5.7 Summary Chapter 6 - Primary Keys and Identity 6.1 Basic Requirements and Trade-Offs 6.2 Basic Technical Criteria 6.3 Surrogate Keys 6.4 Structured Keys 6.5 Multiple Candidate Keys 6.6 Guidelines for Choosing Keys 6.7 Partially-Null Keys 6.8 Summary Chapter 7 - Extensions & Alternatives 7.1 Introduction 7.2 Extensions to the Basic E-R Approach 7.3 The Chen E-R Approach 7.4 Using UML Object Class Diagrams 7.5 Summary Chapter 8 - Organizing the Data Modeling Task 8.1 Data Modeling in the Real World 8.2 Key Issues in Project Organization 8.3 Roles and Responsibilities 8.4 Partitioning Large Projects 8.5 Maintaining the Model 8.6 Packaging It Up 8.7 Summary Chapter 9 - The Business Requirements 9.1 Purpose of the Requirements Phase 9.2 The Business Case 9.3 Interviews and Workshops 9.4 Riding the Trucks 9.5 Existing Systems and Reverse Engineering 9.6 Process Models 9.7 Object Class Hierarchies 9.8 Summary Chapter 10 - Conceptual Data Modeling 10.1 Designing Real Models 10.2 Learning from Designers in Other Disciplines 10.3 Starting the Modeling 10.4 Patterns and Generic Models 10.5 Bottom-Up Modeling 10.6 Top-Down Modeling 10.7 When the Problem is Too Complex 10.8 Hierarchies, Networks, and Chains 10.9 One-to-One Relationships 10.10 Developing Entity Class Definitions 10.11 Handling Exceptions 10.12 The Right Attitude 10.13 Evaluating the Model 10.14 Direct Review of Data Model Diagrams 10.15 Comparison with the Process Model 10.16 Testing the Model with Sample Data 10.17 Prototypes 10.18 The Assertions Approach 10.19 Summary Chapter 11 - Logical Database Design 11.1 Introduction 11.2 Overview of the Transformations Required 11.3 Table Specification 11.4 Basic Column Definition 11.5 Primary Key Specification 11.6 Foreign Key Specification 11.7 Table and Column Names 11.8 Logical Data Model Notations 11.9 Summary Chapter 12 - Physical Database Design 12.1 Introduction 12.2 Inputs to Database Design 12.3 Options Available to the Database Designer 12.4 Design Decisions Which Do Not Affect Program Logic 12.5 Crafting Queries to Run Faster 12.6 Logical Schema Decisions 12.7 Views 12.8 Summary Chapter 13 - Advanced Normalization 13.1 Introduction 13.2 Introduction to the Higher Normal Forms 13.3 Boyce-Codd Normal Form 13.4 Fourth Normal Form (4NF) and Fifth Normal Form (5NF) 13.5 Beyond 5NF: Splitting Tables Based on Candidate Keys 13.6 Other Normalization Issues 13.7 Advanced Normalization in Perspective 13.8 Summary Chapter 14 - Modeling Business Rules 14.1 Introduction 14.2 Types of Business Rules 14.3 Discovery and Verification of Business Rules 14.4 Documentation of Business Rules 14.5 Implementing Business Rules 14.6 Rules on Recursive Relationships 14.7 Summary Chapter 15 - Time-Dependent Data 15.1 The Problem 15.2 When Do We Add the Time Dimension? 15.3 Audit Trails and Snapshots 15.4 Sequences and Versions 15.5 Handling Deletions 15.6 Archiving 15.7 Modeling Time-Dependent Relationships 15.8 Date Tables 15.9 Temporal Business Rules 15.10 Changes to the Data Structure 15.11 Putting it into Practice 15.12 Summary Chapter 16 - Modeling for Data Warehouses and Data Marts 16.1 Introduction 16.2 Characteristics of Data Warehouses and Data Marts 16.3 Quality Criteria for Warehouse and Mart Models 16.4 The Basic Design Principle 16.5 Modeling for the Data Warehouse 16.6 Modeling for the Data Mart 16.7 Summary Chapter 17 - Enterprise Data Models and Data Management 17.1 Introduction 17.2 Data Management 17.3 Classification of Existing Data 17.4 A Target for Planning 17.5 A Context for Specifying New Databases 17.6 Guidance for Database Design 17.7 Input to Business Planning 17.8 Specification of an Enterprise Database 17.9 Characteristics of Enterprise Data Models 17.10 Developing an Enterprise Data Model 17.11 Choice, Creativity, and Enterprise Data Models 17.12 Summary Further Reading


Data Modeling Essentials, Third Edition, covers the basics of data modeling while focusing on developing a facility in techniques, rather than a simple familiarization with "the rules". In order to enable students to apply the basics of data modeling to real models, the book addresses the realities of developing systems in real-world situations by assessing the merits of a variety of possible solutions as well as using language and diagramming methods that represent industry practice.

This revised edition has been given significantly expanded coverage and reorganized for greater reader comprehension even as it retains its distinctive hallmarks of readability and usefulness. Beginning with the basics, the book provides a thorough grounding in theory before guiding the reader through the various stages of applied data modeling and database design. Later chapters address advanced subjects, including business rules, data warehousing, enterprise-wide modeling and data management. It includes an entirely new section discussing the development of logical and physical modeling, along with new material describing a powerful technique for model verification. It also provides an excellent resource for additional lectures and exercises.

This text is the ideal reference for data modelers, data architects, database designers, DBAs, and systems analysts, as well as undergraduate and graduate-level students looking for a real-world perspective.

Key Features

  • Thorough coverage of the fundamentals and relevant theory.
  • Recognition and support for the creative side of the process.
  • Expanded coverage of applied data modeling includes new chapters on logical and physical database design.
  • New material describing a powerful technique for model verification.
  • Unique coverage of the practical and human aspects of modeling, such as working with business specialists, managing change, and resolving conflict.


data modelers, data architects, database designers, DBAs, systems analysts; undergraduate and graduate-level students


No. of pages:
© Morgan Kaufmann 2004
Morgan Kaufmann
eBook ISBN:
Paperback ISBN:


"The perfect balance of theory and practice, giving the reader both the foundation and the tools to deliver high-quality data models." -Karen Lopez, Principal, InfoAdvisors, Inc. "The complete guide to data modeling for the reflective practitioner. Students like this book and so do I -- it is clear and accessible without sacrificing rigor." -Professor Graeme Shanks, School of Business Systems, Monash University, Australia "A unique, practical and comprehensive guide, providing an invaluable resource to anyone involved in data modeling from the novice to the expert data modeler." -Len Silverston, author of The Data Model Resource Book, Volumes 1 and 2. "Includes an extraordinary amount of good, useful, and well articulated information about the field." -David Hay, President, Essential Strategies, Inc. and author of Data Model Patterns "Data Modeling Essentials is a fresh look at an old topic...much more accesible and refreshing in its tone and attitude. Simsion's explanations are very clear and his examples easy to follow...This book is useful for both beginners and experienced data modelers who want a new innovative approach to the important task of documenting data requirements." - The Bridge --Barbara A. Carkenord "The book is extremely well-written. It is humorous at times, full of useful anecdotes, and follows a very logical sequence...In summary, I found Data Modeling Essentials, Third Edition, very useful for data modelers at any level of experience." - DM Review

Ratings and Reviews

About the Authors

Graeme Simsion Author

Graeme C. Simsion has over 25 years experience in information systems as a DBA, data modeling consultant, business systems designer, manager, and researcher. He is a regular presenter at industry and academic forums, and is currently a Senior Fellow with the Department of Information Systems at the University of Melbourne.

Affiliations and Expertise

Senior Fellow, University of Melbourne, Australia

Graeme Simsion Author

Graeme C. Simsion has over 25 years experience in information systems as a DBA, data modeling consultant, business systems designer, manager, and researcher. He is a regular presenter at industry and academic forums, and is currently a Senior Fellow with the Department of Information Systems at the University of Melbourne.

Affiliations and Expertise

Senior Fellow, University of Melbourne, Australia

Graham Witt Author

Graham C. Witt is an independent consultant with over 30 years of experience in assisting enterprises to acquire relevant and effective IT solutions. His clients include major banks and other financial institutions; businesses in the insurance, utilities, transport and telecommunications sectors; and a wide variety of government agencies. A former guest lecturer on Database Systems at University of Melbourne, he is a frequent presenter at international data management conferences.

Affiliations and Expertise

Independent Consultant, Sydney, Australia