SlideShare a Scribd company logo
Database Application
Development
CS341
Information System (IS)
 Information system
 Collection
 Management
 Control, and
 Dissemination of information throughout an organization
 Database is a fundamental component of IS
 Database development and usage should be viewed
from perspective of the wider requirements of the
organization.
2
System Development Life cycle
 The core aspect of software engineering is the
subdivision of the development process into a series
of phases, or steps
 Each phase focuses on one aspect of the development
 Each phase in the life cycle can be checked for correctness
before moving on to the next phase
 The collection of these steps is referred to as the
Software Development Life Cycle (SDLC).
 Why CYCLE?
 Software products move through a life cycle repeatedly
 It is refined or redeveloped
 Until it is finally retired from use
3
System Development Phases
 The main phases of the system development life cycle:
1. Requirements Gathering
2. Analysis
3. Design
4. Implementation
5. Testing
6. Maintenance
4
System Development Phases (cont.)
 Requirements Gathering
 Produces a statement of user requirements
 Involves consultation with stakeholders about what they want
from a system
 Analysis
 Starts with the statement of requirements
 Produces a system specification
 The specification is a formal representation of what a system should do
 Is independent of how it may be realized
 Design
 Begins with a system specification
 Provides a detailed description of how a system should be
constructed
5
System Development Phases (cont.)
 Implementation
 The construction of a computer system according to a given
design document
 Involves Coding, Database construction, …
 Testing
 Compares the implemented system against the design
documents and requirements
 Produces an acceptance report
 Maintenance
 Involves dealing with changes in the requirements or the
implementation environment
 bug fixing, change of requirements, additional requirements
6
Requirements 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 ?
7
Requirements 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.
8
Analysis - DB System
 Analysis produces a conceptual data model
 a detailed description of the data that will suit user requirements
 The conceptual data model
 provides a shared, formal representation of what is being
communicated between clients and developers
 It is concerned with the meaning and structure of data
 It is a formal representation of what data a database should
contain and the constraints the data must satisfy.
 The conceptual data model is expressed in terms that is
independent of how the model may be implemented.
 Focuses on the questions, “What is required?” not “How is it
achieved?”
9
Design & Implementation - DB System
 Design
 Database design starts with a conceptual data model and
produces a specification of a logical schema
 The output of this stage is a detailed relational specification
 The logical schema of all the tables and constraints needed to satisfy the
description of the data in the conceptual data model
 This is a description of HOW the database is to be built!
 Implementation
 The creation or construction of a database according to the
specification of a logical schema
 It is dependent on the choice of available DBMSs, database
tools and operating environment.
10
DBMS Architecture
 DBMS describes the design of a database and its related
elements
 It describes
 The Database
 The Application Program that is used to access the database
 The User who miniplates the data
11
Database Application Architecture
 Common architectures that are used to implement multi-
user database management systems
 Tele-processing
 File-Server Architecture
 2-tier Architecture
 3-tier Architecture
12
Tele-Processing / Mainframes
 The traditional architecture for multi-user systems
 There is one computer with a single central processing
unit (CPU) and a number of terminals
 User terminals are typically ‘dumb’ ones
 i.e. incapable of functioning on their own.
 User terminals are just cabled to the main computer.
13
Disadvantage of Tele-Processing
 The architecture placed a tremendous burden on the
central computer
 The central computer had to
 Run the application programs
 Run the DBMS
 Carry out a significant amount of work on behalf of the terminals
(such as formatting data for display on the screen)
14
File-Server Architecture
 Processing is distributed over the network
 Typically a local area network (LAN).
 Each workstation runs its own
 Application
 DBMS
 Applications and the DBMS request files from the file-
server when necessary
 The file-server holds the files required by applications
and the DBMS.
 The file-server acts simply as a shared hard disk drive
15
File-Server Architecture (cont.)
16
File-Server Architecture (cont.)
 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.
17
2-tier Database 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
18
2-tier Database Architecture (cont.)
 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
19
2-tier Database Architecture (cont)
 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
