Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei...
-
Upload
verity-berenice-stokes -
Category
Documents
-
view
215 -
download
1
Transcript of Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei...
Part4 Methodology of Database DesignChapter 07- Overview of Conceptual Database Design
Lu Wei
College of Software and Microelectronics
Northwestern Polytechnical University
Database Systems
Lu Wei 2
Outline
• What is a Design Methodology• Conceptual, Logical, and Physical Database
Design• Overview of the Database Design Methodology• Conceptual Database Design Methodology
Lu Wei 3
Outline
• What is a Design Methodology• Conceptual, Logical, and Physical Database
Design• Overview of the Database Design Methodology• Conceptual Database Design Methodology
Lu Wei 4
What is a Design Methodology
• Design Methodology– A structured approach that uses procedures,
techniques, tools, and documentation aids to support and facilitate the process of design.
Lu Wei 5
Outline
• What is a Design Methodology• Conceptual, Logical, and Physical Database
Design• Overview of the Database Design Methodology• Conceptual Database Design Methodology
Lu Wei 6
Conceptual, Logical, and Physical Database Design
• In presenting this database design methodology, the design process is divided into three main phases: conceptual, logical, and physical database design.
Lu Wei 7
Conceptual, Logical, and Physical Database Design
• Conceptual database design– The process of constructing a model of the
information used in an enterprise, independent of all physical considerations.
Lu Wei 8
Conceptual, Logical, and Physical Database Design
• Logical database design– The process of constructing a model of the
information used in an enterprise based on a specific data model, but independent of a particular DBMS and other physical considerations.
• The logical database design phase maps the conceptual model on to a logical model, which is influenced by the data model for the target database.
Lu Wei 9
Conceptual, Logical, and Physical Database Design
• Physical database design– The process of producing a description of the
implementation of the database on secondary storage; it describes the base relations, file organizations, and indexes used to achieve efficient access to the data, and any associated integrity constraints and security measures.
• There is feedback between physical and logical design, because decisions taken during physical design for improving performance may affect the logical data model.
Lu Wei 10
Outline
• What is a Design Methodology• Conceptual, Logical, and Physical Database
Design• Overview of the Database Design Methodology• Conceptual Database Design Methodology
Lu Wei 11
Overview of the Database Design Methodology
• Conceptual database design– Step 1 Build local conceptual data model for each 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
Lu Wei 12
Overview of the Database Design Methodology
• Logical database design for the relation model– Step 2 Build and validate local logical data model for
each view• Step 2.1 Remove features not compatible with the relational model
(optional step)
• 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
Lu Wei 13
Overview of the Database Design Methodology
• Logical database design for the relation 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
Lu Wei 14
Overview of the Database Design Methodology
• Physical database design for relational database– 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
Lu Wei 15
Overview of the Database Design Methodology
• Physical database design for relational database– Step 5 Design physical representation
• Step 5.1 Analyze transactions
• Step 5.2 Choose file organizations
• Step 5.3 Choose indexes
• Step 5.4 Estimate disk space requirements
Lu Wei 16
Overview of the Database Design Methodology
• Physical database design for relational database– Step 6 Design user views– Step 7 Design security mechanisms– Step 8 Consider the introduction of controlled redunda
ncy– Step 9 Monitor and tune the operational system
Lu Wei 17
Overview of the Database Design Methodology
• Throughout this methodology, users play a critical role in continually reviewing and validating the data model and the supporting documentation.
• Database design is an iterative process, which has a starting point and an almost endless procession of refinements.
• The methodology should act as a framework to help guide the designer through database design effectively.
Lu Wei 18
Outline
• What is a Design Methodology• Conceptual, Logical, and Physical Database
Design• Overview of the Database Design Methodology• Conceptual Database Design Methodology
Lu Wei 19
Conceptual Database Design Methodology
• 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.– Each local conceptual data model comprises:
• Entity types• Relationship types• Attributes and attribute domains• Primary keys and alternate keys• Integrity constraints.
Lu Wei 20
Conceptual Database Design Methodology
• Step 1 Build Local Conceptual Data Model for Each View– The results of step 1 comprises:
• An ER diagram• Supporting documentation
Lu Wei 21
Conceptual Database Design Methodology
• Step 1.1 Identify entity types– approaches to identify entities
• Examine the user’s requirements specification to identify nouns or noun phrases mentioned.
• Look for objects that have an existence in their own right.
– It is not always obvious whether a particular object is an entity, a relationship, or an attribute.
• For example, how would we classify marriage?
– Design is subjective and different designers may produce different, but equally valid, interpretations.
Lu Wei 22
Conceptual Database Design Methodology
• Step 1.1 Identify entity types– The activity therefore relies, to a certain extent, on ju
dgement and experience.– There may be no unique set of entity deducible from a
given requirements specification. But all the result deducibled should be at least adequate for the system required.
– Results in this step• Documentation of entity types (entity name, description, alias
es, occurrence)
Lu Wei 23
Conceptual Database Design Methodology
• Step 1.2 Identify relationship types – approaches to identify relationships
• Examine the user’s requirements specification to identify verbs or verbal expressions mentioned. Some relationships are explicit but some are implicit.
– In most instances, the relationships are binary. However, we should be careful to look out for complex relationships that may involve more than two entity types and recursive relationships that involve only one entity type.
Lu Wei 24
Conceptual Database Design Methodology
• Step 1.2 Identify relationship types– Determine the multiplicity constraints of relationship ty
pes• A model that includes multiplicity constraints more explicitly r
epresents the semantics of the relationships and results in a better representation of the enterprise.
– Check that each entity participates in at least one relationship
– Use ER diagrams
Lu Wei 25
Conceptual Database Design Methodology
• Step 1.2 Identify relationship types– Results in this step
• ER model diagrams• Documentation of relationship types
Lu Wei 26
Conceptual Database Design Methodology
• 1.3 Identify and associate attributes with entity or relationship types– Attribute types comprise:
• Simple/composite attributes• Single/multi-valued attributes• Derived attributes
– We should ensure that an attribute is associated with only one entity or relationship type.
– Results in this step• Documentation of attributes
Lu Wei 27
Conceptual Database Design Methodology
• 1.4 determine attribute domains– Results in this step
• Documentation of attribute domains• Update the data dictionary entries for attributes to record
their domain in place of the data type and length information
Lu Wei 28
Conceptual Database Design Methodology
• 1.5 determine candidate and primary key attributes– Guidelines to help choose a primary key from the
candidate keys. Choose the candidate key• with the minimal set of attributes• that is lease likely to have its values changed• with fewest characters (for textual attributes)• with smallest maximum value (for numerical attributes)• That is easiest to use from the users’ point of view
– Results in this step• Documentation of primary and alternate keys
Lu Wei 29
Conceptual Database Design Methodology
• 1.6 Consider use of enhanced modeling concepts (optional step)
Lu Wei 30
Conceptual Database Design Methodology
• 1.7 Check model for redundancy
Lu Wei 31
Conceptual Database Design Methodology
• 1.8 Validate local conceptual model against user transactions– The objective of this step is to check the model to
ensure that the model supports the transactions required by this view.
– approaches to check the model• Describing the transactions• Using transaction pathways
–
Lu Wei 32
Conceptual Database Design Methodology
• 1.9 Review local conceptual data model with user
Lu Wei 33
Summary