Chapter 3
Chapter 3
DATABASE APPLICATION
DEVELOPEMENT
WHAT IS INFORMATION SYSTEM?
Requirements
Gathering Analysis Design
4
SYSTEM DEVELOPMENT PHASES
5
THE MAIN PHASES OF SYSTEM
DEVELOPMENT LIFE CYCLE
◇ Design ◇ Implementation
■ Begins with a system ■ The construction of a
specification computer system according
■ Provides a detailed to a given design document
description of how a ■ Involves Coding, Database
system should be construction, …
constructed
6
THE MAIN PHASES OF SYSTEM
DEVELOPMENT LIFE CYCLE
◇ Testing ◇ Maintenance
■ Compares the ■ Involves dealing with
implemented system changes in the requirements
against the design or the implementation
documents and environment
requirements ■ bug fixing, change of
■ Produces an acceptance requirements, additional
report requirements
7
SYSTEM DEVELOPMENT
PHASES
REQUIREMNET GATHERING –DB SYSTEM
◇ Requirements Gathering involves understanding the proposed system
◇ The purpose is to obtain and document
■ the data and
■ functional requirements
◇ The result of this step is a document that includes:
■ The persistent data that users want to store
■ The description of the meaning of the data elements
◇ The data description should answer
■ what are the data items ?
■ what are the properties of the data items ?
■ what relationships hold between the data items ?
■ what constraints apply ?
REQUIREMNET GATHERING –DB SYSTEM
◇ Different Methods are used to understand the system:
■ Interviewing end users
○ Individual interviews and
○ group discussions
■ Questionnaire survey
■ Direct observation of the work process
■ Examining different documents
○ Forms
○ Reports
○ Receipts
○ Invoices, etc.
ANALYSIS –DB SYSTEM
19
File-Server Architecture
◇ Three main disadvantages of the file-server
architecture
1. There is a large amount of network traffic.
2. A full copy of the DBMS is required on each
workstation.
3. Concurrency, recovery, and integrity control are more
complex because there can be multiple DBMSs
accessing the same files at the same time.
File-Server Architecture
◇ Also called Thick Client
◇ Users run an application on their local computer
■ This is the Client
◇ The Client connects over a network to the
Database Server
◇ The Client application is responsible for both
■ business logic and
■ display output to the user
2-tier Database Architecture
◇ There is an Application layer between the user and
the DBMS
◇ The Application layer:
■ Communicates the user's request to the database
management system and
■ Sends the response from the DBMS to the user.
◇ Most DBMS vendors provide ODBC drivers for their
DBMS
■ ODBC(Open Database Connectivity)
■ An application interface
■ The API allows the client program to call the DBMS
2-tier Database Architecture
◇ 2-tier architecture provides the
database extra security as it is not
exposed to the End-User directly
■ Access is always via the DBMS
◇ Security can be improved by adding
security and authentication checks
in the Application layer
2-Tier Architecture
Step 1. Client application send
request for data
Network
DATABASE
Step 2.
Step3: Display results (Data) to the
client • Retrieve the data from the database
• Manipulating data according to the
client’s request
• Send back results to the client
3-tier Application Architecture
◇ The Application logic is run in two locations
Application Database
Client Server Database
Server
25
Server Applications
Server Applications are multithreaded application
capable of working with many concurrent users
Server Applications reside on an Application Server
○ Examples: Web Server - Apache and Microsoft's IIS
Thin clients request functions from the server
application
Server Applications connections to the database
The Server Application can be running on the same
server as the Database Server, or it can connect
across the network to a separate server operating as a
database server
3-Tier Architecture
Network
DATABASE
Three-tier
Application Architectures