20
2-Tier Architecture
DATABASE
Step 1. Client application send
request for data
Step 2.
• Retrieve the data from the database
• Manipulating data according to the client’s
request
• Send back results to the client
Step3: Display results (Data) to the client
Network
3-tier Application Architecture
 The Application logic is run in two locations
 This is the most commonly used architecture for web
applications
 The client is run on the user's local computer
 Also called Thin Client
 Focused on displaying results to the user
 The business logic is located in server applications
running on a server
22
Client
Application
Server
Database
Server Database
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
23
3-Tier Architecture
DATABASE
Network
Middel Tier
(Business logic)
Client side interface or
browser
Storage
 Client Services - Provide the user interface and preliminary
processing.
 Check / Validation of data
 Make sure that the data is in the proper format,
 Data services - Handle the data storage, retrieval and
processing.
Two-tier
Three-
tier
Application Architectures

More Related Content

Similar to Comprehensive Guide to Effective Database Application Development Principles (20)

PDF
unit 1.pdf
AbhishekSingh757567
 
PPTX
Web based database application design using vb.net and sql server
Ammara Arooj
 
PPTX
Database design process
Tayyab Hameed
 
PDF
14 db system
Vivek Kumar
 
PDF
DBMS CONCEPT
Vivek Kumar
 
PPT
Chap1-Introduction to database systems.ppt
LisaMalar
 
PDF
Dbms lifecycle. ..Database System Development Lifecycle
Nimrakhan89
 
PPT
Database Systems
Sheikh Hussnain
 
PPTX
Fundamentals of Database system - Databases and Database Users
Mustafa Kamel Mohammadi
 
PPT
Database Systems.ppt
ArbazAli27
 
PDF
Advance database system (part 2)
Abdullah Khosa
 
PPT
Database overview unit 4 part 1
Ram Paliwal
 
PPTX
DBMS Architecture having normalisation he
ab0067752
 
PPT
Database introduction
Fraboni Ec
 
PPT
Database introduction
Tony Nguyen
 
PPT
Database introduction
Harry Potter
 
PPT
Database introduction
Luis Goldster
 
PPT
Database introduction
Young Alista
 
PPT
Database introduction
James Wong
 
PPT
Database introduction
David Hoen
 
Web based database application design using vb.net and sql server
Ammara Arooj
 
Database design process
Tayyab Hameed
 
14 db system
Vivek Kumar
 
DBMS CONCEPT
Vivek Kumar
 
Chap1-Introduction to database systems.ppt
LisaMalar
 
Dbms lifecycle. ..Database System Development Lifecycle
Nimrakhan89
 
Database Systems
Sheikh Hussnain
 
Fundamentals of Database system - Databases and Database Users
Mustafa Kamel Mohammadi
 
Database Systems.ppt
ArbazAli27
 
Advance database system (part 2)
Abdullah Khosa
 
Database overview unit 4 part 1
Ram Paliwal
 
DBMS Architecture having normalisation he
ab0067752
 
Database introduction
Fraboni Ec
 
Database introduction
Tony Nguyen
 
Database introduction
Harry Potter
 
Database introduction
Luis Goldster
 
Database introduction
Young Alista
 
Database introduction
James Wong
 
Database introduction
David Hoen
 

Recently uploaded (20)

PPTX
grade 5 lesson matatag ENGLISH 5_Q1_PPT_WEEK4.pptx
SireQuinn
 
PPTX
Introduction to Indian Writing in English
Trushali Dodiya
 
PDF
STATEMENT-BY-THE-HON.-MINISTER-FOR-HEALTH-ON-THE-COVID-19-OUTBREAK-AT-UG_revi...
nservice241
 
PDF
Vani - The Voice of Excellence - Jul 2025 issue
Savipriya Raghavendra
 
PDF
Governor Josh Stein letter to NC delegation of U.S. House
Mebane Rash
 
PPTX
PPT-Q1-WEEK-3-SCIENCE-ERevised Matatag Grade 3.pptx
reijhongidayawan02
 
PDF
Introduction presentation of the patentbutler tool
MIPLM
 
