Introduction to Database Design
Major Steps in Database Design
- Requirements Analysis: Talk to the potential users!
Understand what data is to be stored, and what operations and
requirements are desired.
- Conceptual Database Design: Develop a high-level
description of the data and constraints (we will use the ER data
- Logical Database Design: Convert the conceptual model
to a schema in the chosen data model of the DBMS. For a relational
database, this means converting the conceptual to a relational schema
- Schema Refinement: Look for potential problems in the
original choice of schema and try to redesign.
- Physical Database Design: Direct the DBMS into choice
of underlying data layout (e.g., indexes and clustering) in hopes of
optimizing the performance.
- Applications and Security Design: How will the
underlying database interact with surrounding applications.
Entity-Relationship Data Model (ER)
It is often helpful to visualize an ER model via a diagram. There are
many variant conventions for such diagrams; we will adapt the one used
in the text.
diagram example (Figure 2.1 of text)
Specifying additional constraints
Conceptual Design with the ER Model
It is most important to recognize that there is more than one way to
model a given situation. Our next goal is to start to compare the
pros and cons of common choices.