Top Banner
Lecturer: Dr Hui Ma Engineering and Computer Science Entity–Relationship Data Model SWEN 304 Trimester 1, 2020
42

Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Jun 28, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Lecturer: Dr Hui Ma

Engineering and Computer Science

Entity–Relationship Data Model

SWEN 304

Trimester 1, 2020

Page 2: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Database Design - Motivation

• Why do IT projects fail to meet customer expectations?

• There can be many reasons:

• the client is not sure what they want

• the requirements were not properly documented

• the lack of appropriate development methodology

• the desired functionality was difficult to develop

• the budget and resources were not sufficient

• the lack of team and work management

• . . .

SWEN304 Lect6and7: EERM 2

Page 3: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Database Design - Motivation

SWEN304 Lect6and7: EERM 3

Page 4: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Database Design – Four Phases

• Database Design is the process of constructing a detailed schema of a databasethat can support the organization’s business needs and objectives for the databasesystem under development

• The database design process has four phases:

1 Requirements Collection and Analysis

2 Conceptual Design

3 Logical Design

4 Physical Design

SWEN304 Lect6and7: EERM 4

Page 5: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Phase 1: Requirements Collection and Analysis

• Requirements collection and analysis is the process of collecting and analyzingdata requirements of the organization so as to provide database solutions thatfulfill business needs of the organization

• Compilation of data requirements includes:

• a description of the data to be used or generated

• details of how data is to be used or generated

• any additional requirements for database system under development

• . . .

SWEN304 Lect6and7: EERM 5

Page 6: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Phase 2: Conceptual Design

• Conceptual design is the process of constructing a database schema used in anorganization, independent of any physical or implementation considerations

• modelling at a high-level of abstraction

• simple enough

• often with graphical representation

• used to communicate the logical structure of a database with domain experts andpotential users

• The data model is built using the input from the requirements specification

• Note: The conceptual design is based on the entity-relationship model in thiscourse

SWEN304 Lect6and7: EERM 6

Page 7: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Phase 3: Logical Design

• Logical design is the process of constructing a database schema used in anorganization, as represented by a particular data manipulation technology, but stillindependent of physical considerations

• The conceptual database schema is mapped onto a logical database schema, whichcan be further refined to meet the data requirements

• popular data manipulation technogies used in logical design are those provided bythe relational model or some other model (for example: OO, XML, JSON)

• in case of the relational model, the database schema includes a description of alltables with their primary and foreign keys, so that SQL can be applied for datadefinition, data manipulation, and data querying

• Note: The logical design is based on the relational model in this course

SWEN304 Lect6and7: EERM 7

Page 8: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Phase 4: Physical Design

• Physical design is the process of implementing the logical data model in adatabase management system (DBMS)

• If the logical data model is the relational model, then the physical design is toestablish relations in the DBMS that involves:

• selecting the files in which to store the tables

• deciding which indexes should be used to achieve efficient access to data items

• describing the integrity constraints and security measures

• . . .

• Decisions made during the physical design phase often affect non-functionalproperties of the database at run time, such as performance, accessibility, securityand user-friendliness

• Note: Details of physical design are beyond the scope of this course

SWEN304 Lect6and7: EERM 8

Page 9: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Database Design Process - Overview

SWEN304 Lect6and7: EERM 9

Page 10: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Entity-Relationship Model - Terminology

• the Entity-Relationship model (ER, for short) is the most popular conceptualdata model, and the de facto standard in conceptual design

• Originally proposed by Peter P. Chen in 1976

• The target of the database is regarded as consisting of entities and relationships

• Entities are basic objects that can be identified in the target of the database

• Attributes are properties that describe entities

• Entities that are described by the same set of attributes are classified into anentity set

• An entity set can be abstracted into an entity type

• Example:

A entity type Client with attribute set{Name, Birthday, Address, Phone}, andkey {Name, Birthday}

Client

–Phone–Address

–Birthday–Name

SWEN304 Lect6and7: EERM 10

Page 11: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Entity-Relationship Model - Terminology

• Relationships are associations between entities, or objects that are derived fromentities

• Relationships have entities as their components

• Relationships can also have attributes as properties that describe them

• Relationships that are described by the same set of components and attributes areclassified into a relationship set

• A relationship set can be abstracted into a relationships type

• Example:

A relationship typeRental with componentset {Client, DVD},attribute set{RentalDay, DueDay},and key{DVD,RentalDay}

Client

–Phone–Address–Birthday–Name

DVDYear–

Director–Title–

RentalPP

PP����

���� —RentalDayPPPP—DueDayq

���

@@@R

SWEN304 Lect6and7: EERM 11

Page 12: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Entity-Relationship Diagram

• For the communication between database designers, database programmers,domain experts and potential users, it is helpful to visualise the database schemagraphically

