chapter 3 © 2005 by prentice hall 1 objectives definition of terms definition of terms importance...
Post on 22-Dec-2015
217 Views
Preview:
TRANSCRIPT
11Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
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
22Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
SDLC Revisited – Data Modeling is SDLC Revisited – Data Modeling is an Analysis Activity an Analysis Activity
Purpose – thorough analysisDeliverable – functional system specifications
Database activity – conceptual data modeling
Project Identification and Selection
Project Initiation and Planning
Analysis
Physical Design
Implementation
Maintenance
Logical Design
Analysis
Project Initiation and Planning
33Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
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 behaviorControl/influence business behavior Expressed in terms familiar to end Expressed in terms familiar to end
usersusers Automated through DBMS softwareAutomated through DBMS software
44Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
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
55Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
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 Composed of words from an approved
listlist RepeatableRepeatable
66Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
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 Iteratively created and refinedIteratively created and refined Achieved by consensusAchieved by consensus
77Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
E-R Model ConstructsE-R Model Constructs Entity instance - person, place, object, event, Entity instance - person, place, object, event,
concept (often corresponds to a row in a table)concept (often corresponds to a row in a table) Entity Type – collection of entities (often Entity Type – collection of entities (often
corresponds to a table)corresponds to a table) Attribute - property or characteristic of an Attribute - property or characteristic of an
entity type (often corresponds to a field in a entity type (often corresponds to a field in a table)table)
Relationship instance – link between entities Relationship instance – link between entities (corresponds to primary key-foreign key (corresponds to primary key-foreign key equivalencies in related tables)equivalencies in related tables)
Relationship type – category of Relationship type – category of relationship…link between entity typesrelationship…link between entity types
88Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
Sample E-R Diagram (Figure 3-1)
99Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
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
1010Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
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 (e.g. An output of the database system (e.g.
a report)a report)
1111Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
Inappropriate entities
System userSystem user System outputSystem output
Appropriate entities
Figure 3-4
1212Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
AttributesAttributes
Attribute - property or characteristic Attribute - property or characteristic of an entity typeof an entity 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
1313Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
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 Key versus Composite KeySimple Key versus Composite Key Candidate Key – an attribute that Candidate Key – an attribute that
could be a key…satisfies the could be a key…satisfies the requirements for being a keyrequirements for being a key
1414Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
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
1515Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
Figure 3-7 – A composite attribute
An attribute broken into component parts
1616Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
Figure 3-9a – Simple key attribute
The key is underlined
1717Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
Figure 3-9b – Composite key attribute
The key is composed of two subparts
1818Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
Figure 3-8 – Entity with a multivalued attribute (Skill) and derived attribute (Years_Employed)
Derived from date employed and current date
What’s wrong with this?
Multivalued: an employee can have more than one skill
1919Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
Figure 3-19 – An attribute that is both multivalued and composite
This is an example of time-stamping
2020Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
More on RelationshipsMore on Relationships Relationship Types vs. Relationship InstancesRelationship Types vs. Relationship Instances
The relationship type is modeled as the diamond The relationship type is modeled as the diamond and lines between entity types…the instance is and lines between entity types…the instance is between specific entity instancesbetween specific entity instances
Relationships can have attributesRelationships can have attributes These describe features pertaining to the association between These describe features pertaining to the association between
the entities in the relationshipthe 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
2121Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
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
2222Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
Degree of relationships – from Figure 3-2
One entity related to another of the same entity type
Entities of two different types related to each other Entities of three
different types related to each other
2323Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
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 the have many related entities, but an entity on the other side will have a maximum of one related other side will have a maximum of one related entityentity
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
2424Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
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
2525Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
2626Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
2727Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
Note: a relationship can have attributes of its own
2828Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
Basic relationship with only maximum cardinalities showing – Figure 3-16a
Mandatory minimum cardinalities – Figure 3-17a
2929Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
Figure 3-17cOptional cardinalities with unary degree, one-to-one relationship
3030Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
3131Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
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
3232Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
Figure 3-12c -- A ternary relationship with attributes
3333Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
Representing a bill-of -materials structure
Figure 3-13a – A unary relationship with an attribute. This has a many-to-many relationship
3434Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
Entities can be related to one another in more than one way
3535Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
Here,max cardinality constraint is 4
3636Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
Multivalued attributes can be represented as relationships
3737Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
Strong vs. Weak Entities, andStrong vs. Weak Entities, andIdentifying RelationshipsIdentifying Relationships
Strong entities Strong entities exist independently of other types of entitiesexist independently of other types of entities has its own unique identifierhas its own unique identifier represented with single-line rectanglerepresented with single-line rectangle
Weak entityWeak entity dependent on a strong entity…cannot exist on its owndependent on a strong entity…cannot exist on its own does not have a unique identifierdoes not have a unique identifier represented with double-line rectanglerepresented with double-line rectangle
Identifying relationshipIdentifying relationship links strong entities to weak entitieslinks strong entities to weak entities represented with double line diamondrepresented with double line diamond
3838Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
Strong entity Weak entityIdentifying relationship
3939Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
Associative EntitiesAssociative Entities It’s an It’s an entity entity – it has attributes– it has attributes
AND it’s a AND it’s a relationship relationship – it links entities together– it 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 associative entity could have meaning independent of
the other entitiesthe other 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
4040Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
Figure 3-11b – An associative entity (CERTIFICATE)
Associative entity involves a rectangle with a diamond inside.Note that the many-to-many cardinality symbols face toward the associative entity and not toward the other entities
4141Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
Figure 3-13c – An associative entity – bill of materials structure
This could just be a relationship with attributes…it’s a judgment call
4242Chapter 3 © 2005 by Prentice Hall© 2005 by Prentice Hall
Figure 3-18 – Ternary relationship as an associative entity
top related