E-R Modeling (7/09) (1st draft)

Download Report

Transcript E-R Modeling (7/09) (1st draft)

Entities
• Things about which you need to store data.
One entity for each different thing.
–
–
–
–
At least two attributes
At least two occurrences
Not a property of some other entity
Not a derived quantity (like a report)
Finding Entities
• List things described in a business narrative
• List things that are read from or written to
in the process analysis of the system
• Describe a record (occurrence) by listing
the attributes it has
• Be certain you need to store data
Relationships
• Relationships connect a record in one entity
to one or more records in another entity (A
recursive relationship connects a record to
records in the same entity)
• Relationships connect records (occurrences)
not entities
• Relationships do not change anything (they
are not processes)
Determining Relationships
• Describe connections:
– has a, orders a, contains a, etc.
– on a common report page, line, etc.
• Connect records, not attributes
• Can be described by a passive phrase
• Do not describe a change in values
Cardinality
• How many records could be connected to
this one?
• Two sided test.
1:N
M:N
• Associations
• Associations with data
• Associations that occur more than once
ATTRIBUTE:
A description or property of a given entity
type.
• Must depend on the entity key alone
• Must contain information that we explicitly
need
• Must have the same data type for all entity
occurrences
TYPES OF ATTRIBUTES:
• Composite or Simple (atomic)
• Single valued or Multivalued (repeating
group)
Relational database models cannot represent
multivalued attributes but objects and structured
databases can. Repeating groups (sets of related
multivalued attributes) usually represent entities
or subclasses.
Optionality
(Referential Integrity)
Records in a table that have a relationship
with another table may be restricted by
optionality requirements.
• Relationship Optional
• Relationship Mandatory (referential
integrity enforced)
Optionality
A constraint should be mandatory only if the
relationship must be known whenever a
record is first entered. Most relationships
are optional.
Maintaining Integrity
If a parent record is deleted then an
optionality relationships can be maintained
in several ways
• Cascade delete
• Cascade update
• Cascade null
Typical Patterns
•
•
•
•
•
Simple “Ownership”
Product Order
Appointment
Journal Entry
Component Parts