PPTX
HUMAN RESOURCE MANAGEMENT: RECRUITMENT, SELECTION, PLACEMENT, DEPLOYMENT, TRA...
PRADEEP ABOTHU
 
PDF
epi editorial commitee meeting presentation
MIPLM
 
PDF
The Constitution Review Committee (CRC) has released an updated schedule for ...
nservice241
 
PPTX
EDUCATIONAL MEDIA/ TEACHING AUDIO VISUAL AIDS
Sonali Gupta
 
PPTX
infertility, types,causes, impact, and management
Ritu480198
 
PPTX
How to Send Email From Odoo 18 Website - Odoo Slides
Celine George
 
PPTX
How to Set Up Tags in Odoo 18 - Odoo Slides
Celine George
 
PDF
Reconstruct, Restore, Reimagine: New Perspectives on Stoke Newington’s Histor...
History of Stoke Newington
 
PPTX
How to Create Odoo JS Dialog_Popup in Odoo 18
Celine George
 
PPTX
How to Manage Allocation Report for Manufacturing Orders in Odoo 18
Celine George
 
PPTX
CATEGORIES OF NURSING PERSONNEL: HOSPITAL & COLLEGE
PRADEEP ABOTHU
 
PPTX
How to Configure Re-Ordering From Portal in Odoo 18 Website
Celine George
 
PDF
Chapter-V-DED-Entrepreneurship: Institutions Facilitating Entrepreneurship
Dayanand Huded
 
grade 5 lesson matatag ENGLISH 5_Q1_PPT_WEEK4.pptx
SireQuinn
 
Introduction to Indian Writing in English
Trushali Dodiya
 
STATEMENT-BY-THE-HON.-MINISTER-FOR-HEALTH-ON-THE-COVID-19-OUTBREAK-AT-UG_revi...
nservice241
 
Vani - The Voice of Excellence - Jul 2025 issue
Savipriya Raghavendra
 
Governor Josh Stein letter to NC delegation of U.S. House
Mebane Rash
 
PPT-Q1-WEEK-3-SCIENCE-ERevised Matatag Grade 3.pptx
reijhongidayawan02
 
Introduction presentation of the patentbutler tool
MIPLM
 
HUMAN RESOURCE MANAGEMENT: RECRUITMENT, SELECTION, PLACEMENT, DEPLOYMENT, TRA...
PRADEEP ABOTHU
 
epi editorial commitee meeting presentation
MIPLM
 
The Constitution Review Committee (CRC) has released an updated schedule for ...
nservice241
 
EDUCATIONAL MEDIA/ TEACHING AUDIO VISUAL AIDS
Sonali Gupta
 
infertility, types,causes, impact, and management
Ritu480198
 
How to Send Email From Odoo 18 Website - Odoo Slides
Celine George
 
How to Set Up Tags in Odoo 18 - Odoo Slides
Celine George
 
Reconstruct, Restore, Reimagine: New Perspectives on Stoke Newington’s Histor...
History of Stoke Newington
 
How to Create Odoo JS Dialog_Popup in Odoo 18
Celine George
 
How to Manage Allocation Report for Manufacturing Orders in Odoo 18
Celine George
 
CATEGORIES OF NURSING PERSONNEL: HOSPITAL & COLLEGE
PRADEEP ABOTHU
 
How to Configure Re-Ordering From Portal in Odoo 18 Website
Celine George
 
Chapter-V-DED-Entrepreneurship: Institutions Facilitating Entrepreneurship
Dayanand Huded
 
Ad

