© 2009 Pearson Education, Inc. Publishing as Prentice Hall 1 Modeling Data in the Organization...

73
© 2009 Pearson Education, Inc. Publishing as © 2009 Pearson Education, Inc. Publishing as Prentice Hall Prentice Hall 1 Modeling Data in the Modeling Data in the Organization Organization Chapters 3 + 4: Chapters 3 + 4: Modern Database Management Modern Database Management 9 9 th th Edition Edition Jeffrey A. Hoffer, Mary B. Prescott, Jeffrey A. Hoffer, Mary B. Prescott, Heikki Topi Heikki Topi UNIT 03: UNIT 03:

Transcript of © 2009 Pearson Education, Inc. Publishing as Prentice Hall 1 Modeling Data in the Organization...

© 2009 Pearson Education, Inc.  Publishing as Prentice © 2009 Pearson Education, Inc.  Publishing as Prentice HallHall 11

Modeling Data in the Modeling Data in the OrganizationOrganization

Chapters 3 + 4:Chapters 3 + 4:Modern Database Modern Database

ManagementManagement99thth Edition Edition

Jeffrey A. Hoffer, Mary B. Prescott, Jeffrey A. Hoffer, Mary B. Prescott, Heikki TopiHeikki Topi

UNIT 03:UNIT 03:

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 22

ObjectivesObjectives Definition of termsDefinition of terms Importance of data modelingImportance of data modeling Write good names and definitions for entities, Write good names and definitions for entities,

relationships, and attributesrelationships, and attributes Distinguish unary, binary, and ternary relationshipsDistinguish unary, binary, and ternary relationships Model different types of attributes, entities, Model different types of attributes, entities,

relationships, and cardinalitiesrelationships, and cardinalities Draw E-R diagrams for common business situationsDraw E-R diagrams for common business situations Convert many-to-many relationships to associative Convert many-to-many relationships to associative

entitiesentities Model time-dependent data using time stampsModel time-dependent data using time stamps

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 33

Business RulesBusiness Rules

Statements that define or constrain Statements that define or constrain some aspect of the businesssome aspect of the business Assert business structureAssert business structure Control/influence business behavior Control/influence business behavior

(prevent, cause, or suggest things to (prevent, cause, or suggest things to happen)happen)

Expressed in terms familiar to end usersExpressed in terms familiar to end users Automated through DBMS softwareAutomated through DBMS software

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall

ExamplesExamples

Every student in the university must have a Every student in the university must have a faculty advisor.faculty advisor.

A student is any person who has applied for A student is any person who has applied for admission or taken a course or training program.admission or taken a course or training program.

A student may register for a section of a course A student may register for a section of a course only if s/he has successfully completed the only if s/he has successfully completed the prerequisite for that course.prerequisite for that course.

A preferred customer qualifies for a 10 percent A preferred customer qualifies for a 10 percent discount, unless he has an overdue account discount, unless he has an overdue account balance.balance.

44

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall

Business RulesBusiness Rules

Business rules are not universal.Business rules are not universal. The rules and policies of an organization The rules and policies of an organization

may change over time.may change over time. Business rules appear in descriptions of Business rules appear in descriptions of

business functions, events, policies, units, business functions, events, policies, units, stakeholders, and other objects.stakeholders, and other objects.

They can be found in interview notes and They can be found in interview notes and group information requirements.group information requirements.

55

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall

Types of Business RulesTypes of Business Rules

Basic business rules Basic business rules are data names are data names and definitions.and definitions.

Constraint business rules Constraint business rules state state constraints on data objects.constraints on data objects.

Other business rules Other business rules govern the govern the people, places, events, processes, people, places, events, processes, network, and the objectives of the network, and the objectives of the organization.organization.

66

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall

ImportanceImportance

Business Rules are Business Rules are important important in in database modeling database modeling becausebecause they they govern how data are handled govern how data are handled (creating, updating, removing) and (creating, updating, removing) and stored.stored.

Thus they must be described along Thus they must be described along with the data to which they are with the data to which they are related.related.

77

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall

Data ModelingData Modeling

Documenting rules and policies of an Documenting rules and policies of an organization that govern data is exactly organization that govern data is exactly what what data modeling data modeling is all about.is all about.

Your job as a database analyst is to:Your job as a database analyst is to: Identify and understand business rules that govern data.Identify and understand business rules that govern data. Represent those rules so that they can be Represent those rules so that they can be

unambiguously understood by information systems unambiguously understood by information systems developers, anddevelopers, and

Implement those rules in database technology.Implement those rules in database technology.

88

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 99