• A entity-relationship (ER) diagram is a directed graph with a node for everyentity type or relationship type

• Convention (proposed by Chen): draw entity types as rectangles, and drawrelationship types as diamonds

• To capture more details of the conceptual design, database designers often show ...

• attributes in the ER diagram by attaching them to their entity or relationship type

• keys in the ER diagram by underlining key attributes and by putting dots on keycomponents

• attribute domains in the ER diagram by adding them to the attributes

SWEN304 Lect6and7: EERM 12

Page 13: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Entity-Relationship Diagram - Example

• An example:

SWEN304 Lect6and7: EERM 13

Page 14: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Entity-Relationship Schema - Example

• In our example we have the following entity types:

• Supplier

• attributes: supplier no, name, address

• key: supplier no

• Article

• attributes: article no, price, nr on stock, short name

• key: article no

• Bill

• attributes: bill no, amount

• key: bill no

• Department

• attributes: department no, budget

• key: department no

• Client

• attributes: client id, name, address

• key: client id

SWEN304 Lect6and7: EERM 14

Page 15: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Entity-Relationship Schema - Example

• In our example we have the following relationship types:

• Offer

• components: Supplier, Article

• attributes: date, price

• key: Supplier, Article, date

• Purchase

• components: Supplier, Article, Department

• attributes: date, quantity

• key: Supplier, Article, Department, date

• Sale

• components: Department, Article, Client, Bill

• attributes: date, price

• key: Department, Article, Client, date

SWEN304 Lect6and7: EERM 15

Page 16: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Entity-Relationship Schema

• An entity-relationship schema (ER schema, for short) is a finite set S of entityand relationship types, such that for every relationship type R in S all itscomponents belong to S, too

• An instance St of an ER schema S assigns each entity type E an entity set Et

and each relationship type R a relationship set Rt, such that for each relationshipr in the relationsip set Rt and for every component E of R the entity r(E)belongs to the entity set Et

SWEN304 Lect6and7: EERM 16

Page 17: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Keys

• Keys ensure that the entities in an entity set (or the relationships in a relationshipset) can be uniquely identified

• In our example the entity types have keys as follows:

• clients are uniquely identified by their client id

• departments are uniquely identified by their department no

• bills are uniquely identified by their bill no

• articles are uniquely identified by their article no

• suppliers are uniquely identified by their supplier no

• In our example, the relationship types have keys as follows:

• offers are uniquely identified by supplier, article and date

• purchases are uniquely identified by department, supplier, article and date

• sales are uniquely identified by article, department, client and date

SWEN304 Lect6and7: EERM 17

Page 18: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

n-ary Relationship Types

• An entity type E is described by its attributes attr(E) and its key key(E)

• A relationship R is described by its components comp(R), its attributes attr(R)and its key key(R)

• A relationship type with n components is called n-ary, in particular

• a unary relationship type has one component

• a binary relationship type has two components

• a ternary relationship type has three components

SWEN304 Lect6and7: EERM 18

Page 19: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Recursive Relationship Types

• A relationship type is called recursive if it contains the same entity type more thanonce as a component

• Example: suppose we want to model relationships between a child and a parent(that is, between two persons)

• Can use a relationship type Descendent that contains the entity type Persontwice as a component

Person–Address

–Birthday–Name

Descendent

PPPPP

�����

�����PPPPP

Child Parentr r? ?

• Role names are used to distinguish the different occurrences of the same entitytype in a recursive relationship type (in our example Child and Parent)

SWEN304 Lect6and7: EERM 19

Page 20: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Extentions of the Entity-Relationship Model

• Several extensions have been proposed to overcome inconveniencies and to enrichthe expressive power of the ER model

• After all, the ER model with its extensions provides effective and convenient meansof describing the target of the database at a high level of abstraction

• Some extensions we discuss here:

• Specialisation

• Higher-order relationship types

• Generalisation and clusters

SWEN304 Lect6and7: EERM 20

Page 21: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Specialisation

• Sometimes, an object in the target of the database can be represented by morethan just a single abstract concept

• Examples:

• Students are also persons

• Graduate students are also students, and thus hey are also persons

• Abstract concepts can be derived from other abstract concepts, for example themore specific concept Student from the more general concept Person

• This idea is known as specialisation:

• the derived object type is a subtype of the more general supertype

• the subtype inherits all features of the supertype, but often adds some additionalproperties

• the subtype may be modelled as a unary relationship type whose single componentis just the supertype (but may have additional attributes)

• Note: every object of the subtype gives rise to at most one object of supertype

SWEN304 Lect6and7: EERM 21

Page 22: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

An Example for a Specialisation Hierachy

SWEN304 Lect6and7: EERM 22

Page 23: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Same Example with further Relationship Types

SWEN304 Lect6and7: EERM 23

Page 24: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

An Example for Aggregation

