Database Design, Application Development, and Administration, 5 th Edition Copyright © 2011 by Michael V. Mannino All rights reserved. Chapter 2 Introduction to Database Development
Slide 2Chapter 2: Introduction to Database Development Outline Context for database development Goals of database development Phases of database development CASE tools
Slide 3Chapter 2: Introduction to Database Development Information System
Slide 4Chapter 2: Introduction to Database Development Traditional Life Cycle
Slide 5Chapter 2: Introduction to Database Development Development Alternatives Difficulties Operational system is produced late Rush to begin implementation Requirements are difficult to capture Alternative methodologies Spiral approaches Rapid application development Prototypes may reduce risk
Slide 6Chapter 2: Introduction to Database Development Graphical Models Explicit or implicit Data model Process model Environment interaction model Emphasize data model
Slide 7Chapter 2: Introduction to Database Development Broad Goals of Database Development Develop a common vocabulary Define data meaning Ensure data quality Provide efficient implementation
Slide 8Chapter 2: Introduction to Database Development Develop a Common Vocabulary Diverse groups of users Difficult to obtain acceptance of a common vocabulary Compromise to find least objectionable solution Unify organization by establishing a common vocabulary
Slide 9Chapter 2: Introduction to Database Development Define Meaning of Data Business rules support organizational policies Restrictiveness of business rules Too restrictive: reject valid business interactions Too loose: allow erroneous business interactions Exceptions allow flexibility
Slide 10Chapter 2: Introduction to Database Development Data Quality Poor data quality leads to poor decision making Difficult customer communication Inventory shortages Cost-benefit tradeoff to achieve desired level of data quality Long-term effects of poor data quality
Slide 11Chapter 2: Introduction to Database Development Data Quality Measures Completeness Lack of ambiguity Timeliness Correctness Consistency Reliability
Slide 12Chapter 2: Introduction to Database Development Efficient Implementation Supersedes other goals Optimization problem Maximize performance Subject to constraints of data quality, data meaning, and resource usage Difficult problem: Number of choices Relationships among choices DBMS specific
Slide 13Chapter 2: Introduction to Database Development Database Development Phases Conceptual Data Modeling Logical Database Design Distributed Database Design Physical Database Design ERD Tables Distribution Schema Internal Schema, Populated DB Data requirements
Slide 14Chapter 2: Introduction to Database Development Conceptual Data Modeling Information content of the database Entity relationship diagram (ERD) showing entity types and relationships Historically, DBMSs did not support many constraints. Diverse formats for database requirements
Slide 15Chapter 2: Introduction to Database Development Logical Database Design Refine conceptual design Convert ERD to table design Analyze design for excessive redundancies Normalization: tool to reason about redundancies Add constraints to enforce business rules
Slide 16Chapter 2: Introduction to Database Development Distributed Database Design Location of data and processing Performance orientation, not information content orientation Allocate subsets of database to different sites Replicate subsets of database to improve availability
Slide 17Chapter 2: Introduction to Database Development Physical Database Design Performed at each independent database site Minimize response time without consuming excessive resources Tradeoffs: retrieval versus update Flexible designs versus specialized designs Decisions: indexes, data placement
Slide 18Chapter 2: Introduction to Database Development Splitting Conceptual Design
Slide 19Chapter 2: Introduction to Database Development Cross Checking Requirements
Slide 20Chapter 2: Introduction to Database Development Design Skills Soft Qualitative Degree of subjectivity People-oriented Hard Quantitative Objective Intensive data analysis
Slide 21Chapter 2: Introduction to Database Development Design Skills in Phases
Slide 22Chapter 2: Introduction to Database Development Features of CASE Tools Diagramming Documentation Analysis Prototyping
Slide 23Chapter 2: Introduction to Database Development Classification of CASE Tools Front-end vs. Back-end Front-end emphasize data modeling and logical analysis Back-end emphasize code generation and physical design DBMS dependent vs. DBMS independent
Slide 24Chapter 2: Introduction to Database Development Commercial CASE Tools PowerDesigner Oracle SQL Developer Data Modeler Visual Premium CA ERWin Modeling Family ER/Studio Enterprise Visible Analyst Aqua Data Studio
Slide 25Chapter 2: Introduction to Database Development Visio Professional Entry level version of Visual Premium Drawing tools Stencils for database diagrams Glue feature to retain connections Data dictionary support Analysis tools Diagram layout Error checking Reverse engineering
Slide 26Chapter 2: Introduction to Database Development Visio Professional Templates
Slide 27Chapter 2: Introduction to Database Development Entity Relationship Model in Visio Professional
Slide 28Chapter 2: Introduction to Database Development Property Windows in Visio Professional
Slide 29Chapter 2: Introduction to Database Development Summary Background for Chapters 5 to 8 Relationship to information systems development Broad goals Development phases CASE tool features