A Good Business Rule Is:A Good Business Rule Is:

Declarative–what, not howDeclarative–what, not how Precise–clear, agreed-upon meaningPrecise–clear, agreed-upon meaning Atomic–one statementAtomic–one statement Consistent–internally and externallyConsistent–internally and externally Expressible–structured, natural Expressible–structured, natural

languagelanguage Distinct–non-redundantDistinct–non-redundant Business-oriented–understood by Business-oriented–understood by

business peoplebusiness people

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 1010

A Good Data Name Is:A Good Data Name Is: Related to business, not technical, Related to business, not technical,

characteristicscharacteristics Meaningful and self-documentingMeaningful and self-documenting UniqueUnique ReadableReadable Composed of words from an approved listComposed of words from an approved list RepeatableRepeatable Follows standard syntaxFollows standard syntax

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 1111

Data DefinitionsData Definitions

Explanation of a term or factExplanation of a term or fact Term–word or phrase with specific meaningTerm–word or phrase with specific meaning Fact–association between two or more termsFact–association between two or more terms

Guidelines for good data definitionGuidelines for good data definition Gathered in conjunction with systems Gathered in conjunction with systems

requirementsrequirements Accompanied by diagramsAccompanied by diagrams Concise description of essential data meaningConcise description of essential data meaning Achieved by consensus, and iteratively refinedAchieved by consensus, and iteratively refined

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall

Examples of Terms and Examples of Terms and FactsFacts

Terms: Terms: Course, section, rental car, flight, Course, section, rental car, flight,

reservation, and passenger.reservation, and passenger. Facts:Facts:

A A coursecourse is a is a modulemodule of instruction in a of instruction in a particular particular subject areasubject area..

A A customercustomer may request a may request a model of car model of car from a from a rental branch rental branch on a on a particular dateparticular date..

1212

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 1313

E-R Model ConstructsE-R Model Constructs Entities:Entities:

Entity instance–person, place, object, event, concept (often Entity instance–person, place, object, event, concept (often corresponds to a row in a table)corresponds to a row in a table)

Entity Type–collection of entities (often corresponds to a Entity Type–collection of entities (often corresponds to a table)table)

Relationships:Relationships: Relationship instance–link between entities (corresponds to Relationship instance–link between entities (corresponds to

primary key-foreign key equivalencies in related tables)primary key-foreign key equivalencies in related tables) Relationship type–category of relationship…link between Relationship type–category of relationship…link between

entity typesentity types

Attribute–Attribute–property or characteristic of an entity or property or characteristic of an entity or relationship type (often corresponds to a field in a table)relationship type (often corresponds to a field in a table)

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 1414

Sample E-R Diagram (Figure 3-1)

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 1515

Relationship degrees specify number of entity types involved

Entity symbols

A special entity that is also a relationship

Relationship symbols

Relationship cardinalities specify how many of each entity type is allowed

Attribute symbols

Basic E-R notation (Figure 3-2)

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 1616

Types of EntitiesTypes of Entities A strong entity A strong entity type is one that exists type is one that exists

independently of other entity types. independently of other entity types. Examples: Employee, student, course, automobile.Examples: Employee, student, course, automobile. Instances always have a unique characteristic Instances always have a unique characteristic

distinguish each occurrence of that entity.distinguish each occurrence of that entity. Identifier underlined with single lineIdentifier underlined with single line

A weak entity A weak entity type is one whose existence type is one whose existence depends on other entity type.depends on other entity type. Example: DependentExample: Dependent does not have a unique identifier (only a partial does not have a unique identifier (only a partial

identifier, a characteristic that serves as a partial identifier, a characteristic that serves as a partial identifier).identifier).

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 1717

Strong entity Weak entity

Identifying relationship (Figure 3-5)

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall

Types of EntitiesTypes of Entities

An associative entity An associative entity is an entity type is an entity type that associate the instances of one or that associate the instances of one or more entity types and contain attributes more entity types and contain attributes that are particular to the relationship that are particular to the relationship between those entity instances.between those entity instances.

Example: certificate offered to an Example: certificate offered to an employee after completing a course of employee after completing a course of study.study.

1818

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 1919

What Should an Entity Be?What Should an Entity Be? SHOULD BE:SHOULD BE:

An object that will have many An object that will have many instances in the databaseinstances in the database

An object that will be composed of An object that will be composed of multiple attributesmultiple attributes

An object that we are trying to modelAn object that we are trying to model SHOULD NOT BE:SHOULD NOT BE:

A user of the database system A user of the database system An output of the database system An output of the database system

(e.g., a report)(e.g., a report)

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 2020

