Chapter 2 of Database Design, Application Development and

Download Report

Transcript Chapter 2 of Database Design, Application Development and

Introduction to Database
Development
Outline




Context for database development
Goals of database development
Phases of database development
CASE tools
2-2
Information System
INPUTS
Loan Applications
OUTPUTS
PROCESSES
ENVIRONMENT
Payments
Student Loan
Processing
System
Delinquency
Notices
ENVIRONMENT
Statements
Cash
Disbursements
Status
Changes
DATABASE
2-3
Traditional Life Cycle
Preliminary
Investigation
Problem Statement,
Feasibility Study
Systems
Analysis
Feedback
System Requirements
Systems
Design
Feedback
Design Specifications
Systems
Implementation
Operational
System
Maintenance
Feedback
2-4
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
2-5
Graphical Models
 Data model –describes entities and
relationships
 Process model – describes relationships
among processes
 Environment interaction model – describes
relationships between events and
processes
2-6
Broad Goals of Database
Development




Develop a common vocabulary
Define data meaning
Ensure data quality
Provide efficient implementation
2-7
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
2-8
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
2-9
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
2-10
Data Quality Measures






Completeness
Lack of ambiguity
Timeliness
Correctness
Consistency
Reliability
2-11
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
2-12
Database Development Phases
Data
requirements
Conceptual Data
Modeling
ERD
Logical Database
Design
Tables
Distributed Database
Design
Distribution Schema
Physical Database
Design
Internal Schema,
Populated DB
2-13
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
2-14
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
2-15
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
2-16
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
2-17
Splitting Conceptual Design
Conceptual Data Modeling
Data Requirements
View Design
View ERDs
View Integration
Entity Relationship Diagrams
2-18
Cross Checking Requirements
System
Requirements
Data Requirements
Database
Development
Application Requirements
Cross
Checking
ERDs, Table Design,
...
Application
Development
Process Models,
Interaction Models,
Prototypes
Operational
Applications
Operational
Database
Operational
System
2-19
Design Skills
 Soft
 Qualitative
 Degree of subjectivity
 People-oriented
 Hard
 Quantitative
 Objective
 Intensive data analysis
2-20
Design Skills in Phases
Data Requirements
Conceptual Data
Modeling
Design Skills
Soft
Entity Relationship
Diagrams
Logical Database
Design
Relational Database
Tables
Distributed
Database Design
Distribution Schema
Physical
Database Design
Internal Schema, Populated Database
Hard
2-21
Features of CASE Tools




Diagramming
Documentation
Analysis
Prototyping
2-22
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
2-23
Commercial CASE Tools






PowerDesigner 10
Oracle Designer 10g
Visual Studio .Net Enterprise Architect
ERWin Data Modeler
ER/Studio
Visible Analyst
2-24
Visio Professional
 Entry level version of Visual Studio .Net
Enterprise Architect
 Drawing tools
 Stencils for database diagrams
 Glue feature to retain connections
 Data dictionary support
 Analysis tools
 Diagram layout
 Reverse engineering
2-25
Summary
 Background for what is to come
 Relationship to information systems
development
 Broad goals
 Development phases
 CASE tool features
2-26