Professional Documents
Culture Documents
Database Design:
Conceptual Design
Introduction
SYS. ANALYSIS
Information
Gathering
Analyze
WFD, AD, Project Mgt
Proces Information etc
s DFD
Model
Logical DFD
current s& new
system
Data Model
SYS. PLANNING
Decision table, E-R
decision trees, Diagram
etc Feasibilit
Process Design PDReport y
DFD
Output Design
SYS. IMPLEMENTATION
Input Design Program Design
Mapping
Design
Design abstraction
mechanism
design
methodologies
Design
Design Mapping
Physical
Physical
Implementation Design
Design
concreate
Phases of Database Design
Application Domain
Requirements Analysis
Conceptual Schema
Logical Design
Implementation Schema
Logical
Conceptual Design Logical Data
Conceptual
Model
level Schema
Physical
Design
Internal Internal Physical Data
level Schema Model
Steps For Designing
Database
Conceptual Design STEP 1
STEP 2
Logical Design
STEP 3
STEP 4 STEP 6
STEP 5 STEP 7
Physical Design
STEP 8
STEP 9
Methodology Overview -
Conceptual Database Design
z Step 1 Build local conceptual data
model for each user view
z Step 1.1 Identify entity types
z Step 1.2 Identify relationship types
z Step 1.3 Identify and associate attributes with entity or
relationship types
z Step 1.4 Determine attribute domains
z Step 1.5 Determine candidate and primary key
attributes
z Step 1.6 Consider use of enhanced modeling concepts
(optional step)
z Step 1.7 Check model for redundancy
z Step 1.8 Validate local conceptual model against user
transactions
z Step 1.9 Review local conceptual data model with user
Methodology Overview - Logical
Database Design for Relational
Model (cont)
Course
Entity Type Number
Name
Topic
Number: 1123
Entity Name: Computer Programming 2
Topic: Computer Programming
Cont…
Attributes
z NULL
Cont…
Attributes
z Simple Attribute
z Attribute
z Attribute composed of a single component with an independent
z Property of an existence.
entity or a z Composite Attribute
relationship z Attribute composed of multiple components, each with an
type. independent existence.
z Single-valued Attribute
z Attribute z Attribute that holds a single value for each occurrence of an entity
type.
Domain
z Set of z Multi-valued Attribute
z Attribute that holds multiple values for each occurrence of an
allowable
entity type.
values for one z Derived Attribute
or more z Attribute that represents a value that is derivable from value of a
attributes. related attribute, or set of attributes, not necessarily in the same
entity type.
z NULL attributes have no value
z not 0 (zero)
z not a blank string
z Attributes can be “nullable” where a null value is allowed, or “not
nullable” where they must have a value.
Attributes
Professor Professor
Simple Composite
Start_Date Name
First
Last
Single Professor
EmployeeID#{PK}
Multi-Valued Professor
Tel_No [1…3]
Derived Professor
/Years_Teaching
Keys
z Candidate Key
z Minimal set of attributes that uniquely
identifies each occurrence of an entity type.
z Primary Key
z Candidate key selected to uniquely identify
each occurrence of an entity type.
z Composite Key
z A candidate key that consists of two or
more attributes.
ER Diagram of Staff and Branch
Entities and their Attributes
Relationships
z Defines a set of associations between various
entities
z Can have attributes to define them
z Are limited by (constraint in relationship):
z Participation
z Determines whether all or only some entity
occurrences participate in a relationship.
z Cardinality Ratio
z Describes maximum number of possible
relationship occurrences for an entity
participating in a given relationship type.
Cardinality
z The number of relationships that an entity may
participate in.
Multiplicity as Cardinality
and Participation Constraints
Multiplicity of Staff Manages Branch
(1:1) Relationship Type
Multiplicity of Staff Oversees
PropertyForRent (1:*) Relationship Type
Multiplicity of Newspaper Advertises
PropertyForRent (*:*) Relationship
Extended
Entity-Relationship
Diagram (EER Diagram)
Extended E-R Model
z Limitations of basic concepts of the ER model
and requirements to represent more complex
applications using additional data modeling
concepts.
z Specialization
z Process of maximizing differences
between members of an entity by
identifying their distinguishing
characteristics.
z Generalization
z Process of minimizing differences
between entities by identifying their
common characteristics.
Specialization Constraints
z Disjointness constraint –
z Describes relationship between members of the
subclasses and indicates whether member of a
superclass can be a member of one, or more than one,
subclass.
z May be disjoint or nondisjoint.
z Participation constraint –
z Determines whether every member in superclass must
participate as a member of a subclass.
z May be mandatory or optional.
Constraints on Specialization /
Generalization
z There are four categories of constraints of
specialization and generalization:
z mandatory and disjoint; {mandatory,
and }
z optional and disjoint; {optional, and }
z mandatory and nondisjoint;
{mandatory, or }
z optional and nondisjoint; {optional, or
}
Specialization/Generalization of Staff
Entity into Subclasses Representing
Job Roles
Total or
Partial ?
disjoint
or
overlap ?
Specialization/Generalization of Staff
Entity into Job Roles and Contracts of
Employment
EER Diagram with Shared Subclass
and Subclass with its own Subclass
DreamHome Worked Example - Staff
Superclass with Supervisor and
Manager Subclasses
DreamHome Worked Example -
Owner Superclass with PrivateOwner
and BusinessOwner Subclasses
DreamHome Worked Example - Person
Superclass with Staff, PrivateOwner,
and Client Subclasses
External Level,
External Schema,
Conceptual Design,
Conceptual Data Model
CASE 1