Chapter 8
This presentation is the property of its rightful owner.
Sponsored Links
1 / 23

Chapter 8 PowerPoint PPT Presentation


  • 44 Views
  • Uploaded on
  • Presentation posted in: General

Chapter 8. Methodology - Conceptual Database Design. Chapter 15 in Textbook. Database Design. Hardware independent Software independent. Conceptual DB design. Hardware independent Software dependent. Logical DB design. Hardware dependent Software dependent. Physical DB design.

Download Presentation

Chapter 8

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Chapter 8 3685865

Chapter 8

Methodology -

Conceptual Database Design

Chapter 15 in Textbook


Database design

Database Design

Hardware independent

Software independent

Conceptual

DB design

Hardware independent

Software dependent

Logical

DB design

Hardware dependent

Software dependent

Physical

DB design


Success factors in database design

Success Factors in Database Design

  • Work interactively with users as much as possible.

  • Follow a structured methodology throughout the data modelling process.

  • Employ a data-driven approach.

  • Incorporate structural and integrity considerations into the data models.

  • Combine conceptualization, normalization, and transaction validation techniques into the data modelling methodology.

  • Use diagrams to represent as much of the data models as possible.

  • Build a data dictionary to supplement the data model diagrams.

  • Be willing to repeat steps.


Design methodology overview

Design Methodology Overview

Step 1 Build local conceptual data model for each user view.

Step 2 Build and validate local logical data model for each view.

Step 3 Build and validate global logical data model.

Step 4 Translate global logical data model for target DBMS.

Step 5 Design physical representation.

Step 6 Design user views.

Step 7 Design security mechanisms.

Step 8 Consider the introduction of controlled redundancy.

Step 9 Monitor and tune the operational system.


Methodology overview conceptual database design

Methodology Overview – Conceptual Database Design

  • Step 1 Build local conceptual data model for each user view

    • Step 1.1 Identify entity types.

    • Step 1.2 Identify relationship types.

    • Step 1.3 Identify and associate attributes with entity or relationship types.

    • Step 1.4 Determine attribute domains.

    • Step 1.5 Determine candidate and primary key attributes.

    • Step 1.6 Consider use of enhanced modeling concepts (optional step).

    • Step 1.7 Check model for redundancy.

    • Step 1.8 Validate local conceptual model against user transactions.

    • Step 1.9 Review local conceptual data model with user.


Methodology overview logical database design for relational model

Methodology Overview – Logical Database Design for Relational Model

  • Step 2 Build and validate local logical data model for each view

    • Step 2.1 Remove features not compatible with the relational model.

    • Step 2.2 Derive relations for local logical data model.

    • Step 2.3 Validate relations using normalization.

    • Step 2.4 Validate relations against user transactions.

    • Step 2.5 Define integrity constraints.

    • Step 2.6 Review local logical data model with user.


Methodology overview logical database design for relational model1

Methodology Overview – Logical Database Design for Relational Model

  • Step 3 Build and validate global logical data model

    • Step 3.1 Merge local logical data models into global model.

    • Step 3.2 Validate global logical data model.

    • Step 3.3 Check for future growth.

    • Step 3.4 Review global logical data model with users.


Methodology overview physical database design for relational model

Methodology Overview – Physical Database Design for Relational Model

  • Step 4 Translate global logical data model for target DBMS

    • Step 4.1 Design base relations.

    • Step 4.2 Design representation of derived data.

    • Step 4.3 Design enterprise constraints.

  • Step 5 Design physical representation

    • Step 5.1 Analyze transactions.

    • Step 5.2 Choose file organization.

    • Step 5.3 Choose indexes.

    • Step 5.4 Estimate disk space requirements.


Methodology overview physical database design for relational model1

Methodology Overview – Physical Database Design for Relational Model

Step 6 Design user views

Step 7 Design security mechanisms

Step 8 Consider the introduction of controlled redundancy

Step 9 Monitor and tune the operational system


Step 1 build local conceptual data model for each view

Step 1 Build Local Conceptual Data Model for Each View

Objective: To build a local conceptual data model of an enterprise for each specific view.

Step 1.1 Identify entity types

Objective: To identify the main entity types that are required by the view;

Document entity types in data dictionary.


Data dictionary for staff view showing description of entities

Data Dictionary for Staff View ShowingDescription of Entities

Entity Name Description Aliases Occurrence

Staff General term describing all staff Employee Each member of staff works at one

employed by DearmHome particular branch

PropertyForRentGeneral term describing all Property Each property has a single owner &

property for rent is available at one specific branch,

where the property is managed by 1

member of staff. A property is viewed

by many clients and rented by a single

client at a time


Step 1 build local conceptual data model for each view1

Step 1 Build Local Conceptual Data Model for Each View

Step 1.2 Identify relationship types

Objective: To identify the important relationships that exist between the entity types that have been identified.

  • Check for binary, complex, recursive relationship types.

  • Check for explicit, and implicit relationship types.

  • Use ER diagrams.

  • Determine multiplicity of relationships.

  • Check for fan and chasm traps.

  • Check that each entity participate in at least one relationship.

  • Document relationship type.


Erd for staff view of dreamhome

ERD for Staff View of DreamHome

supervisor

supervise

(0,*)

STAFF

register

BUSINESS

OWNER

(0,*)

supervisee

(0,*)

(1,*)

(0,100)

