SENG2220 Web Development II
SENG2220 Web Development II
SENG2220 Web Development II
Web Development II
1
2
Tiered Architectures
System
A group of interrelated elements forming a collective
entity
Architecture
A style and method of design and construction
3
An architectural history of
computing
1 tier architecture
monolithic Information Systems
presentation, application logic, and resource management
were merged into a single tier
2 tier architecture
separation of presentation tier from other 2 tiers (app +
resource)
became popular as 'client/server' systems
3 tier architecture
can be achieved by separating RM (resource
management) from application logic tier
4
Tiers of an architecture
<html>
...
</html>
browser
Presentation
tier
Application
logic tier
Resource
management tier
Client
i
n
f
o
r
m
a
t
i
o
n
s
y
s
t
e
m
Visualise
Calculate
Store
5
Presentation Tier
Any IS needs to communicate with external entities,
human users or other computers
Allows these entities to interact with the system
Implemented as a GUI interface
Referred to as the client of the IS which is not correct
Example:
Systems accessed by web browsers using plain HTML
documents
The client is a web browser that only displays information
prepared by the Web server
The presentation layer in this case is the Web server
How the data should appear to the user and how the user
should interact with the interface
6
Application Logic Tier
IS do more than information delivery, they perform data
processing (Business Logic & calculation) behind the
results being delivered
Example:
A program that implements a withdrawal operation from a bank
This program takes the request, checks whether there is enough
funds, verifies whether withdrawal limits are exceeded, creates a
log entry for the operation, performs the operations against the
current balance and gives approval for handing out the money.
Here the algorithms are implemented
This tier is often referred to as
Services
Business logic
Business rules
Server
7
Resource Management Layer
IS needs data to work with
Data can reside in databases or other information
repositories
Deals with and implements different data sources of
Information Systems
Also referred to as the data layer, which indicates that it is
implemented using a Database Management System
From the banking example:
The RM layer could be the account database of the bank
Can also be a gateway to recursively using other ISs
8
1 Tier Architectures
Mainframe-based and the system took place through
dumb terminals
Monolithic Information Systems
Presentation, application logic, and resource
management were merged into a single tier
Many of these 'old' Systems are still in use!
Due to its monolithic nature it did not provide an entry
point from the outside except the channel to the dumb
terminals
Considered as black box
9
Design of 1 Tier
Architecture
Presentation
layer
Application
logic layer
Resource
management layer
Client
i
n
f
o
r
m
a
t
i
o
n
s
y
s
t
e
m
Advantages:
easy to optimise performance
no context switching
no compatibility issues
no client developement,
maintainance and deployment cost
Disadvantages:
monolithic pieces of code (high
maintainance)
hard to modify lack of
documentation and qualified
programmers
lack of qualified programmers for
these systems
10
2 - Tier Architectures
fig 1.7
p.12
Client
I
n
f
o
r
m
a
t
i
o
n
s
y
s
t
e
m
Resource management layer
Application logic layer
S
e
r
v
e
r
Presentation layer
11
2 - Tier Architectures
Coming of PC was the real push to 2-tier architectures
Separation of presentation layer from other 2 layers (app +
resource)
Client/server systems with thin clients/fat clients
Use RPC (Remote Procedure Call) to communicate between
tiers
Need for standardisation for inter-tier communication
Advantages
portability
no need for context switches or calls between component for key
operations
Disadvantages
limited scalability
legacy problems (blown up clients)
12
3 - Tier Architectures
i
n
f
o
r
m
a
t
i
o
n
s
y
s
t
e
m
resource management layer
application logic layer
middleware
client
presentation
layer
13
3 - Tier Architectures
The former created islands of information where a set of
clients could communicate with a server but not with other
servers
3-tier made it technically possible to integrate different servers
Separating RM (resource management) from application logic
layer
Additional middleware layer between client and server
integration logic
application logic
Lead to the introduction of clear RM layer interfaces
Good at dealing with integration of different resources
14
3 - Tier Architectures
Advantages
scalability by running each layer on a different server
scalability by distributing AL (application logic layer) across many
nodes
additional tier for integration logic
Flexibility
Disadvantages
performance loss if distributed over the internet
problem when integrating different 3 tier systems
15
3 - tier Architectures
i
n
f
o
r
m
a
t
i
o
n
s
y
s
t
e
m
resource management layer
application logic layer
middleware
client
presentation
layer
GUI clients
C++, VB,
Java
Middlewar
e
Server
Databases Legacy Systems
16
Middleware
Middleware refers to the software which is common to multiple
applications and builds on the network transport services to
enable ready development of new applications and network
services.
Middleware typically includes a set of components such as
resources and services that can be utilised by applications
either individually or in various subsets.
Examples of services: Security, Directory and naming, end-to-end
quality of service, support for mobile code.
Examples:
OMGs CORBA
J2EE - Java 2 Enterprise Edition
Microsofts .Net
17
Middleware features
Allows communication
through a standard language
across different platforms
between legacy and modern applications
Takes care of
transactions between servers
data conversion
authentication
communications between computers
18
Middleware features
Provides runtime environment for components in the middle-
tier
Component lifecyle and management
Transaction, event and security services
Provides connections to databases, mainframes and legacy
systems
Separates client-tier from the data source
Clean separation of user-interfaces and presentation logic from
the data source
19
n -tier
fig 1.12 p.
20
i
n
f
o
r
m
a
t
i
o
n
s
y
s
t
e
m
resource management layer
Web server
HTML filter
presentation
layer
Web browser
client
application logic layer
middleware
2 cases of n tier
Systems linked with
added connectivity
through the internet
Resource layer is a
full fledged 2 - or 3 -
tier system
20
General benefits of adding
tiers
With growing number of tiers one gains:
flexibility
functionality
possibilities for distribution
But:
Each tier increases communication costs
Complexity rises leading to higher cost and risk
Higher complexity of development
Higher complexity of management and tuning
Redundency increases
Questions