RelationalDatabase1

Thursday, July 13, 2006

08 - Methodology Conceptual Database Design


Objectives

  • Purpose of design methodology
  • Database design has 3 main phases: conceptual, logical, and physical design
  • How to decompose the scope of the design into specific users' views of the enterprise.
  • How to use ER modeling to build a local conceptual data model based on information given in a view of the enterprise
  • How to validate resultant conceptual model to ensure it is a true and accurate representation of a view of the enterprise
  • How to document the process of conceptual database design

Design Methodology

  • Structured approach that uses procedures, techniques, tools, and documentation aids to support and facilitate the process of design

  • Database design methodology has 3 main phases
    • Conceptual database design
    • Logical database design
    • Physical database design

Conceptual

  • Process of constructing a model of information used in an enterprise, independent of all physical considerations.

Logical

  • Process of constructing a model of information used in an enterprise based on a specific data model (e.g. relational), but independent of a particular DBMS and other physical considerations.

Physical

  • Process of producing a description of the implementation of the database on secondary storage; it describes the base relations, file organizations, and indexes

  • Design used to achieve efficicient access to the data, and any associated integrity constraints and security measures

  • Where the database is physicaly "built"

Critical Sucess Factors in DB 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.

  • Use a Database Design Language (DBDL) to represent additional data semantics.

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

  • Be willing to repeat steps.

Conceptual Design


Step 1: Build a local conceptual data model for each user view

  1. Identify entity types
    - Identify the main entity types that are required by the view

  2. Identify relationship types
    -Identify the important relationships that exist between the entity types that have been identified

  3. identify and associate attributes with entity or relationship types
    -Identify and associate attributes with the appropriate entity or relationship types and document the details of each domain

  4. Determine attribute domains
    -Determine domains for the attributes with the appropriate entity or relationship types and document the details of each attribute

  5. Determine candidate and primary key attributes
    -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.

  6. Consider use of enhanced modelling concepts (optional step)
    -Consider the use of enhanced modeling concepts, such as specialization/generalization, aggregation, and composition

  7. Check model for redundancy
    -Check for the presence of any redundancy in the model

  8. Validate local conceptual model against user transactions
    -Ensure that the local conceptual model supports the transactions required by the view

  9. Review local conceptual data model with user
    -Review the local conceptual data model with the user to ensure that the model is a "true" representation fo the user's view of the enterprise

Logical Database Design


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

  1. Remove features not compatible with the relational model (optional step)

  2. Derive relations for local logical data model

  3. Validate relations using normalization

  4. Validate relations against user transactions

  5. Define integrity constraints

  6. Review local logical data model with user

Step 3: Build and validate global logical data model

  1. Merge local logical data models into global model

  2. Validate global logical data model

  3. Check for future growth

  4. Review global logical data model with users

Physical Database Design


Step 4: Translate global logical data mdel for target DBMS

  1. Design Base relations

  2. Design representation of derived data

  3. Design Enterprise constraints

Step 5: Design physical representation

  1. Analyze transactions

  2. Choose file organization

  3. Choose indexes

  4. Estimate disk space requirements

Step 6: Design user views

Step 7: Design security mechanisms

Step 8: Consider the introduction of contorolled redundancy

Step 9: Monitor and tune the operational system


Example first cut conceptual ERD


0 Comments:

Post a Comment

<< Home