• The following ER diagram contains two relationship types Patient and Driver

• Suppose we want to model that a person is in hospital because she/he had anaccident with a vehicle

SWEN304 Lect6and7: EERM 24

Page 25: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

An Example for Aggregation

• Can use a new relationship type Accident to model these relationships

• But what are the components of Accident?

• It would be convenient to regard parts of the ER diagram as entity types (thisapproach is called aggregation)

SWEN304 Lect6and7: EERM 25

Page 26: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

An Example of Relationship Types participating in Relationship Types

• In fact, we could simply use the relationships types Patient and Driver ascomponents of Accident

• It would be convenient to allow relationship types to participate in otherrelationship types (these are called higher-order relationship types)

• In our example the relationship types have the following order:

• Patient and Driver have order 1

• Accident has order 2

SWEN304 Lect6and7: EERM 26

Page 27: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Higher-order Relationship Types

• A relationship type R is of order 1 if all its components are entity types

• Recall: In a (simple) ER diagram all relationship types are of order 1

• A relationship type R is of order k if its components have maximum order k − 1

• This extension is possible in an extended ER diagram

• It gives the database designer more flexibility, for example to model aggregation

• For the sake of convenience, entity types and relationship types together all calledobject types

• Entities and relationships are called objects

• Entity sets and relationship sets are called object sets

• Entity types may be regarded as object types of order 0

• Object types of order k are just relationship types of order k

SWEN304 Lect6and7: EERM 27

Page 28: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Cluster

• sometimes it is necessary to model alternatives, for example having a relationshipto students or lecturers

• Abstract concepts can be obtained by generalization from a collection of abstractconcepts

• A cluster C represents an alternative among a collection of object types

• let C be an alternative between given object types C1, . . . , Cm

• for simplicity, the cluster can be denoted as C = C1 ⊕ · · · ⊕ Cm

• we call C1, . . . , Cm the components of the cluster C

• Example: Employee = Lecturer⊕Tutor⊕General Staff

• Every object of cluster type C is an object of exactly one of the object types in thealternative

• A cluster is of order k if its components have maximum order k − 1

SWEN304 Lect6and7: EERM 28

Page 29: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

An Example for a Cluster

SWEN304 Lect6and7: EERM 29

Page 30: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

An Example for a Cluster participating in a Relationship Type

SWEN304 Lect6and7: EERM 30

Page 31: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Extended Entity-Relationship Schema and Diagram

• An extended entity-relationship schema (extended ER schema, for short) is afinite set S of object types (entity types, relationship types, clusters), such that forevery object type O in S all its components belong to S, too

• An instance St of an extended ER schema S assigns each object type O an objectset Ot, such that for each object o in the object set Ot and for every componentO′ of O the object o(O′) belongs to the object set O′t

• A extended entity-relationship diagram (extended ER diagram, for short) is adirected graph with a node for every entity type or relationship type

• Convention: draw entity types as rectangles, draw relationship types as diamonds,draw clusters as ⊕

SWEN304 Lect6and7: EERM 31

Page 32: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Critical Success Factors in Database Design

• Work interactively with domain experts and users as much as possible

• Follow a structured methodology throughout the data modelling process

• Employ a data-driven approach

• Incorporate structural and integrity considerations into the data models

• Combine conceptualisation, refinement and validation techniques into the datamodelling methodology

• Use diagrams to represent as much of the database schema as possible

• Build a data dictionary to supplement the diagrams

• Be willing to repeat steps

SWEN304 Lect6and7: EERM 32

Page 33: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Transformation EER → Relational (1)

• we describe the transformation of an EER schema into a relational databaseschema

• start with entity types (object types of order 0) and then work one’s way upgradually

• Transformation of entity types:

• an entity type E = (attr(E), key(E)) leads to a relation schema E′

• the attributes of E are preserved

• the domain assignment for the attributes of E is preserved, too

• the key of E becomes the primary key of the relation schema E′

SWEN304 Lect6and7: EERM 33

Page 34: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Example - Transforming Entity Types

• three entity types:

• Department = ({No,Budget}, {No})• Supplier = ({No,Name,Address}, {No})• Article = ({No,Shortname,QuantityOnStock}, {No})

• result in three relation schemata:

• Department = {No,Budget} with primary key {No}• Supplier = {No,Name,Address} with primary key {No}• Article = {No,Shortname,QuantityOnStock} with primary key {No}

SWEN304 Lect6and7: EERM 34

Page 35: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Transformation EER → RDM (2)

• for a relationship type R = (comp(R), attr(R), id(R)) and each componentC ∈ comp(R) choose pairwise disjoint sets of new attribute names not occurringin attr(R):

k attr(C) = {C.A where A is a key attribute of C′}

where C′ is originating from a prior transformation of component C

• Example: we derive new sets of attribute names for entity types:

