Skip to main content

Data Modeling Essentials

  • 3rd Edition - November 4, 2004
  • Latest edition
  • Authors: Graeme Simsion, Graham Witt
  • Language: English

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… Read more

World Book Day celebration

Where learning shapes lives

Up to 25% off trusted resources that support research, study, and discovery.

Description

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

Readership

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

Table of contents

Chapter 1 - What Is Data Modeling?1.1 Introduction1.2 A Data-Centered Perspective1.3 A Simple Example1.4 Design, Choice, and Creativity1.5 Why Is the Data Model Important?1.6 What Makes a Good Data Model?1.7 Performance1.8 Database Design Stages and Deliverables1.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 Modeling1.13 Terminology1.14 Where to from Here?—An Overview of Part 11.15 SummaryChapter 2 - Basics of Sound Structure2.1 Introduction2.2 An Informal Example of Normalization2.3 Relational Notation2.4 A More Complex Example2.5 Determining Columns2.6 Repeating Groups and First Normal Form2.7 Second and Third Normal Forms2.8 Definitions and a Few Refinements2.9 Choice, Creativity, and Normalization2.10 Terminology 602.11 Summary 61Chapter 3 - The Entity-Relationship Approach3.1 Introduction3.2 A Diagrammatic Representation3.3 The Top-Down Approach: Entity-Relationship Modeling3.4 Entity Classes3.5 Relationships3.6 Attributes3.7 Myths and Folklore3.8 Creativity and E-R Modeling3.9 SummaryChapter 4 - Subtypes and Supertypes4.1 Introduction4.2 Different Levels of Generalization4.3 Rules Versus Stability4.4 Using Subtypes and Supertypes4.5 Subtypes and Supertypes as Entity Classes4.6 Diagramming Conventions4.7 Definitions4.8 Attributes of Supertypes and Subtypes4.9 Non-Overlapping and Exhaustive4.10 Overlapping Subtypes and Roles4.11 Hierarchy of Subtypes4.12 Benefits of Using Subtypes and Supertypes4.13 When Do We Stop Supertyping and Subtyping?4.14 Generalization of Relationships4.15 Theoretical Background4.16 SummaryChapter 5 - Attributes and Columns5.1 Introduction5.2 Attribute Definition5.3 Attribute Disaggregation: One Fact Per Attribute5.4 Types of Attributes5.5 Attribute Names5.6 Attribute Generalization5.7 SummaryChapter 6 - Primary Keys and Identity6.1 Basic Requirements and Trade-Offs6.2 Basic Technical Criteria6.3 Surrogate Keys6.4 Structured Keys6.5 Multiple Candidate Keys6.6 Guidelines for Choosing Keys6.7 Partially-Null Keys6.8 SummaryChapter 7 - Extensions & Alternatives7.1 Introduction7.2 Extensions to the Basic E-R Approach7.3 The Chen E-R Approach7.4 Using UML Object Class Diagrams7.5 SummaryChapter 8 - Organizing the Data Modeling Task8.1 Data Modeling in the Real World8.2 Key Issues in Project Organization8.3 Roles and Responsibilities8.4 Partitioning Large Projects8.5 Maintaining the Model8.6 Packaging It Up8.7 SummaryChapter 9 - The Business Requirements9.1 Purpose of the Requirements Phase9.2 The Business Case9.3 Interviews and Workshops9.4 Riding the Trucks9.5 Existing Systems and Reverse Engineering9.6 Process Models9.7 Object Class Hierarchies9.8 SummaryChapter 10 - Conceptual Data Modeling10.1 Designing Real Models10.2 Learning from Designers in Other Disciplines10.3 Starting the Modeling10.4 Patterns and Generic Models10.5 Bottom-Up Modeling10.6 Top-Down Modeling10.7 When the Problem is Too Complex10.8 Hierarchies, Networks, and Chains10.9 One-to-One Relationships10.10 Developing Entity Class Definitions10.11 Handling Exceptions10.12 The Right Attitude10.13 Evaluating the Model10.14 Direct Review of Data Model Diagrams10.15 Comparison with the Process Model10.16 Testing the Model with Sample Data10.17 Prototypes10.18 The Assertions Approach10.19 SummaryChapter 11 - Logical Database Design11.1 Introduction11.2 Overview of the Transformations Required11.3 Table Specification11.4 Basic Column Definition11.5 Primary Key Specification11.6 Foreign Key Specification11.7 Table and Column Names11.8 Logical Data Model Notations11.9 SummaryChapter 12 - Physical Database Design12.1 Introduction12.2 Inputs to Database Design12.3 Options Available to the Database Designer12.4 Design Decisions Which Do Not Affect Program Logic12.5 Crafting Queries to Run Faster12.6 Logical Schema Decisions12.7 Views12.8 SummaryChapter 13 - Advanced Normalization13.1 Introduction13.2 Introduction to the Higher Normal Forms13.3 Boyce-Codd Normal Form13.4 Fourth Normal Form (4NF) and Fifth Normal Form (5NF)13.5 Beyond 5NF: Splitting Tables Based on Candidate Keys13.6 Other Normalization Issues13.7 Advanced Normalization in Perspective13.8 SummaryChapter 14 - Modeling Business Rules14.1 Introduction14.2 Types of Business Rules14.3 Discovery and Verification of Business Rules14.4 Documentation of Business Rules14.5 Implementing Business Rules14.6 Rules on Recursive Relationships14.7 SummaryChapter 15 - Time-Dependent Data15.1 The Problem15.2 When Do We Add the Time Dimension?15.3 Audit Trails and Snapshots15.4 Sequences and Versions15.5 Handling Deletions15.6 Archiving15.7 Modeling Time-Dependent Relationships15.8 Date Tables15.9 Temporal Business Rules15.10 Changes to the Data Structure15.11 Putting it into Practice15.12 SummaryChapter 16 - Modeling for Data Warehouses and Data Marts16.1 Introduction16.2 Characteristics of Data Warehouses and Data Marts16.3 Quality Criteria for Warehouse and Mart Models16.4 The Basic Design Principle16.5 Modeling for the Data Warehouse16.6 Modeling for the Data Mart16.7 SummaryChapter 17 - Enterprise Data Models and Data Management17.1 Introduction17.2 Data Management17.3 Classification of Existing Data17.4 A Target for Planning17.5 A Context for Specifying New Databases17.6 Guidance for Database Design17.7 Input to Business Planning17.8 Specification of an Enterprise Database17.9 Characteristics of Enterprise Data Models17.10 Developing an Enterprise Data Model17.11 Choice, Creativity, and Enterprise Data Models17.12 Summary

Review quotes

"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

Product details

  • Edition: 3
  • Latest edition
  • Published: December 3, 2004
  • Language: English

About the authors

GS

Graeme Simsion

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

GW

Graham Witt

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