Inappropriate entities

System System useruser

System System outputoutput

Figure 3-4 Example of inappropriate entities

Appropriate entities

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 2121

AttributesAttributes Attribute–property or characteristic Attribute–property or characteristic

of an entity or relationship typeof an entity or relationship type Classifications of attributes:Classifications of attributes:

Required versus Optional AttributesRequired versus Optional Attributes Simple versus Composite AttributeSimple versus Composite Attribute Single-Valued versus Multivalued Single-Valued versus Multivalued

AttributeAttribute Stored versus Derived AttributesStored versus Derived Attributes Identifier AttributesIdentifier Attributes

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 2222

Identifiers (Keys)Identifiers (Keys)

Identifier (Key)–an attribute (or Identifier (Key)–an attribute (or combination of attributes) that combination of attributes) that uniquely identifies individual uniquely identifies individual instances of an entity typeinstances of an entity type

Simple versus Composite IdentifierSimple versus Composite Identifier Candidate Identifier–an attribute that Candidate Identifier–an attribute that

could be a key…satisfies the could be a key…satisfies the requirements for being an identifierrequirements for being an identifier

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 2323

Characteristics of IdentifiersCharacteristics of Identifiers

Will not change in valueWill not change in value Will not be nullWill not be null No intelligent identifiers (e.g., No intelligent identifiers (e.g.,

containing locations or people that containing locations or people that might change)might change)

Substitute new, simple keys for long, Substitute new, simple keys for long, composite keyscomposite keys

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 2424

Figure 3-7 A composite attribute

An attribute broken into component parts

Figure 3-8 Entity with multivalued attribute (Skill) and derived attribute (Years_Employed)

Multivaluedan employee can have more than one skill

Derivedfrom date employed and current date

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 2525

Figure 3-9 Simple and composite identifier attributes

The identifier is boldfaced and underlined

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 2626

Figure 3-19 Simple example of time-stamping

This attribute is both multivalued and composite

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 2727

More on RelationshipsMore on Relationships Relationship Types vs. Relationship InstancesRelationship Types vs. Relationship Instances

The relationship type is modeled as lines between The relationship type is modeled as lines between entity types…the instance is between specific entity types…the instance is between specific entity instancesentity instances

Relationships can have attributesRelationships can have attributes These describe features pertaining to the association These describe features pertaining to the association

between the entities in the relationshipbetween the entities in the relationship

Two entities can have more than one type of Two entities can have more than one type of relationship between them (multiple relationship between them (multiple relationships)relationships)

Associative Entity–combination of Associative Entity–combination of relationship and entityrelationship and entity

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 2828

Figure 3-10 Relationship types and instances

a) Relationship type

b) Relationship instances

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 2929

Degree of RelationshipsDegree of Relationships

Degree of a relationship is Degree of a relationship is the number of entity types the number of entity types that participate in itthat participate in itUnary RelationshipUnary RelationshipBinary RelationshipBinary RelationshipTernary RelationshipTernary Relationship

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 3030

Degree of relationships – from Figure 3-2

Entities of two different types related to each other Entities of three

different types related to each other

One entity related to another of the same entity type

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 3131

Cardinality of RelationshipsCardinality of Relationships

One-to-OneOne-to-One Each entity in the relationship will have exactly Each entity in the relationship will have exactly

one related entityone related entity One-to-ManyOne-to-Many

An entity on one side of the relationship can An entity on one side of the relationship can have many related entities, but an entity on have many related entities, but an entity on the other side will have a maximum of one the other side will have a maximum of one related entityrelated entity

Many-to-ManyMany-to-Many Entities on both sides of the relationship can Entities on both sides of the relationship can

have many related entities on the other sidehave many related entities on the other side

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 3232

Cardinality ConstraintsCardinality Constraints Cardinality Constraints—the number of Cardinality Constraints—the number of

instances of one entity that can or must instances of one entity that can or must be associated with each instance of be associated with each instance of another entityanother entity

Minimum CardinalityMinimum Cardinality If zero, then optionalIf zero, then optional If one or more, then mandatoryIf one or more, then mandatory

Maximum CardinalityMaximum Cardinality The maximum numberThe maximum number

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 3333

Figure 3-12 Examples of relationships of different degrees

a) Unary relationships

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 3434

Figure 3-12 Examples of relationships of different degrees (cont.)

b) Binary relationships

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 3535

Figure 3-12 Examples of relationships of different degrees (cont.)

c) Ternary relationship

Note: a relationship can have attributes of its own

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 3636

Figure 3-17 Examples of cardinality constraints

