2 copyright © 2006, oracle. all rights reserved. introduction to database development chapter 2

26
2 Copyright © 2006, Oracle. All rights reserved. Introduction to Database Development Chapter 2

Upload: lynne-chambers

Post on 02-Jan-2016

214 views

Category:

Documents


1 download

TRANSCRIPT

2Copyright © 2006, Oracle. All rights reserved.

Introduction to Database Development

Chapter 2

2- 2

Outline

• Context for database development

• Goals of database development

• Phases of database development

• CASE tools

2- 3

Information System

Student LoanProcessing

System

Loan Applications

Payments Statements

StatusChanges

CashDisbursements

DATABASE

DelinquencyNotices

INPUTS OUTPUTS

PROCESSES

ENVIRONMENTENVIRONMENT

現金收支

滯納通知

Environment Environment

2- 4

Traditional Life Cycle of System Development

PreliminaryInvestigation

SystemsAnalysis

SystemsDesign

SystemsImplementation

OperationalSystem

Feedback

Feedback

Problem Statement,Feasibility Study

System Requirements

Design Specifications

MaintenanceFeedback

2- 5

Development Alternatives

Criticism about traditional life cycle of S.D.

• 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- 6

Graphical Models

The graphical models of the followings should be

produced in all development alternatives:

• Data model

• Data and relationships

• Process model

• Relationships among processes

• Environment interaction model

• Relationship between events and processes

2- 7

Goals of Database Development

• Develop a common vocabulary

• Define data meaning

• Ensure data quality

• Provide efficient implementation

2- 8

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- 9

Define Meaning of Data

• Business rules support organizational policies

Example : An order must precede a shipment

• Restrictiveness (嚴謹性 ) of business rules

– Too restrictive: reject (排拒 ) valid business interactions

(May force work-around solutions to handle exceptions)

(Exception handling allows flexibility)

– Too loose: allow erroneous business interactions

(May allow incorrect data in a database)

2- 10

Data Quality

• Poor data quality leads to poor decision making

– Poor customer communication

– Inventory shortages

• Cost-benefit tradeoff to achieve desired level of

data quality

• Long-term effects of poor data quality

2- 11

Data Quality Measures

• CompletenessD/B represents all important parts of the IS

• Lack of ambiguity (缺乏模糊性 )Each part of the D/B has only one meaning

• TimelinessBusiness changes posted to the D/B without delay

• CorrectnessD/B contains values preceived by users

• ConsistencyDifferent parts of the D/B do not conflict

• ReliabilityFailures or interferences do not corrupt D/B

2- 12

Efficient Implementation

Even if other design goals are met, a slow-performing

database will not be used.

• Supersedes and respects (考量 ) other goals as

possible

• An 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- 13

Database Development Phases

Conceptual Data Modeling

Logical Database Design

Distributed Database Design

Physical Database Design

ERD

Tables

Distribution Schema

Internal Schema, Populated D/B

Data requirements

(可移植的資料庫 )

2- 14

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- 15

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- 16

Distributed Database Design

• Performance orientation, not information content

orientation

• Decisions: location of data and processing

– Allocate subsets of database to different sites

– Replicate subsets of database to improve availability

2- 17

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- 18

Splitting Conceptual Design

View Design

View Integration

Data Requirements

View ERDs

Entity Relationship Diagrams

Conceptual Data Modeling

2- 19

Cross Checking (交叉檢查 ) Requirements

DatabaseDevelopment

ERDs, Table Design,...

ApplicationDevelopmentProcess Models,

Interaction Models,Prototypes

SystemRequirements

Data Requirements Application Requirements

OperationalSystem

OperationalDatabase

OperationalApplications

CrossChecking

2- 20

Design Skills in Phases

Conceptual DataModeling

Logical DatabaseDesign

PhysicalDatabase Design

DistributedDatabase Design

Entity RelationshipDiagrams

Relational DatabaseTables

Distribution Schema

Internal Schema, Populated Database

Data Requirements

Soft

Hard

Design Skills

Soft• Qualitative• subjective 

(主觀性的 )• People-oriented

Hard• Quantitative• Objective• Intensive data analysis

(密集的資料分析 )

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

ER Assistant

• CASE tool distributed with the textbook

• Customized for this textbook: supports the ERD

notation used in Chapters 5 and 6

• Drawing tool

• Diagram checking

• Easy to use and powerful tool

2- 25

Visio Professional

• Entry level version of Visual Studio .Net Enterprise

Architect

• Excellent drawing tools

• Stencils (樣板 ) for database diagrams

• Glue (黏合 ) feature to retain connections

• Useful analysis tools

• Diagram layout

• Reverse engineering

• Data dictionary support

2- 26

Summary

• Background for Chapters 5 to 8

• Relationship to information systems

development

• Goals of database development

• Darabase development phases

• CASE tool features