-
Goals of designing a database
- Eliminate redundancy
- Eliminate inconsistency
-
Design phases
- Initial
- Conceptual
- Logical
- Normalization
-
Initial design phase
- Gather and summarize functional and data requirements from the user
- Identify entities, attributes and relationships
-
Conceptual design phase
- Choose a conceptual model (e.g ERM)
- Represent data requirements using chosen model
- Don't worry about implementation at this step
-
Logical design phase
- Map conceptual model to implementation model
- Forming relations, objects etc
-
Normalization phase
- Test for good design
- Correct design errors
-
Entity-relationship model
- High level visual specification of a database schema
- Represents entities, attributes and relationships
- Supports specification contraints
-
Entity
A visible or invisible object in the real world
-
Entity set
- A set of entities of the same type
- A.k.a entity type
-
Attributes
- Properties that describe all members of an entity set
- Each entity has it's own value for each attribute
-
Relationship
Association among two or more entities
-
Relationship set
- Set of all relationships of the same type (a.k.a relationship type)
- Entities participate in a relationship
-
Visible object
Exist in the real world
-
Invisible object
Does not exist in the real world, only conceptually (abstract)
|
|