er modelling for software engineering course, Lecture notes of Complex analysis

er diagram + modelling for software engineering

Typology: Lecture notes

2018/2019

Uploaded on 11/26/2019

amjad22
amjad22 🇸🇦

3 documents

1 / 36

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
COIS 342 - Databases
Chapter 3
Data Modeling Using the Entity-
Relationship (ER) Model
Faculty of Computing and Information Technology in Rabigh
Adapted from Elmasri & Navathe
by Dr Samir BOUCETTA
First Semester 2011/2012
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24

Partial preview of the text

Download er modelling for software engineering course and more Lecture notes Complex analysis in PDF only on Docsity!

COIS 342 - Databases

Chapter 3

Data Modeling Using the Entity-

Relationship (ER) Model

F aculty of C omputing and I nformation T echnology in R abigh

Adapted from Elmasri & Navathe

by Dr Samir BOUCETTA

First Semester 2011/

Example COMPANY

Database

 Requirements of the Company (oversimplified for

illustrative purposes)

– The company is organized into DEPARTMENTs.

Each department has a name, number and an

employee who manages the department. We keep

track of the start date of the department manager.

– Each department controls a number of PROJECTs.

Each project has a name, number and is located at a

single location.

ER Model Concepts  Entities and Attributes

  • Entities are specific objects or things in the mini-world that are represented in the database. For example the EMPLOYEE “Mohammad Ali”, the “Research and Development” DEPARTMENT, the “Bridge construction” PROJECT
  • Attributes are properties used to describe an entity. For example an EMPLOYEE entity may have a Name, SSN, Address, Sex, …
  • A specific entity will have a value for each of its attributes. For example a specific employee entity may have Name=„Mohammad Ali', SSN=' 123456789 ', Address =„71, King Fahd Street, Jeddah', Sex='M', BirthDate='09-JAN-1955„
  • Each attribute has a value set (or data type) associated with it – e.g. integer, string, subrange, enumerated type, …

Types of Attributes (1)  Simple

  • Each entity has a single atomic value for the attribute. For example, SSN or Sex.  Composite
  • The attribute may be composed of several components. For example, Address (Appart#, House#, Street, City, State, ZipCode, Country) or Name (FirstName, MiddleName, LastName). Composition may form a hierarchy where some components are themselves composite.  Multi-valued
  • An entity may have multiple values for that attribute. For example, Color of a CAR or PreviousDegrees of a STUDENT. Denoted as {Color} or {PreviousDegrees}.

Entity Types and Key Attributes  Entities with the same basic attributes are grouped or typed into an entity type. For example, the EMPLOYEE entity type or the PROJECT entity type.  An attribute of an entity type for which each entity must have a unique value is called a key attribute of the entity type. For example, SSN of EMPLOYEE.  A key attribute may be composite. For example, VehicleTagNumber is a key of the CAR entity type with components (Number, State).  An entity type may have more than one key. For example, the CAR entity type may have two keys:

  • VehicleIdentificationNumber (popularly called VIN) and
  • VehicleTagNumber (Number, State), also known as license_plate number.

ENTITY SET corresponding to the ENTITY TYPE CAR car 1 ((ABC 123, TEXAS), TK629, Ford Mustang, convertible, 1999, (red, black)) car 2 ((ABC 123, NEW YORK), WP9872, Nissan 300ZX, 2-door, 2002, (blue)) car 3 ((VSY 720, TEXAS), TD729, Buick LeSabre, 4-door, 2003, (white, blue)) . . . CAR Registration(RegistrationNumber, State), VehicleID, Make, Model, Year, (Color)

ER DIAGRAM – Entity Types are: EMPLOYEE, DEPARTMENT, PROJECT, DEPENDENT

Relationships and Relationship Types (1)  A relationship relates two or more distinct entities with a specific meaning. For example, EMPLOYEE John Smith works on the ProductX PROJECT or EMPLOYEE Franklin Wong manages the Research DEPARTMENT.  Relationships of the same type are grouped or typed into a relationship type. For example, the WORKS_ON relationship type in which EMPLOYEEs and PROJECTs participate, or the MANAGES relationship type in which EMPLOYEEs and DEPARTMENTs participate.  The degree of a relationship type is the number of participating entity types. Both MANAGES and WORKS_ON are binary relationships.

Example relationship instances of the WORKS_ON relationship between EMPLOYEE and PROJECT e 1  e 2  e 3  e 4  e 5  e 6  e 7  r 1 r 2 r 3 r 4 r 5 r 6 r 7  p 1  p 2  p 3 r 8 r 9

Relationships and Relationship Types (2)  More than one relationship type can exist with the same participating entity types. For example, MANAGES and WORKS_FOR are distinct relationships between EMPLOYEE and DEPARTMENT, but with different meanings and different relationship instances.

Weak Entity Types

 An entity that does not have a key attribute

 A weak entity must participate in an identifying relationship

type with an owner or identifying entity type

 Entities are identified by the combination of:

– A partial key of the weak entity type

– The particular entity they are related to in the

identifying entity type

Example:

Suppose that a DEPENDENT entity is identified by the

dependent‟s first name and birhtdate, and the specific

EMPLOYEE that the dependent is related to. DEPENDENT

is a weak entity type with EMPLOYEE as its identifying

entity type via the identifying relationship type

DEPENDENT_OF

Weak Entity Type is: DEPENDENT Identifying Relationship is: DEPENDENTS_OF

Many-to-one (N:1) RELATIONSHIP e 1  e 2  e 3  e 4  e 5  e 6  e 7  EMPLOYEE r 1 r 2 r 3 r 4 r 5 r 6 r 7 WORKS_FOR  d 1  d 2  d 3 DEPARTMENT

Many-to-many (M:N) RELATIONSHIP e 1  e 2  e 3  e 4  e 5  e 6  e 7  r 1 r 2 r 3 r 4 r 5 r 6 r 7  p 1  p 2  p 3 r 8 r 9