53
Chapter 8 Entity-Relationship Modeling Pearson Education © 2009

Chapter 8 Entity-Relationship Modeling Pearson Education 2009

Embed Size (px)

DESCRIPTION

3 ER diagram of Branch user views of DreamHome Pearson Education © 2009

Citation preview

Page 1: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

Chapter 8

Entity-Relationship Modeling

Pearson Education © 2009

Page 2: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

2

Chapter 12 - Objectives How to use Entity–Relationship (ER) modeling in database

design.

Basic concepts associated with ER model.

Diagrammatic technique for displaying ER model using Unified Modeling Language (UML).

How to identify and resolve problems with ER models called connection traps.

How to build an ER model from a requirements specification.

Pearson Education © 2009

Page 3: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

3

ER diagram of Branch user views of DreamHome

Pearson Education © 2009

Page 4: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

4

Concepts of the ER Model

Entity types

Relationship types

Attributes

Pearson Education © 2009

Page 5: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

5

Entity Type Entity type

– Group of objects with same properties, identified by enterprise as having an independent existence.

– Can be objects with physical existence or objects with a conceptual existence.

Pearson Education © 2009

Page 6: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

6

Entity Type

Entity occurrence– Uniquely identifiable object of an entity type.

Each entity type is shown as a rectangle Labelled with the name of the entity - Noun

Pearson Education © 2009

Page 7: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

7

ER diagram of Staff and Branch entity types

Pearson Education © 2009

Page 8: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

8

Relationship Types Relationship type

– Set of meaningful associations among entity types. Relationship occurrence

– Uniquely identifiable association, which includes one occurrence from each participating entity type.

Each relationship type is shown as a line connecting the associated entity types and labelled with the name of relationship

Using verb / short phrase including verb

Pearson Education © 2009

Page 9: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

9

Semantic net of Has relationship type

Pearson Education © 2009

Semantic Net Object-level model

Symbol . to represent entities and symbol to represent relationships

Represent Branch and Staff using values for the primary key attributes

Page 10: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

10

ER diagram of Branch Has Staff relationship

Pearson Education © 2009

Page 11: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

11

Relationship Types Degree of a Relationship

– Number of participating entities in relationship. The entities involved in a particular relationship type are

referred to as participants The number of participants in a relationship type is called

the degree of that relationship Relationship of degree :

– two is binary – three is ternary– four is quaternary.

Pearson Education © 2009

Page 12: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

12

Binary relationship called POwns

Pearson Education © 2009

Page 13: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

13

Ternary relationship called Registers

Pearson Education © 2009

Page 14: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

14

Quaternary relationship called Arranges

Pearson Education © 2009

Page 15: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

15

Relationship Types

Recursive Relationship– Relationship type where same entity type

participates more than once in different roles.– Sometimes called as unary

Relationships may be given role names to indicate purpose that each participating entity type plays in a relationship.

Pearson Education © 2009

Page 16: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

16

Recursive relationship called Supervises with role names

Pearson Education © 2009

Page 17: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

17

Entities associated through two distinct relationships with role names

Pearson Education © 2009

Page 18: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

18

Attributes

Attribute– Property of an entity or a relationship type.

Attribute Domain– Set of allowable values for one or more attributes. – Potential values that an attribute may hold– Attributes may share a domain– Domains can also be composed of domains

Pearson Education © 2009

Page 19: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

19

Attributes Simple Attribute/Atomic

– Attribute composed of a single component with an independent existence.

– Cannot be further subdivided into smaller components– examples: position, salary, employeeID

Composite Attribute– Attribute composed of multiple components, each with

an independent existence.– Address:

» Street, City and Postcode

Pearson Education © 2009

Page 20: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

20

Attributes

Single-valued Attribute– Attribute that holds a single value for each

occurrence of an entity type.

Multi-valued Attribute– Attribute that holds multiple values for each

occurrence of an entity type.

Pearson Education © 2009

Page 21: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

21

Attributes

Derived Attribute– Attribute that represents a value that is

derivable from value of a related attribute, or set of attributes, not necessarily in the same entity type.

Pearson Education © 2009

Page 22: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

22

Keys Candidate Key

– Minimal set of attributes that uniquely identifies each occurrence of an entity type.

– Must hold values that are unique for every occurrence of an entity type

Primary Key– Candidate key selected to uniquely identify each

occurrence of an entity type.

Composite Key– A candidate key that consists of two or more attributes.

Pearson Education © 2009

Page 23: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

23

ER diagram of Staff and Branch entities and their attributes

Pearson Education © 2009

Page 24: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

24

Entity Type Strong Entity Type

– Entity type that is not existence-dependent on some other entity type.

– Sometimes referred to as parent, owner or dominant

Weak Entity Type– Entity type that is existence-dependent on some other

entity type. – Sometimes referred to as child, dependent,

subordinate

Pearson Education © 2009

Page 25: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

25

Strong entity type called Client and weak entity type called Preference

Pearson Education © 2009

