Conceptual Database Design

Slides:



Advertisements
Similar presentations
Database Design: ER Modelling (Continued)
Advertisements

Logical Database Design
Conceptual Design (CB 16) CPSC 356 Database Ellen Walker Hiram College (Includes figures from Database Systems by Connolly & Begg, © Addison Wesley 2002)
Chapter 6 Methodology Logical Database Design for the Relational Model Transparencies © Pearson Education Limited 1995, 2005.
Chapter 6 Methodology Conceptual Databases Design Transparencies © Pearson Education Limited 1995, 2005.
Lecture Eleven Entity-Relationship Modelling
1 Methodology : Conceptual Databases Design © Pearson Education Limited 1995, 2005.
Methodology Logical Database Design for the Relational Model
Data Modeling ISYS 464. Database Design Process Conceptual database design: –The process of creating a data model independent of implementation details.
Lecture Fourteen Methodology - Conceptual Database Design
Chapter 4 ENTITY-RELATIONSHIP MODELLING.
Methodology Conceptual Database Design
Modeling & Designing the Database
Chapter 4 Entity-Relationship modeling Transparencies © Pearson Education Limited 1995, 2005.
© Pearson Education Limited, Chapter 12 Physical Database Design – Step 3 (Translate Logical Design) Transparencies.
LOGICAL DATABASE DESIGN
Chapter 14 & 15 Conceptual & Logical Database Design Methodology
CSC271 Database Systems Lecture # 21. Summary: Previous Lecture  Phases of database SDLC  Prototyping (optional)  Implementation  Data conversion.
Chapter 12 Entity-Relationship Modeling Pearson Education © 2009.
Overview of the Database Development Process
Chapter 16 Methodology - Conceptual Database Design.
Methodology - Conceptual Database Design Transparencies
Software School of Hunan University Database Systems Design Part III Section 5 Design Methodology.
Methodology Conceptual Databases Design
9/14/2012ISC329 Isabelle Bichindaritz1 Database System Life Cycle.
CSCI 3140 Module 2 – Conceptual Database Design Theodore Chiasson Dalhousie University.
1 Chapter 15 Methodology Conceptual Databases Design Transparencies Last Updated: April 2011 By M. Arief
9/10/2012ISC 329 Isabelle Bichindaritz1 Entity Relationship (E-R) Modeling.
Physical Database Design Chapter 6. Physical Design and implementation 1.Translate global logical data model for target DBMS  1.1Design base relations.
9/19/2012ISC329 Isabelle Bichindaritz1 Conceptual Data Modeling.
Physical Database Design
CSC271 Database Systems Lecture # 29. Summary: Previous Lecture  The normalization process  1NF, 2NF, 3NF  Inference rules for FDs  BCNF.
Methodology - Conceptual Database Design. 2 Design Methodology u Structured approach that uses procedures, techniques, tools, and documentation aids to.
Chapter 9 Methodology - Logical Database Design Chapter 16 in Textbook.
CSCI 3140 Module 3 – Logical Database Design for the Relational Model Theodore Chiasson Dalhousie University.
1/26/2004TCSS545A Isabelle Bichindaritz1 Database Management Systems Design Methodology.
Methodology: Conceptual Databases Design
DATABASE MGMT SYSTEM (BCS 1423) Chapter 5: Methodology – Conceptual Database Design.
Team Dosen UMN Database Design Connolly Book Chapter
© Pearson Education Limited, Chapter 9 Logical database design – Step 1 Transparencies.
Conceptual Database Design
Chapters 15 &16 Conceptual and Logical Database Design Methodology.
Entity-Relationship Modeling Based on Chapter 12.
Chapter 8 Methodology - Conceptual Database Design Chapter 15 in Textbook.
Methodology - Conceptual Database Design
Chapter 12 Entity-Relationship Modeling Pearson Education © 2009.
Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.
1 Entity-Relationship Model © Pearson Education Limited 1995, 2005.
1 Chapter 17 Methodology - Local Logical Database Design.
Conceptual Databases Design Step 1 © Pearson Education Limited 1995, 2005.
Modelling Methodologies Chapter 16, 17, 18. Modeling Methodologies2 Database Design Physical DB design Logical DB design Conceptual DB design Hardware.
1 Database Systems Entity Relationship (E-R) Modeling.
Chapter 8 Entity-Relationship Modeling Pearson Education © 2009.
Methodology - Logical Database Design. 2 Step 2 Build and Validate Local Logical Data Model To build a local logical data model from a local conceptual.
ENTITY-RELATIONSHIP MODELLING. Objectives: How to use Entity–Relationship (ER) modelling in database design. Basic concepts associated with ER model.
April 20022/CS/3X1 Database Design Design method John Wordsworth Department of Computer Science The University of Reading Room.
Methodology Conceptual Databases Design
Chapter # 3 Data Modeling Using the Entity-Relationship (ER) Model
Methodology Logical Database Design for the Relational Model
COP Introduction to Database Structures
Conceptual Design & ERD Modelling
CS 3630 Database Design and Implementation
Methodology Conceptual Database Design
Chapter Design Methodology Pearson Education © 2009.
Entity-Relationship Modeling
Methodology – Physical Database Design for Relational Databases
Entity-Relationship Modeling
Logical Database Design
Methodology Conceptual Databases Design
Presentation transcript:

Conceptual Database Design 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 Conceptual DB 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. Conceptual DB Design

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. Conceptual DB 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 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. Conceptual DB Design

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. Conceptual DB Design

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 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 Conceptual DB Design

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. Conceptual DB Design

Data Dictionary for Staff View Showing Description 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 PropertyForRent General 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 Conceptual DB Design

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. Conceptual DB Design

ERD for Staff View of DreamHome supervisor supervise (0,*) STAFF register BUSINESS OWNER supervisee (0,*) (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 Entity Name Multiplicity Relationship Entity Name Multiplicity Staff 0..1 Manages PropertyForRent 0..100 0..1 Supervises Staff 0..10 PropertyForRent 1..1 AssociatedWith Lease 0..* Conceptual DB Design

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. Conceptual DB Design

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. Conceptual DB Design

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 Conceptual DB Design

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. Conceptual DB Design

ERD with PK supervise STAFF register BUSINESS OWNER manage BOwn StaffNo OwnerNo supervisor supervise (0,*) STAFF register BUSINESS OWNER supervisee (0,*) (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 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 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. Conceptual DB Design

Using transaction’s Pathways StaffNo (b) SUPERVISOR STAFF register (0,*) (a) (0,100) (e) (d) manage OwnerNo PropertyNo VDate Comment (c,g) (0,1) (1:1) (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) (j) (1:1) LEASE PREFERENCE LeaseNo (1:1) (k)

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. Conceptual DB Design