1
Database Design
Victor Matos
2
Phases of Database Design
Conceptual design begins with the
collection of requirements and results
needed from the database (ER Diag.)
Logical schema is a description of the
structure of the database (Relational,
Network, etc.)
Physical schema is a description of
the implementation (programs, tables,
dictionaries, catalogs
Data
Requirements
Conceptual
Design
Logical
Design
Physical
Design
Conceptual Schema
Specification of requirements
and results
Logical Schema
Physical Schema
3
Models
A data model is a collection of objects that
can be used to represent a set of data and
operations to manipulate the data
Conceptual models are tools for representing
reality at a very high-level of abstraction
Logical models are data descriptions that can
be processed by computers
4
Conceptual model:
Entity-Relationship Diagrams
Entities represent classes of real-world
objects. Person, Students, Projects, Courses
are entities of a University database
Relationships represent interactions
between two or more entities
Person
Is_Born_In
City
Lives_In
N 1
N 1
5
Example:
Every employee works in at least one
project
Every project has employees working on it.
EMPLOYEE
SSN
Name
Salary
PROJECT
Name
Code
WORKS_ONNN
6
Higher-Order Relationships
A relationship may involve more than two
entities
Course Meets Classroom
Day
7
Recursive relationships
Relationships could be mapped from one
entity to itself
Manager_Of
Employee Manages
Subordinate_To
1
N
8
Attributes
Attributes represent elementary properties of the
entities or relationships. The stored data will be
kept as values of the attributes
PERSON
Ssn
Name
Profession
Is_Born_In
CITY
Name
Country
Elevation
Population
Lives_InN 1
N 1
Birth_Date
Moving_Date
9
Generalizations
MAN
Draft_Status
FEMALE
Maiden_Name
PERSON
Ssn
Name
Address
• An entity could be seen from many different viewpoints
• Each viewpoint defines a set of roles in a generalization
• Example below uses SEX to classify the object “Person”
10
Generalizations
A classification could be disjoint or
overlapping
An entity could have more than one
classification
MAN
Draft_Status
FEMALE
Maiden_Name
PERSON
Ssn
Name
Address
SEX
Full_Time
Annual_Salary
Department
Part_Time
Hour_Rate
Weekly_Hours
JOB
11
Example: Department Store 1/2
A department store operates in several
cities
In a city there is one headquarter
coordinating the local operations
A city may have several stores
Stores hold any amount of items
Customers place their orders for any
number of items to a given store
GOAL: Optimize shopping in each city
12
Example: Department Store 2/2
CITIES
City Name
State
HeadQtr Address
STORES
Store ID
Address
Manager ID
LOCATED
IN
ITEMS
Item ID
Description
Size
Color
ORDERS
Order Number
Order Date
ITEMS ORDERED
Qty Ordered
HOLD
Qty Held
IN-CITIES
Qty_in_cities
CUSTOMER
Customer Name
Address
Phone Number
PLACE
N
N
1
N
N N
N N N
1
13
Example: University Database
Professors work for only one department
Departments have many professors
Each course is taught by only one professor
Students make a plan or program of study
A course could meet in several rooms/times
Graduate students must have an advisor
Cities are categorized as resident/BirthPlace
Visiting prof. need an End/Start date
14
University Database
University database
BIRTH_PLACE
CITY
Name
State
PERSON
LastName
Age
PROFESSOR
TenureStatus
Title
STUDENT
DEPARTMENT
Name
Phone
Belongs_To
ENROLLED
Semester
Grade
PLANNED
SemesterGRADUATE_STUDENT ADVISED_BY
VISITING_
PROFESSOR
Start_Appointment
End_Appointment
COURSE
Title
Description
Credits
TAUGHT_BY
Semester
MEETS
ROOM
RoomNumber
Building
TIME
Day
Hour
RESIDENT
1 N
N
N
N
N
N
N
1
N N
N 1
1
N
N
1
15
Soccer Database
A team has players, one coach, fans
Teams play according to a schedule
Teams need to practice in a Stadium
Attendance and scores must be recorded
16
Soccer Database
FAN
Name
Address
Favorite Bar
PLAYER
Uniform_Size
Shoe_Size
PERSON
Ssn
Name
Address
COACH
Personal Record
Years Experience
SUPPORTSPLAYS
_FORMANAGES
TEAM
Name
Location
Phone
PLAY_
AGAINST
GAME
Number
Attendance
Final Score
Date
TAKES
PLACE
AT
PRACTICES
STADIUM
Name
Address
Capacity
ATTENDS
N
N1
N 1
1
N N N 1
N
N
N N
17
Research Project Database
Some employees are researchers
Every project has a leader investigator
Every project must be funded by an agency
A project may include several topics
A topic could appear in several projects
Researchers must produce report(s)
Each employee must have a supervisor
18
Research Projects Database
RESEARCH TOPIC
Code
Name
RESEARCH REPORT
Number
Title
EMPLOYEE
SSN
Name
Title
ADDRESSES PRODUCES
PRINCIPAL
INVESTIGATORRESEARCH
PROJECT
Name
Code
FUNDED_BY
Amount
Date
Grant#
AGENCY
Name
Address
Contact Person
WORKS
_ON
N
N
N
N
N
N
SUPERVISE
S
N 11
1 N
N
ON
N
NN
19
Contract-Supplies System 1/3
A company negotiates contracts with
suppliers to provide certain amount of items
at a fixed price
Orders are placed against any of the already
negotiated contracts
A contract could provide items to any
number of orders
20
Contract-Supplies System 2/3
An order may include any number of items
negotiated in the contract
Orders should not exceed the maximum
amount of items quoted in the contract
All items in an order must be provided as
part of a single contract and a single project
21
Contract-Supplies System 3/3
SUPPLIERS
Supplier Number
Name
Address
NEGOTIATE
Date of Contract
CONTRACTS
Contract Number
Text
ITEMS
Item Number
Description
TO SUPPLY
Contract Price
Contract Amount
MADE OF
Order QTY
ORDERS
Order Number
Date Required
Date Completed
SUPPLIED AS
NEEDED BY
PROJECTS
Project Number
Project Data
1
N
1 N
N
N
N N
1
N
22
Manufacturing: Requisitions 1/3
Projects are broken into tasks
Tasks are assigned to departments
A task is created for one project and
assigned to one department
Requisitions are made for projects
Each requisition could ask for any number
of items
23
Manufacturing: Requisitions 2/3
Each requisition is for one project and is
made to one supplier
Items could be: equipment or materials and
are coded in a similar way
Suppliers send periodic price notices to
advise the company of any changes in their
prices
24
Manufacturing: Requisitions 3/3
SUPPLIERS
Supplier
Number
Supplier Data
PROJECTS
Project Number
Project Data
MADE OF
TASKS
Task Number
Task Data
REQUESTS
REQUISITION
Item Number
Qty Requested
CONTAINS
ITEMS
Item Number
Item Data
EQUIPMENT ITEM
Code
Description
MATERIAL ITEM
Code
Description
Weight
Container
CHANGES
PRICE ADVICE
Price
Effective Date
SENDS
FROM
FOR
REQUISITION
Item Number
Qty Requested
1 N
N
1
N
1
N 1
N
N
1 N
N
1
25
Job-Shop Accounting System 1/4
The system is used by a company that
manufactures special-purpose assemblies
for customers
To manufacture assemblies the company
creates a sequence of processes (steps)
Each process is supervised by a department
Assume there are three type of processes:
PAINT, FIT, CUT
26
Job-Shop Accounting System 2/4
During manufacturing an assembly could
pass through any sequence of processes, in
any order; it may pass through the same
process more than once
A unique Job# is given to any new
assembly.
Costs and started-terminated dates must be
recorded
27
Job-Shop Accounting System 3/4
An accounting system is used to keep track
expenditure for each: DEPT,
PROCESS,
ASSEMBLY
As a job proceeds, cost transactions can be
recorded against it.
28
Job-Shop Accounting System 4/4
CUSTOMER
S
Customer ID
Address
ORDERS
ASSEMBLIE
S
Assembly ID
Date Ordered
Details
CUT JOBS
Cut Job ID
Machine type
used
Material used
Laor time
JOBS
Job Number
Starting Date
Ending Date
Total Cost
FIT JOBS
Fit Job ID
Labor time
PAINT JOBS
Paint Job ID
Color
Volume
Labor time
A1
ACTIVITY
USES
MADE AS
TRANSACTIONS
PROCESS
ACCOUNTS
Account 3
Details
DEPT
ACCOUNTS
Account 2
Details
ASSEMBLY
ACCOUNTS
Account 1
Details
ACCOUNTS
Account ID
Date
Established
PROCESSES
Process ID
Process Data
DEPARTMENT
S
Dept Number
Dept Data
A2
T1
T3
T2
USED IN A3
CUT PROC
Cut Proc ID
Cuttong Type
Machine Type
FIT PROC
Fit Proc ID
Fit Type
PAINT PROC
Paint Proc ID
Paint Method