manage

BOwn

(0,1)

(1:1)

(0,1)

PROPERTY

views

CLIENT

(0,*)

(0,*)

POwn

(0,1)

(0,*)

(0,*)

(1:1)

associate

hold

state

(1,*)

(1:1)

(1:1)

PRIVATE

OWNER

LEASE

PREFERENCE

(1:1)


Data dictionary for staff view showing description of relationships

Data Dictionary for Staff View Showing Description of Relationships

Entity Name Multiplicity Relationship Entity Name Multiplicity

Staff 0..1 Manages PropertyForRent 0..100

0..1 SupervisesStaff 0..10

PropertyForRent 1..1 AssociatedWith Lease 0..*


Step 1 build local conceptual data model for each view2

Step 1 Build Local Conceptual Data Model for Each View

Step 1.3 Identify and associate attributes with entity or relationship types

Objective: To identify and associate attributes with the appropriate entity or relationship types and document the details of each attribute.

For entity list what information are we required to hold on?

  • Check simple & composite attributes.

  • Check single & multi-valued attributes.

  • Derived attributes.

  • Check for shared attributes.

  • Document the attribute.


Step 1 build local conceptual data model for each view3

Step 1 Build Local Conceptual Data Model for Each View

Step 1.4 Determine attribute domains

Objective: To determine domains for the attributes in the local conceptual model and document the details of each domain.

  • Data type.

  • Size.

  • Allowable value.

  • Default value.


Data dictionary for staff view showing description of attributes

Data Dictionary for Staff View Showing Description of Attributes

Entity Attribute Description Data Length Nulls Multi- Default Range PK

Name Type Valued Value

Staff StaffNo Uniquely identifies a staff member varchar 5 No No Y

name

FName First name of Staff varchar 15 No No

Lname Last name of Staff varchar 15 No No

position Job title of member of staff varchar 10 No No

sex Gender of member of staff character 1 Yes No M F, M

DOB Date of Birth of member of staff Date Yes No 1960-1990


Step 1 build local conceptual data model for each view4

Step 1 Build Local Conceptual Data Model for Each View

Step 1.5 Determine candidate and primary key attributes

Objective: To identify the candidate key(s) for each entity and if there is more than one candidate key, to choose one to be the primary key.

CK must be:

  • minimal set of attributes.

  • least likely to have its value changed.

  • fewest size or smallest maximum number.

  • easiest to use from the user’s point of view.

    Step 1.6 Consider use of enhanced modeling concepts

    Objective: To consider the use of enhanced modeling concepts, such as specialization / generalization, aggregation, and composition.


Erd with pk

ERD with PK

StaffNo

OwnerNo

supervisor

supervise

(0,*)

STAFF

register

BUSINESS

OWNER

(0,*)

supervisee

(0,*)

(1,*)

(0,100)

manage

PropertyNo

VDate

Comment

BOwn

(0,1)

(1:1)

(0,1)

PROPERTY

views

CLIENT

ClientNo

(0,*)

(0,*)

POwn

(0,1)

(0,*)

(0,*)

(1:1)

associate

hold

state

OwnerNo

(1,*)

(1:1)

(1:1)

PRIVATE

OWNER

LEASE

PREFERENCE

LeaseNo

(1:1)


Eerd for staff view of dreamhome

EERD for Staff View of DreamHome

StaffNo

SUPERVISOR

STAFF

register

(0,*)

(0,100)

manage

OwnerNo

PropertyNo

VDate

Comment

(0,1)

(1:1)

(1,*)

(1,1)

PROPERTY

BOwn

views

CLIENT

OWNER

ClientNo

(0,*)

(0,*)

(0,*)

(0,*)

(1:1)

associate

hold

d

state

PRIVATE

OWNER

BUSINESS

OWNER

(1:1)

(1:1)

LEASE

PREFERENCE

LeaseNo

(1:1)


Step 1 build local conceptual data model for each view5

Step 1 Build Local Conceptual Data Model for Each View

Step 1.7 Check model for redundancy

Objective: To check for the presence of any redundancy in the model.

1. Re-examine 1:1 relationships.

2. Remove redundant relationships.

Step 1.8 Validate local conceptual model against user transactions

Objective: To ensure that the local conceptual model supports the transactions required by the view.

  • Describe the transaction.

  • Use transaction pathways: diagrammatically represent the pathway taken by each transaction on the ERD.


Using transaction s pathways

Using transaction’s Pathways

StaffNo

(b)

SUPERVISOR

STAFF

register

(0,*)

(a)

(0,100)

(e)

(d)

manage

OwnerNo

PropertyNo

VDate

Comment

(0,1)

(1:1)

(c,g)

(1,*)

(1,1)

PROPERTY

BOwn

views

CLIENT

OWNER

ClientNo

(0,*)

(0,*)

(0,*)

(h,i)

(0,*)

(1:1)

associate

hold

d

state

(m)

(l)

PRIVATE

OWNER

BUSINESS

OWNER

(1:1)

(1:1)

(j)

LEASE

PREFERENCE

LeaseNo

(1:1)

(k)


Step 1 build local conceptual data model for each view6

Step 1 Build Local Conceptual Data Model for Each View

Step1.9 Review local conceptual data model with user

Objective: To review the local conceptual data model with the user to ensure that the model is a ‘true’ representation of the user’s view of the enterprise.


  • Login