1 ER Modeling BUAD/American University Entity Relationship (ER) Modeling.
Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world...
Transcript of Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world...
![Page 1: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/1.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Entity-Relationship (ER) Diagrams
Lecture 7
February 11, 2018
Entity-Relationship (ER) Diagrams
1
![Page 2: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/2.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Outline1. Context– Design & Implementation Process
2. Goals of Conceptual Design3. Entity-Relationship (ER) Model4. One ER Diagrammatic Notation5. Requirements Elicitation6. Approaches to Conceptual Design
February 11, 2018
Entity-Relationship (ER) Diagrams
2
![Page 3: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/3.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Database Design and Implementation Process
February 11, 2018
Entity-Relationship (ER) Diagrams
3
![Page 4: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/4.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Goal of Conceptual DesignDescription of data requirements that is…
Comprehensive• Entity types, relationships, and constraints• Sanity check of data & functional requirements• Reference for [unit/integration] testing/analysis
Concise/High-level• Easy to understand technically• Easy to communicate with non-technical users• Facilitates focus on data (vs. storage/implementation details)
Algorithmically Transformable• Improves application development efficiency, reduces errors
February 11, 2018
Entity-Relationship (ER) Diagrams
4
![Page 5: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/5.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Entity-Relationship (ER) ModelEntity• Thing in the real world
Attribute• Property of an entity• Most of what we store in the database
Relationship• Association between sets of entities• Possibly with attribute(s)
February 11, 2018
Entity-Relationship (ER) Diagrams
5
![Page 6: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/6.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
ER Diagrams• Graphical depiction
of an ER model• Many notations, this
class…
Specialization/Generalization
February 11, 2018
Entity-Relationship (ER) Diagrams
6
All cars have a year, age, make, model, registration (unique), vehicle number (vin; unique), some number of colors…
![Page 7: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/7.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Entity SetsSet of entities that have the same attributes
All cars have a year, make, and model.
February 11, 2018
Entity-Relationship (ER) Diagrams
7
CAR
Year ModelMake
![Page 8: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/8.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Composite AttributesCan be subdivided into smaller subparts
All cars have a year, make, model, and registration.
February 11, 2018
Entity-Relationship (ER) Diagrams
8
CAR
Year ModelMake
Registration
NumberState
![Page 9: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/9.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Multivalued AttributesCan take a [possibly specified] number of values.
All cars have a year, make, model, registration, and some number of colors.
February 11, 2018
Entity-Relationship (ER) Diagrams
9
CAR
Year ModelMake
Registration
NumberState
Color
![Page 10: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/10.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Key AttributesThe value uniquely identifies each entity
All cars have a year, make, model, registration (unique), vehicle number (vin; unique), some number of colors.
February 11, 2018
Entity-Relationship (ER) Diagrams
10
CAR
Year ModelMake
Registration
NumberState
VINColor CAR
Year ModelMake
Registration
NumberState
VINColor
![Page 11: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/11.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Potential Pitfall• In relational schema, underlining multiple
attributes indicates that for all rows, the combination is unique
• In ERDs, underlining multiple attributes indicates that each individually can uniquely identify an entity
February 11, 2018
Entity-Relationship (ER) Diagrams
11
![Page 12: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/12.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Derived AttributesThe value can be computed
All cars have a year, age, make, model, registration (unique), vehicle number (vin; unique), some number of colors.
February 11, 2018
Entity-Relationship (ER) Diagrams
12
Color CAR
Year ModelMake
Registration
NumberState
VIN
Age
![Page 13: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/13.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
ExerciseDraw an ERD for the following description:
Each department has a unique name, a unique number, and a particular employee who manages the department. We keep track of the start date when that employee began managing the department. A department may have several locations.
February 11, 2018
Entity-Relationship (ER) Diagrams
13
![Page 14: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/14.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Answer
February 11, 2018
Entity-Relationship (ER) Diagrams
14
Location DEPARTMENT Manager
NumberName
Manager_Start_Date
![Page 15: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/15.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
ExerciseDraw an ERD for the following description:
A department controls a number of projects, each of which has a unique name, a unique number, and a single location.
February 11, 2018
Entity-Relationship (ER) Diagrams
15
![Page 16: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/16.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Answer
February 11, 2018
Entity-Relationship (ER) Diagrams
16
Location PROJECT
NumberName
Controlling_Department
![Page 17: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/17.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
ExerciseDraw an ERD for the following description:
We store each employee’s name (first, last, MI), Social Security number (SSN), street address, salary, sex (gender), and birth date. An employee is assigned to one department, but may work on several projects, which are not necessarily controlled by the same department. We keep track of the current number of hours per week that an employee works on each project. We also keep track of the direct supervisor of each employee (who is another employee).
February 11, 2018
Entity-Relationship (ER) Diagrams
17
![Page 18: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/18.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Answer
February 11, 2018
Entity-Relationship (ER) Diagrams
18
Department
EMPLOYEE
SexSSN
Name
Salary
Supervisor
Birthdate
Address
Works_OnFName
LNameMI Hours
Project
![Page 19: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/19.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
ExerciseDraw an ERD for the following description:
We want to keep track of the dependents of each employee for insurance purposes. We keep each dependent’s first name, sex, birth date, and relationship to the employee.
February 11, 2018
Entity-Relationship (ER) Diagrams
19
![Page 20: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/20.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Answer
February 11, 2018
Entity-Relationship (ER) Diagrams
20
Employee
DEPENDENT
Sex
DName
DBirthdate
Relationship
![Page 21: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/21.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
RelationshipsAssociates one or more sets of entities– One = recursive (role is important)
February 11, 2018
Entity-Relationship (ER) Diagrams
21
DEPTSTUDENT
FACULTY
CHAIR_F
All departments have a faculty member who serves as the chair. A faculty member can only chair one department.
![Page 22: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/22.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
RelationshipsAssociates one or more sets of entities– One = recursive (role is important)
February 11, 2018
Entity-Relationship (ER) Diagrams
22
DEPTSTUDENT
FACULTY
CHAIR_F
All students must have a department in which they major.
MAJOR_D
![Page 23: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/23.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
RelationshipsAssociates one or more sets of entities– One = recursive (role is important)
February 11, 2018
Entity-Relationship (ER) Diagrams
23
DEPTSTUDENT
FACULTY
CHAIR_F
Students may have any number of departments in which they minor.
MAJOR_D
MINOR_D
![Page 24: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/24.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
RelationshipsAssociates one or more sets of entities– One = recursive (role is important)
February 11, 2018
Entity-Relationship (ER) Diagrams
24
DEPTSTUDENT
FACULTY
CHAIR_F
Students can tutor other student(s).
MAJOR_D
MINOR_D
TUTORS
TuteeTutor
![Page 25: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/25.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Cardinality RatiosConstrains the number of entities that can participate in each role of the relationship
February 11, 2018
Entity-Relationship (ER) Diagrams
25
DEPTSTUDENT
MINOR_D
FACULTY
TUTORS CHAIR_F
MAJOR_D
Tutor Tutee
All departments have a faculty member who serves as the chair. A faculty member can only chair one department.
1
1
![Page 26: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/26.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Cardinality RatiosConstrains the number of entities that can participate in each role of the relationship
February 11, 2018
Entity-Relationship (ER) Diagrams
26
DEPTSTUDENT
MINOR_D
FACULTY
TUTORS CHAIR_F
MAJOR_D
Tutor Tutee 1
1All students must have a department in which they major.
1N
![Page 27: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/27.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Cardinality RatiosConstrains the number of entities that can participate in each role of the relationship
February 11, 2018
Entity-Relationship (ER) Diagrams
27
DEPTSTUDENT
MINOR_D
FACULTY
TUTORS CHAIR_F
MAJOR_D
Tutor Tutee 1
1Students may have any number of departments in which they minor.
MN
N 1
![Page 28: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/28.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Cardinality RatiosConstrains the number of entities that can participate in each role of the relationship
February 11, 2018
Entity-Relationship (ER) Diagrams
28
DEPTSTUDENT
MINOR_D
FACULTY
TUTORS CHAIR_F
MAJOR_D
Tutor Tutee 1
1
MN
Students can tutor other student(s).
MN
N 1
![Page 29: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/29.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Structural ConstraintsIf an entity does not exist unless it appears with an entity in a relationship, the participation is total (existence dependency). Else, partial.
February 11, 2018
Entity-Relationship (ER) Diagrams
29
DEPTSTUDENT
MINOR_D
FACULTY
TUTORS CHAIR_F
MAJOR_D
Tutor Tutee 1
1
MN
MN
All departments have a faculty member who serves as the chair. A faculty member can only chair one department.
N 1
![Page 30: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/30.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Structural ConstraintsIf an entity does not exist unless it appears with an entity in a relationship, the participation is total (existence dependency). Else, partial.
February 11, 2018
Entity-Relationship (ER) Diagrams
30
DEPTSTUDENT
MINOR_D
FACULTY
TUTORS CHAIR_F
MAJOR_D
Tutor Tutee
1
MN
MN
N
All students must have a department in which they major.
1
1
![Page 31: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/31.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Attributes of Relationships1->1, can go to either entity1->N, can go to (1) entity
February 11, 2018
Entity-Relationship (ER) Diagrams
31
DEPTSTUDENT
MINOR_D
FACULTY
TUTORS CHAIR_F
MAJOR_D
Tutor Tutee
1
MN
MN
Office
Each department chair has an office.
1N
1
![Page 32: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/32.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Attributes of Relationships1->1, can go to either entity1->N, can go to (1) entity
February 11, 2018
Entity-Relationship (ER) Diagrams
32
DEPTSTUDENT
MINOR_D
FACULTY
TUTORS CHAIR_F
MAJOR_D
Tutor Tutee
1
MN
MN
Office
It is important to know whether or not a student has completed his/her major.
Done
1N
1
![Page 33: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/33.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Attributes of Relationships1->1, can go to either entity1->N, can go to (1) entity
February 11, 2018
Entity-Relationship (ER) Diagrams
33
DEPTSTUDENT
MINOR_D
FACULTY
TUTORS CHAIR_F
MAJOR_D
Tutor Tutee
1
MN
MN
Office
It is important to know whether or not a student has completed each of his/her minor(s).
Done
Done
1N
1
![Page 34: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/34.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Attributes of Relationships1->1, can go to either entity1->N, can go to (1) entity
February 11, 2018
Entity-Relationship (ER) Diagrams
34
DEPTSTUDENT
MINOR_D
FACULTY
TUTORS CHAIR_F
MAJOR_D
Tutor Tutee
1
MN
MN
Office
It is important to know the subject(s) in which a tutee is being tutored by each tutor.
Done
Done
Subject
1N
1
![Page 35: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/35.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Weak EntitiesEntity types that do not have key attributes of their own are weak; instead identified by relation to specific entity of another type (the identifying type)
February 11, 2018
Entity-Relationship (ER) Diagrams
35
SECTIONCOURSE COURSESEC
Number
SECTION
BookNAME
DEPT NUM
Prof
1 N
![Page 36: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/36.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Revise!We store each employee’s name (first, last, MI ), Social Security number (SSN), street address, salary, sex (gender), and birth date. An employee is assigned to one department, but may work on several projects, which are not necessarily controlled by the same department. We keep track of the current number of hours per week that an employee works on each project. We also keep track of the direct supervisor of each employee (who is another employee).
February 11, 2018
Entity-Relationship (ER) Diagrams
36
Department)
EMPLOYEE)
Sex)SSN)
Name)
Salary)
Supervisor)
Birthdate)
Address)
Works_On)FName)
LName)MI) Hours)
Project)
![Page 37: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/37.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Answer
February 11, 2018
Entity-Relationship (ER) Diagrams
37
Department
EMPLOYEE
SexSSN
Name
Salary
Birthdate
Address
Works_OnFName
LNameMI Hours
Project
Supe
rvision
Supervisor
Supervisee
1
N
![Page 38: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/38.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Revise!We want to keep track of the dependents of each employee for insurance purposes. We keep each dependent’s first name, sex, birth date, and relationship to the employee.
February 11, 2018
Entity-Relationship (ER) Diagrams
38
Employee(
DEPENDENT(
Sex(
DName(
DBirthdate(
Rela7onship(
Department)
EMPLOYEE)
Sex)SSN)
Name)
Salary)
Birthdate)
Address)
Works_On)FName)
LName)MI) Hours)
Project)
Supe
rvision
) Supervisor)
Supervisee)
1)
N)
![Page 39: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/39.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Answer
February 11, 2018
Entity-Relationship (ER) Diagrams
39
Department
EMPLOYEE
SexSSN
Name
Salary
Birthdate
Address
Works_OnFName
LNameMI Hours
Project
Supe
rvision
Supervisor
Supervisee
1
N
DEPENDENT
Sex
DName
DBirthdate
Relationship
DEPENDENT_OF
N
1
![Page 40: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/40.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Revise!A department controlsa number of projects, each of which has a unique name, a unique number, and a single location.
February 11, 2018
Entity-Relationship (ER) Diagrams
40
Loca%on' PROJECT'
Number'Name'
Controlling_'Department'
Loca%on' DEPARTMENT' Manager'
Number'Name'
Manager_'Start_Date'
![Page 41: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/41.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Answer
February 11, 2018
Entity-Relationship (ER) Diagrams
41
Location PROJECT
NumberName
Location
DEPARTMENT Manager
NumberName
Manager_Start_Date
CONTROLS1
N
![Page 42: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/42.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Revise!Each department has a … particular employee who manages the department.
An employee is assigned to one department, but may work on several projects, which are not necessarily controlled by the same department. We keep track of the current number of hours per week that an employee works on each project.
February 11, 2018
Entity-Relationship (ER) Diagrams
42
Loca%on' PROJECT'
Number'Name'
Loca%on'
DEPARTMENT' Manager'
Number'Name'
Manager_'Start_Date'
CONTROLS'1'
N'
Department)
EMPLOYEE)
Sex)SSN)
Name)
Salary)
Birthdate)
Address)
Works_On)FName)
LName)MI) Hours)
Project)
Supe
rvision
) Supervisor)
Supervisee)
1)
N)
DEPENDENT)
Sex)
DName)
DBirthdate)
RelaIonship)
DEPENDENT_OF)
N)
1)
![Page 43: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/43.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Answer
February 11, 2018
Entity-Relationship (ER) Diagrams
43
Location PROJECT
Number
Name
Location
DEPARTMENT
NumberName
CONTROLS1
N
EMPLOYEE SSNWORKS_ON
N
M
Hours SupervisionN1
Supervisor Supervisee
Manages
1
1
Start_Date
Works_For
N
1
![Page 44: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/44.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
All Together Now!
February 11, 2018
Entity-Relationship (ER) Diagrams
44
![Page 45: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/45.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Specialization/GeneralizationOnly a subset of entities within a type have certain attributes or participate in certain relationships
February 11, 2018
Entity-Relationship (ER) Diagrams
45
STUDENT
ID
GRAD_STUDENT Degrees
U
![Page 46: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/46.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Multiple Subtypes: Disjointedness(o)verlap: may be more than one(d)isjoint: entities may only be one subtype
February 11, 2018
Entity-Relationship (ER) Diagrams
46
PERSON
SSN
EMPLOYEE ALUMNUS STUDENT
UU
U o
A person can be an employee, an
alumnus, and/or a student
![Page 47: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/47.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Multiple Subtypes: Disjointedness(o)verlap: may be more than one(d)isjoint: entities may only be one subtype
February 11, 2018
Entity-Relationship (ER) Diagrams
47
PERSON
SSN
EMPLOYEE ALUMNUS STUDENT
UU
U
A person can be either an employee,
an alumnus, or a student
d
![Page 48: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/48.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Multiple Subtypes: CompletenessSimilar to relationships; can be total (mustbelong to subtypes) or partial (can belong)
February 11, 2018
Entity-Relationship (ER) Diagrams
48
PERSON
SSN
EMPLOYEE ALUMNUS STUDENT
UU
U
A person must be exactly one: an employee, an
alumnus, or a studentd
![Page 49: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/49.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Exercise• The database keeps track of three types of persons: employees, alumni, and students. A
person can belong to one, two, or all three of these types. Each person has a name, SSN, sex, address, and birth date.
• Every employee has a salary, and there are three types of employees: faculty, staff, and student assistants. Each employee belongs to exactly one of these types. For each alumnus, a record of the degree or degrees that he or she earned at the university is kept, including the name of the degree, the year granted, and the major department. Each student has a major department.
• Each faculty has a rank, whereas each staff member has a staff position. Student assistants are classified further as either research assistants or teaching assistants, and the percent of time that they work is recorded in the database. Research assistants have their research project stored, whereas teaching assistants have the current course they work on.
• Students are further classified as either graduate or undergraduate, with the specific attributes degree program (M.S., Ph.D., M.B.A., and so on) for graduate students and class (freshman, sophomore, and so on) for under- graduates.
February 11, 2018
Entity-Relationship (ER) Diagrams
49
![Page 50: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/50.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Answer
February 11, 2018
Entity-Relationship (ER) Diagrams
50
![Page 51: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/51.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Alternative Notation (1)Figure A. 1
February 11, 2018
Entity-Relationship (ER) Diagrams
51
![Page 52: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/52.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Alternative Notation (2)Figure A. 1
February 11, 2018
Entity-Relationship (ER) Diagrams
52
![Page 53: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/53.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Requirements ElicitationThe conceptual model should inform requirements elicitation questions:
• What are the main kinds of objects to be stored in the database (entity types)?
• For each object, what information should be stored (attributes, relationships)? What information distinguishes one object of a type from another (keys, weak entities)? Are there different kinds/categories of objects (specialization/generalization)?
• For each piece of information, what characterizes a valid value (composite/multi-valued, structural, etc.)?
• For related objects x and y, can x exist without y (participation)? How many x’s can a y have, and vice-versa (cardinality)?
February 11, 2018
Entity-Relationship (ER) Diagrams
53
![Page 54: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/54.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Approaches to Conceptual DesignCentralized– Single authority responsible for merging
requirements into schema– Reasonable for smaller applications
View Integration– Each stakeholder implements local view– Individual views integrated into global
schema– Individual views can be reconstructed as
external schemas after integrationFebruary 11, 2018
Entity-Relationship (ER) Diagrams
54
![Page 55: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/55.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
View Integration (1)1. Identify correspondences and conflicts– Conflicts: names, types, domain, constraints
2. Modify views to conform3. Merge4. Restructure
February 11, 2018
Entity-Relationship (ER) Diagrams
55
![Page 56: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/56.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
View Integration (2)
February 11, 2018
Entity-Relationship (ER) Diagrams
56
![Page 57: Entity-Relationship (ER) DiagramsEntity-Relationship (ER) Model Entity • Thing in the real world Attribute • Property of an entity • Most of what we store in the database Relationship](https://reader030.fdocuments.in/reader030/viewer/2022040200/5e30196dc3b95f05f20187e8/html5/thumbnails/57.jpg)
CS3200 – Database Design� �� Spring 2018� �� Derbinsky
Summary• The goal of conceptual design is to develop a set
of data requirements that are comprehensive, clear & easy to understand, and algorithmically transformable
• ER Diagrams (ERDs) are one such design model that visually represent the entities, attributes, and relationships of a system
• Requirements elicitation and conceptual design is an iterative process that is a necessary prerequisite to implementing a database
February 11, 2018
Entity-Relationship (ER) Diagrams
57