a) Mandatory cardinalities

A patient must have recorded at least one history, and can have many

A patient history is recorded for one and only one patient

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 3737

Figure 3-17 Examples of cardinality constraints (cont.)

b) One optional, one mandatory

An employee can be assigned to any number of projects, or may not be assigned to any at all

A project must be assigned to at least one employee, and may be assigned to many

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 3838

Figure 3-17 Examples of cardinality constraints (cont.)

c) Optional cardinalities

A person is married to at most one other person, or may not be married at all

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 3939

Entities can be related to one another in more than one way

Figure 3-21 Examples of multiple relationships

a) Employees and departments

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 4040

Figure 3-21 Examples of multiple relationships (cont.)

b) Professors and courses (fixed lower limit constraint)

Here, min cardinality constraint is 2

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 4141

Figure 3-15a and 3-15b Multivalued attributes can be represented as relationships

simple

composite

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 4242

Associative EntitiesAssociative Entities An An entityentity–has attributes–has attributes

A A relationshiprelationship–links entities together–links entities together

When should a When should a relationship with attributesrelationship with attributes instead be instead be an an associative entityassociative entity? ? All relationships for the associative entity should be manyAll relationships for the associative entity should be many The associative entity could have meaning independent of the The associative entity could have meaning independent of the

other entitiesother entities The associative entity preferably has a unique identifier, and The associative entity preferably has a unique identifier, and

should also have other attributesshould also have other attributes The associative entity may participate in other relationships The associative entity may participate in other relationships

other than the entities of the associated relationshipother than the entities of the associated relationship Ternary relationships should be converted to associative Ternary relationships should be converted to associative

entitiesentities

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 4343

Figure 3-11a A binary relationship with an attribute

Here, the date completed attribute pertains specifically to the employee’s completion of a course…it is an attribute of the relationship

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 4444

Figure 3-11b An associative entity (CERTIFICATE)

Associative entity is like a relationship with an attribute, but it is also considered to be an entity in its own right

Note that the many-to-many cardinality between entities in Figure 3-11a has been replaced by two one-to-many relationships with the associative entity

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 4545

Figure 3-13c An associative entity – bill of materials structure

This could just be a relationship with attributes…it’s a judgment call

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 4646

Figure 3-18 Ternary relationship as an associative entity

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 4747

Microsoft Visio Notation for Pine Valley Furniture

E-R diagram

(Figure 3-22)

Different modeling software tools may have different notation for the same constructs

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 4848

Supertypes and SubtypesSupertypes and Subtypes

Subtype:Subtype: A subgrouping of the entities in an A subgrouping of the entities in an entity type that has attributes distinct from entity type that has attributes distinct from those in other subgroupingsthose in other subgroupings

Supertype:Supertype: A generic entity type that has a A generic entity type that has a relationship with one or more subtypesrelationship with one or more subtypes

Attribute Inheritance:Attribute Inheritance: Subtype entities inherit values of all Subtype entities inherit values of all

attributes of the supertypeattributes of the supertype An instance of a subtype is also an instance An instance of a subtype is also an instance

of the supertypeof the supertype

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 4949

Figure 4-1 Basic notation for supertype/subtype notation

a) EER notation

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 5050

Different modeling tools may have different notation for the same modeling constructs

b) Microsoft

Visio Notation

Figure 4-1 Basic notation for supertype/subtype notation (cont.)

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 5151

Figure 4-2 Employee supertype with three subtypes

All employee subtypes will have emp nbr, name, address, and date hired

Each employee subtype will also have its own attributes

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 5252

Relationships and SubtypesRelationships and Subtypes

Relationships at the Relationships at the supertypesupertype level level indicate that all subtypes will indicate that all subtypes will participate in the relationshipparticipate in the relationship

The instances of a The instances of a subtypesubtype may may participate in a relationship unique to participate in a relationship unique to that subtype. In this situation, the that subtype. In this situation, the relationship is shown at the subtype relationship is shown at the subtype levellevel

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 5353

Figure 4-3 Supertype/subtype relationships in a hospital

Both outpatients and resident patients are cared for by a responsible physician

Only resident patients are assigned to a bed

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 5454

Generalization and Generalization and SpecializationSpecialization

Generalization:Generalization: The process of The process of defining a more general entity type from defining a more general entity type from a set of more specialized entity types. a set of more specialized entity types. BOTTOM-UPBOTTOM-UP

Specialization:Specialization: The process of The process of defining one or more subtypes of the defining one or more subtypes of the supertype and forming supertype and forming supertype/subtype relationships. TOP-supertype/subtype relationships. TOP-DOWNDOWN

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 5555