• k attr(Department) = {Department No}• k attr(Supplier) = {Supplier No}• k attr(Article) = {Article No}

SWEN304 Lect6and7: EERM 35

Page 36: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Transformation EER → RDM (3)

• Transformation of relationship types:

• a relationship type R = (comp(R), attr(R), id(R)) leads to relation schema R′ with

attr(R′) =⋃

C∈comp(R)

k attr(C) ∪ attr(R)

• the domain assignment of the attributes is preserved

• R′ has the primary key ⋃C∈key(R)∩comp(R)

k attr(C) ∪ (key(R) ∩ attr(R))

• each component C ∈ comp(R) defines a foreign key

[C.A1, . . . , C.An] ⊆ C′[A1, . . . , An]

on R′ for key(C) = {A1, . . . , An}

SWEN304 Lect6and7: EERM 36

Page 37: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Example - Transforming Relationship Types

• Recall:

• k attr(Department) = {Department No}• k attr(Supplier) = {Supplier No}• k attr(Article) = {Article No}

• relationship typeDayOffer = ({Supplier,Article}, {Date,Price}, {Supplier,Article,Date})becomes:

• DayOffer = {Supplier No,Article No,Date,Price} with

• primary key: {Supplier No,Article No,Date}• foreign keys: [Supplier No] ⊆ Supplier[No]

[Article No] ⊆ Article[No]

SWEN304 Lect6and7: EERM 37

Page 38: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Example - Transforming Relationship Types

• first we derive new sets of attribute names for components of relationship typePurchase:

• k attr(DayOffer) ={DayOffer Supplier No,DayOffer Article No,DayOffer Date}

• then relationship type Purchase =({Department,Day Offer}, {Quantity}, {Department,Day Offer})

becomes:

• Purchase = {Department No,DayOffer Supplier No,DayOffer Article No,DayOffer Date,Quantity} with

• primary key:{Department No,DayOffer Supplier No, DayOffer Article No,DayOffer Date}

• foreign keys: [Department No] ⊆ Department[No][DayOffer Supplier No,DayOffer Article No,DayOffer Date]⊆ DayOffer[Supplier No,Article No,Date]

SWEN304 Lect6and7: EERM 38

Page 39: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

How to handle Clusters

• cluster types used in conceptual design to model alternatives

• the relational data model does not provide similar concept

• transform EER schema with clusters into equivalent EER schema without clusters

• only necessary as pre-processing before actual transformation to the realationaldata model

• in general: clusters provide database designers a convenient way to model objectsin the target of database

• do not recommend to avoid clusters as size of EER schema increases dramaticallyand becomes harder to comprehend

SWEN304 Lect6and7: EERM 39

Page 40: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Transformation EER → RDM (3)

• replacing clusters in EER schema is straightforward:

• cluster types in EER schema S that are not component of any relationship type canbe removed from S

• consider relationship type R with cluster component C = C1 ⊕ · · · ⊕ Cn

• replace R by n new relationship types R1, . . . , Rn:

• for i = 1, . . . , n: Ri obtained from R by replacing every occurrence of C by Ci

• if Ri still contain clusters, then repeat process of replacing these clusters by itscomponents

• the final EER schema is cluster-free and previous transformation to RDM can beapplied

SWEN304 Lect6and7: EERM 40

Page 41: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Example - Transforming Clusters

• consider the following EER diagram:

Associate Prof

Professor

GraduateUnder

Project

Student

since until

PostGrad

DegreeSupervise

SupervisorDept Subject

Dept Level

Name

Name Title Description

ID Name

• Supervise=({Supervisor, Student, Project},{since, until},{Supervisor,Project}) with

• cluster Supervisor = Professor⊕AssociateProf

• cluster Student = PostGrad⊕UnderGraduate

SWEN304 Lect6and7: EERM 41

Page 42: Entity Relationship Data Model - ecs.wgtn.ac.nz · Entity-Relationship Model - Terminology the Entity-Relationship model (ER, for short) is the most popular conceptual data model,

Example - Transforming Clusters

• using Supervisor we obtain:

• Prof Supervision:({Professor, Student, Project},{since,until},{Professor, Project})

• AProf Supervision:({AssociateProf, Student, Project},{since,until},{AssociateProf,

Project})

• using Student subsequently we obtain:

• Prof PostGrad Supervision:({Professor, PostGrad, Project},{since,until},{Professor, Project})

• Prof UnderGrad Supervision:({Professor, UnderGraduate, Project},{since,until},{Professor,

Project})• AProf PostGrad Supervision:

({AssociateProf, PostGrad, Project},{since,until},{AssociateProf,Project})

• AProf UnderGrad Supervision:({AssociateProf, UnderGrad, Project},{since,until},{AssociateProf,

Project})

SWEN304 Lect6and7: EERM 42