Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei...

33
Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microele ctronics Northwestern Polytechnical Unive rsity Database Systems

Transcript of Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei...

Page 1: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

Part4 Methodology of Database DesignChapter 07- Overview of Conceptual Database Design

Lu Wei

College of Software and Microelectronics

Northwestern Polytechnical University

Database Systems

Page 2: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

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

Page 3: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

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

Page 4: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

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.

Page 5: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

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

Page 6: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

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.

Page 7: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

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.

Page 8: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

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.

Page 9: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

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.

Page 10: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

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

Page 11: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

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

Page 12: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

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

Page 13: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

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

Page 14: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

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

Page 15: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

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

Page 16: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

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

Page 17: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

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.

Page 18: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

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

Page 19: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

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.

Page 20: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

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

Page 21: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

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.

Page 22: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

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)

Page 23: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

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.

Page 24: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

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

Page 25: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

Lu Wei 25

Conceptual Database Design Methodology

• Step 1.2 Identify relationship types– Results in this step

• ER model diagrams• Documentation of relationship types

Page 26: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

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

Page 27: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

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

Page 28: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

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

Page 29: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

Lu Wei 29

Conceptual Database Design Methodology

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

Page 30: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

Lu Wei 30

Conceptual Database Design Methodology

• 1.7 Check model for redundancy

Page 31: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

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

Page 32: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

Lu Wei 32

Conceptual Database Design Methodology

• 1.9 Review local conceptual data model with user

Page 33: Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.

Lu Wei 33

Summary