BIM222 InternetProgramming Week2
BIM222 InternetProgramming Week2
Outline
§ Web Applications: An Overview
§ Modern Web Applications
§ Historical Perspective to Web Applications
§ Web Application Characteristics
§ Web 1.0, Web 2.0, Web 3.0
§ What is a Web Application?
§ Web Apps – Architecture (Model)
§ Web Apps – Definition
§ Advantages and Disadvantages
§ Evolution of Web Apps
§ n-Tier Architecture
1
3/9/21
https://tr.hotels.com/
https://www.tripadvisor.com/
http://www.uvelanghe.it/it/
https://www.coursera.org/
http://www.vakifbank.com.tr/
https://www.bing.com/
https://www.google.com.tr/
§ Historical Perspectives
https://player.vimeo.com/video/2696386
2
3/9/21
Outline
§ Web Applications: An Overview
§ Modern Web Applications
§ Historical Perspective to Web Applications
§ Web Application Characteristics
§ Web 1.0, Web 2.0, Web 3.0
§ What is a Web Application?
§ Web Apps – Architecture (Model)
§ Web Apps – Definition
§ Advantages and Disadvantages
§ Evolution of Web Apps
§ n-Tier Architecture
3
3/9/21
4
3/9/21
Outline
§ Web Applications: An Overview
§ Modern Web Applications
§ Historical Perspective to Web Applications
§ Web Application Characteristics
§ Web 1.0, Web 2.0, Web 3.0
§ What is a Web Application?
§ Web Apps – Architecture (Model)
§ Web Apps – Definition
§ Advantages and Disadvantages
§ Evolution of Web Apps
§ n-Tier Architecture
5
3/9/21
1:request
6
3/9/21
§ Examples are
§ Web Mail
§ Online retail stores
§ Online banks
§ Online auctions
§ Wikis
§ Blogs
§ Document Storage
7
3/9/21
8
3/9/21
Outline
§ Web Applications: An Overview
§ Modern Web Applications
§ Historical Perspective to Web Applications
§ Web Application Characteristics
§ Web 1.0, Web 2.0, Web 3.0
§ What is a Web Application?
§ Web Apps – Architecture (Model)
§ Web Apps – Definition
§ Advantages and Disadvantages
§ Evolution of Web Apps
§ n-Tier Architecture
Web 1:request
Network Web
Client
2:response Server
(Browser)
Client-Server Architecture
9
3/9/21
1:request
Web
Network Web Web
Client
Server Pages
(Browser) 2:response
Web Application
Web 1.0
100,000 websites
(read-only Web)
published
content
user-
generated
content
50,000,000 users
10
3/9/21
1:request
Web
Network Web Web
Client
Server Pages
(Browser) 2:response
Web Application
11
3/9/21
Connector Database
Web 1:request
Web Scripts/
Client Network
(Browser) Server Services
2:response
Connector Database
Scripts/
Services
intelligence
published
content
user-
generated
content user- user-
published published
generated generated
content content content
content
12
3/9/21
Outline
§ Web Applications: An Overview
§ Modern Web Applications
§ Historical Perspective to Web Applications
§ Web Application Characteristics
§ Web 1.0, Web 2.0, Web 3.0
§ What is a Web Application?
§ Web Apps – Architecture (Model)
§ Web Apps – Definition
§ Advantages and Disadvantages
§ Evolution of Web Apps
§ n-Tier Architecture
Abstraction
§ Software engineers use abstraction to manage complexity
§ Abstraction involves representing the essential features of a software design or
component, without including the background details
§ Design Patterns provide useful abstractions for building software systems
13
3/9/21
Design Patterns
§ Abstract templates that can be applied over and over again in many different
contexts
§ It's important to understand that design patterns are not actual code
§ They're design ideas that just commonly occur
§ Well known design patterns are often used, alone or in combination, to simplify a
complex design
§ Design patterns provide a way to communication the parts of a design
Web 1:request
Network Web
Client
2:response Server
(Browser)
14
3/9/21
n-Tier Architecture
A client-server architecture in which application functionality is further
partitioned into separate tiers related to:
1. Presentation
2. Application processing
3. Data management
Separation of Concerns
§ Each tier address a separate “concern”, encapsulated within a well-
defined interface
§ This allows each tier to be developed, modified or replaced, without
affecting other tiers
§ Encapsulation greatly simplifies development and maintenance of
software systems
15
3/9/21
16
3/9/21
Scripts/
Services
Connector Database
Web 1:request
Web Scripts/
Client Network
(Browser) Server Services
2:response
Connector Database
Scripts/
Services
Business Data
Client Web Presentation Data
Logic Access
Tier Tier Logic Tier Tier
Tier Tier
17