Database Development Process

Download Report

Transcript Database Development Process

DATABASE DEVELOPMENT PROCESS
• Information Systems Planning
– Information Systems Architecture
– Information Engineering Methodology
– Information Systems Planning
• Database Development Process
– Prototyping for DB Development Process
– An Example of Prototyping a DB Application
– Database and IS Development Process
• Three Schema Architecture for DB Development
• Three-Tiered Client/Server DB Architecture
Information Systems Architecture
• Data (Enterprise Data Model – simplified ER Diagram)
• Processes, which manipulate data (represented by data
flow diagrams, object-models, . . )
• Data Network, which transports data around the
organization and . . )
• People
• Events and Points in Time , when processes are performed
(shown by state-transition diagrams and . .)
• Reasons, for events and rules that govern the processing of
data . .
Information Engineering
• A data-oriented methodology to create and maintain
information systems
• Top-down planning approach
• Four steps:
– Planning - results in an Information Systems
Architecture
– Analysis - results in functional specifications…i.e.
what we want
– Design - results in design specifications…i.e. how
we’ll do it
– Implementation - results in final operational system
Information Systems Planning
Align IT with the business strategies
• Identify strategic planning
factors
– Organization goals
– Critical success factors
– Problem areas
• Identify corporate planning
objects
– Organizational units
– Organizational locations
– Business functions
– Entity types
– application systems
• Develop enterprise model
– Functional decomposition
of business functions
– Enterprise data model
– Planning matrices
Example Results in IE Planning Phase
• Goals - what we hope to accomplish
–
–
–
–
Maintain 10% per year growth rate
Maintain 15% before-tax return on investment
Avoid employee layouts
Be a responsible corporate citizen
• Critical success factors - what must work in order to survive
– High-quality products
– On-time deliveries of finished products
– High productivity of employees
• Problem areas - weaknesses we now have
– Inaccurate sales forecasts
– Increasing competition
– Stockouts of finished products
Example of Corporate Planning Objects
• Organizational units
• Organizational locations
• Business functions
–
–
–
–
Business planning
Product development
Materials management
Marketing and sales
• Order fulfillment
• Order shipment
– Production operations
– Finance and accounting
• Entity types
– Customer, Product, Raw
Material, Order, Invoice,
Employee, Equipment,
Work Center
• Information systems
– TPS: Order tracking, Order
processing, Plant
scheduling, Payroll
– MIS: Sales management,
Inventory control,
Production scheduling
Example of process decomposition of an order
fulfillment function
Decomposition -- breaking
large tasks into smaller
tasks in a hierarchical
structure chart
Enterprise Data Model
• Sets the range and general contents of
organizational databases.
• Results in a total picture or explanation of
organizational data, not in the design for a
particular database.
• Entity-relationship diagram
• Descriptions of entity types
• Relationships between entities
• Business rules
Figure 2-1 Segment from enterprise data model (Pine
Valley Furniture Company)
Enterprise data model
describes the entities in an
organization & the relationship
between these entities
Planning Matrices
•
•
•
•
•
Function to data entity
Location to function
Unit to function
IS application to data entity
Supporting function to data entity
– which data are captured, used, updated, deleted within
each function
• IS application to business objective
Data Entity
Types
Business
Function
Business Planning
Product Development
Materials Management
Order Fulfillment
Order Shipment
Sales Summarization
Production Operations
Finance and Accounting
Customer
Product
Raw Material
Order
Work Center
Work Order
Invoice
Equipment
Employee
Example function-to-data entry matrix
X X
X
X
X X
X X
X X
X
X X
X X
X
X
X
X X X X
X
X X X X X X X
X X
X
X
X
X
X
X X X X
X X
X X X
X X X
Systems Development Life Cycle
Project Identification
and Selection
Project Initiation
and Planning
Analysis
Logical Design
Physical Design
Implementation
Maintenance
Systems Development Life Cycle
Project Identification
and Selection
Purpose --preliminary understanding
Deliverable –request for project
Project Initiation
and Planning
Analysis
Logical Design
Physical Design
Database activity –
enterprise modeling
Implementation
Maintenance
Systems Development Life Cycle
Project Identification
and Selection
Purpose – state business situation and solution
Deliverable – request for analysis
Project Initiation
and Planning
Analysis
Logical Design
Physical Design
Database activity –
conceptual data modeling
Implementation
Maintenance
Systems Development Life Cycle
Project Identification
and Selection
Purpose –thorough analysis
Deliverable – functional system specifications
Project Initiation
and Planning
Analysis
Logical Design
Physical Design
Database activity –
conceptual data modeling
Implementation
Maintenance
Systems Development Life Cycle
Project Identification
and Selection
Project Initiation
and Planning
Purpose –information requirements structure
Deliverable – detailed design specifications
Analysis
Logical Design
Physical Design
Database activity –
logical database design
Implementation
Maintenance
Systems Development Life Cycle
Purpose –develop technology specs
Deliverable – program/data
structures, technology purchases,
organization redesigns
Project Identification
and Selection
Project Initiation
and Planning
Analysis
Logical Design
Physical Design
Database activity –
physical database design
Implementation
Maintenance
Systems Development Life Cycle
Purpose –programming, testing, training,
installation, documenting
Deliverable – operational programs,
documentation, training materials
Project Identification
and Selection
Project Initiation
and Planning
Analysis
Logical Design
Physical Design
Database activity –
database implementation
Implementation
Maintenance
Systems Development Life Cycle
Project Identification
and Selection
Purpose –monitor, repair, enhance
Deliverable – periodic audits
Project Initiation
and Planning
Analysis
Logical Design
Physical Design
Database activity –
database maintenance
Implementation
Maintenance
Database development activities during SDLC
Enterprise modeling
Project Identification
and Selection
Project Initiation
and Planning
Conceptual data modeling
Analysis
Logical db design
Logical Design
Physical Design
Physical db design
DB implementation
DB maintenance
Implementation
Maintenance
Database development activities:
Enterprise Modeling
• Analyze current data processing
• Analyze the general business functions and their
database needs
• Justify need for new data and databases in support
of business
Database development activities:
Conceptual Data Modeling
• Identify scope of db requirements for proposed IS
• Analyze overall data requirements for business functions
supported by db
• Develop preliminary conceptual data model, including
entities and relationships
• Compare preliminary conceptual data model with
enterprise data model
• Develop detailed conceptual data model, including all
entities, relationships, attributes, and business rules
• Make conceptual data model consistent with other models
of IS
• Populate repository with all conceptual db specifications
Database development activities:
Logical Database Design
• Analyze in detail the transactions, form, displays,
and inquiries (db views) required by the business
functions supported by the db
• Integrate db views into conceptual data model
• Identify data integrity and security requirements,
and populate repository
Database development activities:
Physical Database Design and Creation
• Define db to DBMS (often generated from
repository)
• Decide on physical organization of data
• Design db processing programs
Database development activities:
Database Implementation
• Code and test db processing programs
• Complete db documentation and training materials
• Install db and convert data from prior systems
Database development activities:
Database Maintenance
• Analyze db and db applications to ensure that
evolving information requirements are met
• Tune db for improved performance
• Fix errors in db and db applications and recover
db when it is contaminated
Figure 2-6 The prototyping methodology and
database development process
Figure 2-6 The prototyping methodology and
database development process
Figure 2-6 The prototyping methodology and
database development process
Figure 2-6 The prototyping methodology and
database development process
Figure 2-6 The prototyping methodology and
database development process
The prototyping methodology and database
development process
Alternative Approaches to
Database and IS Development
• SDLC
–
–
–
–
System Development Life cycle
Detailed, well-planned development process
Time-consuming, but comprehensive
Long development cycle
• Prototyping
–
–
–
–
Rapid application development (RAD)
Cursory attempt at conceptual data modeling.
Define database during development of initial prototype.
Repeat implementation and maintenance activities with
new prototype versions.
Three-schema database architecture
Database Schema
• Physical Schema
– Physical structures – covered in chapters 5 and 6
• Conceptual Schema
– ER models – covered in chapters 3 and 4
• External Schema
– User Views
– Subsets of Conceptual Schema
– Can be determined from business-function/data entity
matrices
– DBA determines schema for different users
– This is part of people-management in databases
Figure 2-8 Three-schema database architecture
External schema
Different people have
different views of the
database…these are the
external schema
Internal schema
Process of developing three-schema architecture
for a database project
Three Schema Architecture for DB Development
• Conceptual Schema
– Analysis project phase
• External Schema
– Analysis and Logical Design phases
– (subset of conceptual schema)
• Internal Schema
– Physical Design phase
Three-tiered client/server database architecture
Gantt Chart
Shows time estimates of tasks
PERT chart
Shows dependencies between tasks
Database and IS Development Process
• Sources
– Information systems planning
– User application requests - bottom-up
• IS Development Approaches
– Systems Development Life Cycle (SDLC)
– Rapid Application Development (RAD)
• Prototyping
• CASE
– Database drawing tools
– Code generation (SQL)
– Repository
• People
People in Database Development
•
•
•
•
•
•
Systems analysts
Database analysts
Users
Programmers
Database and data administrators
Systems programmers, network administrators,
testers, technical writers
Figure 2-11 Preliminary data model for product line
marketing support system
Figure 2-12 Definition of PRODUCT LINE table
Figure 2-13 Definition of PRODUCT table
Figure 2-14 Definition of ORDER table
Figure 2-15 Definition of ORDERED PRODUCT table
Figure 2-16 Database definition for Home Office
product line marketing support system
Figure 2-17 Home Office sales-to-goal comparison query
Figure 2-18 Home Office product line sales comparison
Pine Valley Furniture
Preliminary data model
(figure 2-11)
Pine Valley Furniture
MS Access data model prototype (figure 2-14)