CH2 THE DATABASE DEVELOPMENT PROCESS
06/10/15
Compiled by L. Mutanu
1
CH2 THE DATABASE DEVELOPMENT PROCESS Information Systems Architecture
• This is a blueprint for organization’s desired information systems structure • It consists of: – Data - Enterprise Data Model–simplified ER Diagram – Processes – Data flow diagrams, process decomposition, etc. – Data Network – topology diagram – People – people/ management – Events - when processes are performed – Rules - Reasons for events and e.g. decision tables
Compiled by L. Mutanu
CH2 THE DATABASE DEVELOPMENT PROCESS
The StayHome case study • • • •
This case study describes a company called StayHome. It rents out videos to its . The first branch of StayHome was established in 1982 in Seattle. The company has now grown and has many branches throughout the United States.
Compiled by L. Mutanu
CH2 THE DATABASE DEVELOPMENT PROCESS
StayHome staff registration form StayHome however keeps data about its staff using the Ms word form showed below.
Compiled by L. Mutanu
CH2 THE DATABASE DEVELOPMENT PROCESS
Every branch keeps a list of staff as shown below
Compiled by L. Mutanu
CH2 THE DATABASE DEVELOPMENT PROCESS
Additionally a list of the videos kept in a branch is also maintained
Compiled by L. Mutanu
CH2 THE DATABASE DEVELOPMENT PROCESS
When a new member s StayHome they fill in the registration form below
Compiled by L. Mutanu
CH2 THE DATABASE DEVELOPMENT PROCESS
A list of in the branch is also maintained
Compiled by L. Mutanu
CH2 THE DATABASE DEVELOPMENT PROCESS
When a member rents a video the following information is kept
Compiled by L. Mutanu
CH2 THE DATABASE DEVELOPMENT PROCESS
• You have been asked to develop a DBMS for Stay Home.
Compiled by L. Mutanu
CH2 THE DATABASE DEVELOPMENT PROCESS Approaches to Database Development • SDLC - System Development Life Cycle – Detailed, well-planned development process – Time-consuming, but comprehensive • Prototyping - Rapid application development (RAD) – Defines database during development of initial prototype – Repetition of implementation and testing activities with new prototype versions
Compiled by L. Mutanu
CH2 THE DATABASE DEVELOPMENT PROCESS
Systems Development Life Cycle
Planning Analysis Logical Design Physical Design Implementation Maintenance Compiled by L. Mutanu
CH2 THE DATABASE DEVELOPMENT PROCESS Systems Development Life Cycle Purpose–preliminary understanding of the system
Planning Planning
Analysis Logical Design Physical Design Implementation Database activity– enterprise modeling (Processes/Activities?) Compiled by L. Mutanu
Maintenance
CH2 THE DATABASE DEVELOPMENT PROCESS
StayHome case study – database planning • Defines the major aims of the database system. • specifies, in general , the work to be done, the resources with which to do it, and the money to pay for it all.
Compiled by L. Mutanu
CH2 THE DATABASE DEVELOPMENT PROCESS
Systems Development Life Cycle Purpose– Identify possible solution and select the best .
Planning Analysis Analysis
Logical Design Physical Design Database activity–conceptual data modeling (What Data?)
Compiled by L. Mutanu
Implementation Maintenance
CH2 THE DATABASE DEVELOPMENT PROCESS
StayHome case study – Analysis
• What data will the database have? Identify entities. •Branches •Staff •Video • •Rentals •Suppliers •Supplier Orders
Compiled by L. Mutanu
CH2 THE DATABASE DEVELOPMENT PROCESS Systems Development Life Cycle Purpose– Creation on paper or with CASE tools
Planning Analysis
Logical Design Logical Design
Physical Design Database activity– design transactions, forms, displays, views, data integrity and security How is data manipulated? Compiled by L. Mutanu
Implementation Maintenance
CH2 THE DATABASE DEVELOPMENT PROCESS
StayHome Case Study – Logical Design
• What activities will be conducted on the data? •Maintaining/Edit – Enter, Update and Delete •Querying – Searching for analysis •Reporting - For Decision making purposes
Compiled by L. Mutanu
CH2 THE DATABASE DEVELOPMENT PROCESS Systems Development Life Cycle Purpose– Identify and acquire technology
Planning Analysis
Logical Design Physical PhysicalDesign Design Database activity– physical database design (define database to DBMS, physical data organization, database processing programs) Compiled by L. Mutanu
Implementation Maintenance
CH2 THE DATABASE DEVELOPMENT PROCESS
StayHome Case Study – Physical Design
• CASE Tools? • Open Source? Commercial DBMS? • In house development? Outsource? • Which DBMS/Application?
Compiled by L. Mutanu
CH2 THE DATABASE DEVELOPMENT PROCESS Systems Development Life Cycle Purpose–programming, testing, training, installation, documenting
Planning Analysis Logical Design Physical Design Implementation Implementation Database activity – writing, coded programs, documentation, installation and conversion Compiled by L. Mutanu
Maintenance
CH2 THE DATABASE DEVELOPMENT PROCESS Systems Development Life Cycle
Purpose–monitor, repair, enhance
Planning Analysis
Logical Design Physical Design Implementation Database activity– database maintenance, tuning, error corrections Compiled by L. Mutanu
Maintenance Maintenance
CH2 THE DATABASE DEVELOPMENT PROCESS Prototyping Database Methodology
Compiled by L. Mutanu
CH2 THE DATABASE DEVELOPMENT PROCESS Database Schema • The schema of a database system is its structure. In a relational database, the schema defines the tables, the fields, relationships, etc. • The Three-Schema Architecture is the most popular. It contains: • External Schema - Views. Determined from businessfunction/data entity matrices. It is a subsets of Conceptual Schema • Conceptual Schema – Data s view. Combines different external views into a single view. • Internal Schema – This is the underlying design and implementation . It consists of two different schemas: – Logical structures – Shows the data structure – Physical structures – Shows how the data is stored Compiled by L. Mutanu
CH2 THE DATABASE DEVELOPMENT PROCESS
Compiled by L. Mutanu
CH2 THE DATABASE DEVELOPMENT PROCESS
Compiled by L. Mutanu
CH2 THE DATABASE DEVELOPMENT PROCESS Data Independence • Logical Data Independence Refers to immunity of external schemas to changes in conceptual schema. Conceptual schema changes (e.g. addition/removal of entities) should not require changes to external schema or rewrites of application programs. • Physical Data Independence Refers to immunity of conceptual schema to changes in the internal schema. Internal schema changes (e.g. using different file organizations, storage structures/devices). Should not require change to conceptual or external schemas.
Compiled by L. Mutanu
CH2 THE DATABASE DEVELOPMENT PROCESS
Compiled by L. Mutanu
CH2 THE DATABASE DEVELOPMENT PROCESS
• The ThreeLevel Architecture offers the following benefits: – All s should be able to access same data. – A ’s view is immune to changes made in other views. – s do not need to know physical database storage details.
Compiled by L. Mutanu
CH2 THE DATABASE DEVELOPMENT PROCESS
Developing three-schema architecture for a database
Compiled by L. Mutanu
CH2 THE DATABASE DEVELOPMENT PROCESS
StayHome case study – External Schema • Gather more details on views to create s’ requirements specification, which describes data to be held in database and how data is to be used. • Which are the different s of the system? • What data do they want? • What can they do with the data; Edit, Query or simply view?
•Overall Manager •Branch supervisors •Customer Compiled by L. Mutanu
CH2 THE DATABASE DEVELOPMENT PROCESS
CRUD Matrix
Compiled by L. Mutanu
CH2 THE DATABASE DEVELOPMENT PROCESS
StayHome case study – Internal Schema • Collect general requirements to create the system - systems specification • Describes features to be included in new database system such as networking, shared access, performance, and security requirements.
Compiled by L. Mutanu
CH2 THE DATABASE DEVELOPMENT PROCESS Multi DBMS Architectures 1. 2. 3.
Teleprocessing Fileserver Clientserver
Compiled by L. Mutanu
CH2 THE DATABASE DEVELOPMENT PROCESS 1. Teleprocessing
• Traditional architecture. Was a single mainframe with a number of terminals attached.
Compiled by L. Mutanu
CH2 THE DATABASE DEVELOPMENT PROCESS 2. FileServer • Fileserver is connected to several workstations across a network. The database resides on fileserver. DBMS and applications run on each workstation. Disadvantages include: •Significant network traffic. •Copy of DBMS on each workstation. •Concurrency control more complex.
Compiled by L. Mutanu
CH2 THE DATABASE DEVELOPMENT PROCESS 3. ClientServer • Server holds the database and the DBMS. • Client manages and runs applications. • Advantages include: – wider access to existing databases; – increased performance; – possible reduction in hardware costs; – reduction in communication costs; – increased consistency.
Compiled by L. Mutanu
CH2 THE DATABASE DEVELOPMENT PROCESS
Three-tiered Client-Server Database Architecture
Compiled by L. Mutanu
CH2 THE DATABASE DEVELOPMENT PROCESS
StayHome case study – DBMS Architecture • Decide how to manage a project where database system has more than one view.
Compiled by L. Mutanu