Upload
laureen-watts
View
240
Download
2
Tags:
Embed Size (px)
Citation preview
An Introduction to Data ModellingEntity Relationship ModellingAvin Mathew
Nov 2010
2
WHY do we model data?
3
WHAT is a data model?
4
An album has an a creating artist, a title, recommended price, genre and album art that is displayed to a user. A user can subsequently purchase the album in various quantities and at different unit prices depending on specials on offer. A user’s purchase order will contain the date of purchase, their contact details (address, telephone and/or email) and the total price.
Album
PK AlbumId
FK1 GenreIdFK2 ArtistId Title Price AlbumArtUrl
Artist
PK ArtistId
Name
OrderDetail
PK OrderDetailId
FK1 OrderIdFK2 AlbumId Quantity UnitPrice
Order
PK OrderId
Date Username Name Address Phone Email Total
Genre
PK GenreId
Name Description
6
WHERE do we use data models?
7
WHEN would a Business Analyst use data models?
Data Model Levels
Conceptual
Logical
Physical
How do we data model?
• People
• Business, users, developers, DBAs
• Inputs
• Business & functional requirements, business processes, databases, documents, UI screens
• Tools
• Drawing packages (e.g. PowerPoint, Visio), data modelling packages (e.g. ERWin, System Architect)
Entity Relationship Model
• Most common data modelling technique
• Used in most business information system development
• Tools that engineer a database from a data model
ER Process
1. Identify entities
2. Identify attributes
3. Identify relationships
4. Apply naming conventions
5. Assign keys
6. Normalise
12
Identify entities
• An object that exists and is distinguishable from other objects
• Examples: person, company, event, place
• Should be a singular concept
EntityName Person Chair
EntityName
13
Identify attributes
• Properties of an entity
Person Chair
First NameLast NameEmail Address
ColourHeightPrice
AttributeName
AttributeName
14
• One to many
Identify relationships
• An association between two entities
• Cardinality and optionality
• One to one
• Many to many
• Roles
Person Chair Person Table
PersonPhone
NumberPerson
Person Phone
Number
Phone Number
Person Chairsits on
15
Apply naming conventions
Examples:
• Singular vs plural names for entities
• Consistent names: date, summary, description, name
• Reference Types all ending with Type
• Standardise suffixes: Id, Key, Code, Flag
16
Assign keys
Person
PK Tax File Number
First Name Middle Names Last NameFK1 Address Id
Address
PK Address Id
Address Line 1 Address Line 2 Suburb State Post Code
PrimaryKey
ForeignKey
SurrogateKey
PrimaryKey
NaturalKey
17
Normalise
• Every non-key attribute in every table is directly dependent on the key
• Results in:
• Elimination of redundancies
• Fewer anomalies
• Most information systems are in third-normal form
18
Scenario 1
19
Scenario 1 – A Possible Data Model
Incident
Incident DateSummaryDescriptionDangerous Event Flag
Location
Location IdName
Person
Person IdFirst NameLast Name
Electrical Incident
Motor Vehicle Incident
Environmental Incident
Injury/Illness Incident
DescriptionClassification
Bodily Location Type
Nature Type
Bodily Location
Nature
Investigation
Person Type
Investigator
Person Injured/Ill
Supervising Officer
Reported By
20
Scenario 2
21
Scenario 2 – A Possible Data Model
Asset
Serial Number
SegmentAsset Type
Model
Product FamilyRevision Number
Manufacturer
Installation History
Install DateUninstall Date
Agent
Attribute
Value
Unit TypeAttribute Type
Data Model Patterns
David Hay – Data model patterns: Conventions of thought
Martin Fowler – Analysis patterns: Reusable object models
Len Silverston – The data model resource book: A library of universal data models for all enterprises
An Introduction to Data ModellingEntity Relationship ModellingAvin Mathew
Nov 2010