Comprehensive Guide to Effective Database Application Development Principles

  • 2. Information System (IS)  Information system  Collection  Management  Control, and  Dissemination of information throughout an organization  Database is a fundamental component of IS  Database development and usage should be viewed from perspective of the wider requirements of the organization. 2
  • 3. System Development Life cycle  The core aspect of software engineering is the subdivision of the development process into a series of phases, or steps  Each phase focuses on one aspect of the development  Each phase in the life cycle can be checked for correctness before moving on to the next phase  The collection of these steps is referred to as the Software Development Life Cycle (SDLC).  Why CYCLE?  Software products move through a life cycle repeatedly  It is refined or redeveloped  Until it is finally retired from use 3
  • 4. System Development Phases  The main phases of the system development life cycle: 1. Requirements Gathering 2. Analysis 3. Design 4. Implementation 5. Testing 6. Maintenance 4
  • 5. System Development Phases (cont.)  Requirements Gathering  Produces a statement of user requirements  Involves consultation with stakeholders about what they want from a system  Analysis  Starts with the statement of requirements  Produces a system specification  The specification is a formal representation of what a system should do  Is independent of how it may be realized  Design  Begins with a system specification  Provides a detailed description of how a system should be constructed 5
  • 6. System Development Phases (cont.)  Implementation  The construction of a computer system according to a given design document  Involves Coding, Database construction, …  Testing  Compares the implemented system against the design documents and requirements  Produces an acceptance report  Maintenance  Involves dealing with changes in the requirements or the implementation environment  bug fixing, change of requirements, additional requirements 6
  • 7. Requirements 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 ? 7
  • 8. Requirements 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. 8
  • 9. Analysis - DB System  Analysis produces a conceptual data model  a detailed description of the data that will suit user requirements  The conceptual data model  provides a shared, formal representation of what is being communicated between clients and developers  It is concerned with the meaning and structure of data  It is a formal representation of what data a database should contain and the constraints the data must satisfy.  The conceptual data model is expressed in terms that is independent of how the model may be implemented.  Focuses on the questions, “What is required?” not “How is it achieved?” 9
  • 10. Design & Implementation - DB System  Design  Database design starts with a conceptual data model and produces a specification of a logical schema  The output of this stage is a detailed relational specification  The logical schema of all the tables and constraints needed to satisfy the description of the data in the conceptual data model  This is a description of HOW the database is to be built!  Implementation  The creation or construction of a database according to the specification of a logical schema  It is dependent on the choice of available DBMSs, database tools and operating environment. 10
  • 11. DBMS Architecture  DBMS describes the design of a database and its related elements  It describes  The Database  The Application Program that is used to access the database  The User who miniplates the data 11
  • 12. Database Application Architecture  Common architectures that are used to implement multi- user database management systems  Tele-processing  File-Server Architecture  2-tier Architecture  3-tier Architecture 12
  • 13. Tele-Processing / Mainframes  The traditional architecture for multi-user systems  There is one computer with a single central processing unit (CPU) and a number of terminals  User terminals are typically ‘dumb’ ones  i.e. incapable of functioning on their own.  User terminals are just cabled to the main computer. 13
  • 14. Disadvantage of Tele-Processing  The architecture placed a tremendous burden on the central computer  The central computer had to  Run the application programs  Run the DBMS  Carry out a significant amount of work on behalf of the terminals (such as formatting data for display on the screen) 14
  • 15. File-Server Architecture  Processing is distributed over the network  Typically a local area network (LAN).  Each workstation runs its own  Application  DBMS  Applications and the DBMS request files from the file- server when necessary  The file-server holds the files required by applications and the DBMS.  The file-server acts simply as a shared hard disk drive 15
  • 17. File-Server Architecture (cont.)  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. 17
  • 18. 2-tier Database 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 18
  • 19. 2-tier Database Architecture (cont.)  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 19
  • 20. 2-tier Database Architecture (cont)  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 20
  • 21. 2-Tier Architecture DATABASE Step 1. Client application send request for data Step 2. • Retrieve the data from the database • Manipulating data according to the client’s request • Send back results to the client Step3: Display results (Data) to the client Network
  • 22. 3-tier Application Architecture  The Application logic is run in two locations  This is the most commonly used architecture for web applications  The client is run on the user's local computer  Also called Thin Client  Focused on displaying results to the user  The business logic is located in server applications running on a server 22 Client Application Server Database Server Database
  • 23. 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 23
  • 24. 3-Tier Architecture DATABASE Network Middel Tier (Business logic) Client side interface or browser Storage  Client Services - Provide the user interface and preliminary processing.  Check / Validation of data  Make sure that the data is in the proper format,  Data services - Handle the data storage, retrieval and processing.