Page 26: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

26

Relationship called Advertises with attributes

Pearson Education © 2009

Attributes can also be assigned to relationships

Page 27: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

27

Structural Constraints

Constraints that may be placed on entity types that participate in a relationship

Constraints should reflect the restrictions on the relationships as perceived in the real world

Examples:– Property for rent must have an owner and

each branch must have staff

Pearson Education © 2009

Page 28: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

28

Structural Constraints Main type of constraint on relationships is called multiplicity.

Multiplicity - number (or range) of possible occurrences of an entity type that may relate to a single occurrence of an associated entity type through a particular relationship.

Represents policies (called business rules) established by user or company.

Pearson Education © 2009

Page 29: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

29

Structural Constraints The most common degree for relationships is binary.

Binary relationships are generally referred to as being:– one-to-one (1:1) – a member of staff manages a

branch– one-to-many (1:*) – a member of staff oversees

properties for rent– many-to-many (*:*) – newspapers advertise

properties for rent

Pearson Education © 2009

Page 30: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

30

Semantic net of Staff Manages Branch relationship type

Pearson Education © 2009

Page 31: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

31

Multiplicity of Staff Manages Branch (1:1) relationship

Pearson Education © 2009

Page 32: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

32

Semantic net of Staff Oversees PropertyForRent relationship type

Pearson Education © 2009

Page 33: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

33

Multiplicity of Staff Oversees PropertyForRent (1:*) relationship type

Pearson Education © 2009

Page 34: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

34

Semantic net of Newspaper Advertises PropertyForRent relationship type

Pearson Education © 2009

Page 35: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

35

Multiplicity of Newspaper Advertises PropertyForRent (*:*) relationship

Pearson Education © 2009

Page 36: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

36

Structural Constraints

Multiplicity for Complex Relationships – Number (or range) of possible occurrences

of an entity type in an n-ary relationship when other (n-1) values are fixed.

Pearson Education © 2009

Page 37: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

37

Semantic net of ternary Registers relationship with values for Staff and Branch entities fixed

Pearson Education © 2009

Page 38: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

38

Multiplicity of ternary Registers relationship

Pearson Education © 2009

Page 39: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

39

Summary of multiplicity constraints

Pearson Education © 2009

Page 40: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

40

Structural Constraints Multiplicity is made up of two types of

restrictions on relationships: cardinality and participation.

Pearson Education © 2009

Page 41: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

41

Structural Constraints

Cardinality – Describes maximum number of possible

relationship occurrences for an entity participating in a given relationship type.

Participation– Determines whether all or only some entity

occurrences participate in a relationship.

Pearson Education © 2009

Page 42: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

42

Multiplicity as cardinality and participation constraints

Pearson Education © 2009

Page 43: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

43

Problems with ER Models

Problems may arise when designing a conceptual data model called connection traps.

Often due to a misinterpretation of the meaning of certain relationships.

Two main types of connection traps are called fan traps and chasm traps.

Pearson Education © 2009

Page 44: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

44

Problems with ER Models Fan Trap

– Where a model represents a relationship between entity types, but pathway between certain entity occurrences is ambiguous.

Chasm Trap– Where a model suggests the existence of a

relationship between entity types, but pathway does not exist between certain entity occurrences.

Pearson Education © 2009

Page 45: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

45

An Example of a Fan Trap

Pearson Education © 2009

Fan Trap: Where a model represents a relationship between entity types, but pathway between certain entity occurrences is ambiguous.

Fan trap may exist where two or more 1:* relationships fan out from the same entity

A single division operates one or more branches and has one or more staff

Which members of staff work at a particular branch?

Page 46: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

46

Semantic Net of ER Model with Fan Trap

At which branch office does staff number SG37 work?

Pearson Education © 2009

Page 47: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

47

Restructuring ER model to remove Fan Trap

Pearson Education © 2009

Page 48: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

48

Semantic Net of Restructured ER Model with Fan Trap Removed

SG37 works at branch B003.

Pearson Education © 2009

Page 49: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

49

An Example of a Chasm Trap

Pearson Education © 2009

Chasm Trap: Where a model suggests the existence of a relationship between entity types, but pathway does not exist between certain entity occurrences.

Chasm trap may occur where there are one or more relationships with a minimum multiplicity of zero forming part of the pathway between related entities.

A single branch has one or more staff who oversee zero or more properties for rent.

Page 50: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

50

An Example of a Chasm Trap

Pearson Education © 2009

Not all staff oversee property and not all properties are overseen by a member of staff

Which properties are available at each branch?

Page 51: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

51

Semantic Net of ER Model with Chasm Trap

At which branch office is property PA14 available?

Pearson Education © 2009

Page 52: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

52

ER Model restructured to remove Chasm Trap

Pearson Education © 2009

Page 53: Chapter 8 Entity-Relationship Modeling Pearson Education  2009

53

Semantic Net of Restructured ER Model with Chasm Trap Removed

Pearson Education © 2009