1
3- tier Architecture
Sanjeev Sarma, Webx
2
Topics Covered
• What is 3-tier Architecture?
• Evolution of 3-tier Architecture Development.
• What does 3-tier Architecture Offer You?
▫ Advantages & Disadvantages
• An Example of how to implement 3-tier
Architecture in .Net Platform Using C#
3
What is 3-tier Architecture?
• A three-way interaction in a client/Server
environment
▫ The User Interface is stored in the Client.
▫ The Business Application Logic is Stored in one or
more Servers.
▫ The Data is Stored in a Database Server.
4
5
Evolution to the 3-tier Architecture
Tiers we are going to
study
6
Single Tier Architecture
• Time of Huge “Mainframe”
• All Processing in Single
Computer
• All Resources Attached to
the same Computer
• Access Via Dumb Terminals
7
Single Tier – Advantages & Disadvantages
• Advantages
▫ Simple
▫ Efficient
▫ Uncomplicated
• Disadvantages
▫ Very Expensive
8
Dual Tier Architecture
• The Personal Computer
• Necessity of Providing
Personal Software
• The Client Server Model
was Born!!
• Logical System
Components – Most of
which are on the Client
9
Dual Tier – Advantages & Disadvantages
• Advantages
▫ Less Expensive than Mainframe
• Disadvantages
▫ The Connections to the Database Server are very
Expensive
▫ One can only connects a limited number of users to a
server before Database Server spends more time
managing connections than processing requests
▫ Cost-ineffective. Many users only use their
connections 2-3% of the time.
10
3-Tier Architecture
• These Applications runs on
the Traditional Client/Server
Model But from a Application
server.
• Client only Displays the GUI
and data, but has no part in
producing results
• Database Server Serves to
few Connections
11
3-Tier Advantages
• Scalability
▫ The Application Servers can be deployed on many
machines
▫ The Database no longer requires a connection from
every client.
• Reusability
▫ If a standard object is employed, the specific language
of implementation of middle tier can be made
transparent.
• Data Integrity
▫ The middle tier can ensure that only valid data is
allowed to be updated in the database.
12
3-Tier Advantages
• Improved Security
▫ Since the client doesn’t have direct access to the database,
Data layer is more secure.
▫ Business Logic is generally more secure since it is placed on
a secured central server.
• Reduced Distribution
▫ Changes to business logic only need to be updated on
application servers and need not to distributed on clients
• Improved Availability
▫ Mission Critical Applications can make use of redundant
application servers and redundant application servers, so it
can recover from network of server failures.
13
3-Tier Disadvantages
• Increased Complexity / Effort
▫ In General 3-tier Architecture is more complex to
build compared to 2-tier Architecture.
▫ Point of Communication are doubled.
14
Conclusions
• Complex business rules easy to implement in application
server layer.
• Business Logic off-loaded from database server and
client, which improve performance
• Changes to business logic automatically enforce by
server.
• All tiers can be platform independent.
• Superior Performance for medium to High Volume
Environments
15
3-Tier Application in ASP.NET
• The Program is organised into three major
distinctive tiers or layers:
▫ Presentation Layer (User Interface)
▫ Business Layer (Business Access Layer)
▫ Data Layer (Data Access Layer)
16
User Interface Layer
17
Presentation Layer
18
Business Access Layer - Properties
19
Business Access Layer
20
Data Access Layer
21
Presentation Layer
Creating an Object of
Property Layer
22
Presentation Layer
Creating an Object of
Business Layer
23
Presentation Layer
Data Object to Receive Data
sent by Business Layer
24
Presentation Layer
Obtaining ID from Property
Layer
25
Presentation Layer
Calling Business Layer
Function
26
Business Access Layer
Calling Data Layer Function
27
Data Access Layer
Result Object Declaration
28
Data Access Layer
SQL Query Definition
29
Data Access Layer
Creating Object to receive
data
30
Data Access Layer
Query Execution
31
Data Access Layer
Returning the Information
of the Database
32
Business Access Layer
Retuning the Information of
Data Layer
33
Presentation Layer
Returning Data From
Business Layer
34
Presentation Layer
Displaying Result
35
Questions & Answers
If Any?
36
Thank You!