Figure 4-4 Example of generalization

a) Three entity types: CAR, TRUCK, and MOTORCYCLE

All these types of vehicles have common attributes

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 5656

Figure 4-4 Example of generalization (cont.)

So we put the shared attributes in a supertype

Note: no subtype for motorcycle, since it has no unique attributes

b) Generalization to VEHICLE supertype

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 5757

Figure 4-5 Example of specialization

a) Entity type PART

Only applies to manufactured parts

Applies only to purchased parts

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 5858

b) Specialization to MANUFACTURED PART and PURCHASED PART

Note: multivalued attribute was replaced by an associative entity relationship to another entity

Created 2 subtypes

Figure 4-5 Example of specialization (cont.)

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 5959

Constraints in Supertype/ Constraints in Supertype/ Completeness ConstraintCompleteness Constraint

Completeness ConstraintsCompleteness Constraints: Whether : Whether an instance of a supertype an instance of a supertype mustmust also be a also be a member of at least one subtypemember of at least one subtype Total Specialization Rule: Yes (double line)Total Specialization Rule: Yes (double line) Partial Specialization Rule: No (single line)Partial Specialization Rule: No (single line)

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 6060

Figure 4-6 Examples of completeness constraints

a) Total specialization rule

A patient must be either an outpatient or a resident patient

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 6161

b) Partial specialization rule

A vehicle could be a car, a truck, or neither

Figure 4-6 Examples of completeness constraints (cont.)

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 6262

Constraints in Supertype/ Constraints in Supertype/ Disjointness constraintDisjointness constraint

Disjointness ConstraintsDisjointness Constraints: : Whether an instance of a supertype may Whether an instance of a supertype may simultaneouslysimultaneously be a member of two (or be a member of two (or more) subtypesmore) subtypes Disjoint Rule: An instance of the supertype Disjoint Rule: An instance of the supertype

can be only ONE of the subtypescan be only ONE of the subtypes Overlap Rule: An instance of the supertype Overlap Rule: An instance of the supertype

could be more than one of the subtypescould be more than one of the subtypes

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 6363

a) Disjoint rule

Figure 4-7 Examples of disjointness constraints

A patient can either be outpatient or resident, but not both

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 6464

b) Overlap rule

A part may be both purchased and manufactured

Figure 4-7 Examples of disjointness constraints (cont.)

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 6565

Constraints in Supertype/ Constraints in Supertype/ Subtype DiscriminatorsSubtype Discriminators

Subtype DiscriminatorSubtype Discriminator: An attribute : An attribute of the supertype whose values determine of the supertype whose values determine the target subtype(s)the target subtype(s) DisjointDisjoint – a – a simplesimple attribute with alternative attribute with alternative

values to indicate the possible subtypesvalues to indicate the possible subtypes OverlappingOverlapping – a – a compositecomposite attribute whose attribute whose

subparts pertain to different subtypes. Each subparts pertain to different subtypes. Each subpart contains a boolean value to indicate subpart contains a boolean value to indicate whether or not the instance belongs to the whether or not the instance belongs to the associated subtypeassociated subtype

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 6666

Figure 4-8 Introducing a subtype discriminator (disjoint rule)

A simple attribute with different possible values indicating the subtype

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 6767

Figure 4-9 Subtype discriminator (overlap rule)

A composite attribute with sub-attributes indicating “yes” or “no” to determine whether it is of each subtype

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 6868

Figure 4-10 Example of supertype/subtype hierarchy

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 6969

Entity ClustersEntity Clusters

EER diagrams are difficult to read when EER diagrams are difficult to read when there are too many entities and there are too many entities and relationshipsrelationships

Solution: Group entities and relationships Solution: Group entities and relationships into into entity clustersentity clusters

Entity clusterEntity cluster: Set of one or more entity : Set of one or more entity types and associated relationships types and associated relationships grouped into a single abstract entity typegrouped into a single abstract entity type

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 7070

Figure 4-13a Possible entity clusters for Pine Valley Furniture in Microsoft Visio

Related groups of entities could become clusters

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 7171

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 7272

Chapter 3 © 2009 Pearson Education, Inc.  Publishing as Prentice Hall© 2009 Pearson Education, Inc.  Publishing as Prentice Hall 7373

All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, electronic,

mechanical, photocopying, recording, or otherwise, without the prior written permission of the publisher. Printed in the United States of America.

Copyright © 2009 Pearson Education, Inc.  Publishing as Prentice Copyright © 2009 Pearson Education, Inc.  Publishing as Prentice HallHall