0% found this document useful (0 votes)
92 views4 pages

Concepts of Three-Tier Architecture Ali Tarhini

This document discusses the concepts of three-tier architecture. It describes the three tiers as the presentation tier (user interface), logic tier (application logic and business rules), and data tier (database). Each tier is independent and can be deployed separately. Benefits include maintainability, scalability, flexibility, and availability. An example is provided showing how data flows between the tiers, with the user interface in the presentation tier, application processing in the logic tier, and data storage in the data tier.

Uploaded by

shambhu gupta
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
92 views4 pages

Concepts of Three-Tier Architecture Ali Tarhini

This document discusses the concepts of three-tier architecture. It describes the three tiers as the presentation tier (user interface), logic tier (application logic and business rules), and data tier (database). Each tier is independent and can be deployed separately. Benefits include maintainability, scalability, flexibility, and availability. An example is provided showing how data flows between the tiers, with the user interface in the presentation tier, application processing in the logic tier, and data storage in the data tier.

Uploaded by

shambhu gupta
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

Concepts of Three-Tier Architecture | Ali Tarhini https://alitarhini.wordpress.com/2011/01/22/concepts-of-three-tier-arch...

Ali Tarhini

On software development and algorithms

Concepts of Three-Tier Architecture

JANUARY 22, 2011 3 COMMENTS (HTTPS://ALITARHINI.WORDPRESS.COM/2011/01/22/CONCEPTS-OF-THREE-


TIER-ARCHITECTURE/#COMMENTS)

i
41 Votes

This article is contributed by computer scientist & engineer Mohammad Atwi

Three-tier architecture (hĴp://en.wikipedia.org/wiki/Multitier_architecture) is an architectural deployment style that describe the


separation of functionality into layers with each segment being a tier that can be located on a physically separate computer. They
evolved through the component-oriented (hĴp://en.wikipedia.org/wiki/Component-based_software_engineering) approach,
generally using platform specific methods for communication instead of a message-based approach.

This architecture has different usages with different applications. It can be used in web applications and distributed applications.
The strength in particular is when using this architecture over distributed systems. In this course work, I will furthermore invest this
through the example of three-tier architecture in web applications.

Structure

Using this architecture the software is divided into 3 different tiers: Presentation tier, Logic tier, and Data tier. Each tier is
developed and maintained as an independent tier.

(hĴps://alitarhini.files.wordpress.com/2011/01/3tier.png)
1-Presentation tier

This is the topmost level of the application. The presentation layer provides the application’s user interface (UI). Typically, this
involves the use of Graphical User Interface (hĴp://en.wikipedia.org/wiki/Graphical_user_interface) for smart client interaction, and
Web based technologies (hĴp://en.wikipedia.org/wiki/World_Wide_Web) for browser-based interaction. The presentation tier
displays information related to such services as browsing merchandise, purchasing, and shopping cart contents. It communicates
with other tiers by outpuĴing results to the browser/client tier and all other tiers in the network.

2-Logic tier (called also business logic, data access tier, or middle tier)

The logic tier is pulled out from the presentation tier and, as its own layer; it controls an application’s functionality by performing
detailed processing. Logic tier is where mission-critical business problems are solved. The components that make up this layer can
exist on a server machine, to assist in resource sharing. These components can be used to enforce business rules, such as business

1 of 4 1/9/2017 12:30 PM
Concepts of Three-Tier Architecture | Ali Tarhini https://alitarhini.wordpress.com/2011/01/22/concepts-of-three-tier-arch...

algorithms and legal or governmental regulations, and data rules, which are designed to keep the data structures consistent within
either specific or multiple databases. Because these middle-tier components are not tied to a specific client, they can be used by all
applications and can be moved to different locations, as response time and other rules require. For example, simple edits can be
placed on the client side to minimize network round-trips, or data rules can be placed in stored procedures.

3-Data tier

This tier consists of database servers, is the actual DBMS access layer. It can be accessed through the business services layer and on
occasion by the user services layer. Here information is stored and retrieved. This tier keeps data neutral and independent from
application servers or business logic. Giving data its own tier also improves scalability and performance. This layer consists of data
access components (rather than raw DBMS connections) to aid in resource sharing and to allow clients to be configured without
installing the DBMS libraries and ODBC drivers on each client. An example would be a computer hosting a database management
system (DBMS) (hĴp://en.wikipedia.org/wiki/Database_management_system), such as a Microsoft SQL Server
(hĴp://www.microsoft.com/sqlserver) database.

Components Interconnections

3 tier application architecture is characterized by the functional decomposition of applications, service components, and their
distributed deployment, providing improved scalability, availability, manageability, and resource utilization. During an
application’s life cycle, the three-tier approach provides benefits such as reusability, flexibility, manageability, maintainability, and
scalability. Each tier is completely independent from all other tiers, except for those immediately above and below it. You can share
and reuse the components and services you create, and you can distribute them across a network of computers as needed. You can
divide large and complex projects into simpler projects and assign them to different programmers or programming teams. You can
also deploy components and services on a server to help keep up with changes, and you can redeploy them as growth of the
application’s user base, data, and transaction volume increases.

Logic layer is moved outside the presentation layer and into the business layer as it enhances reuse. As applications grow,
applications often grow into other realms. Applications may start out as a web application, but some of the functionality may later
be moved to a smart client application. Portions of an application may be split between a web site and a web or windows service that
runs on a server. In addition, keeping logic helps aid in developing a good design (sometimes code can get sloppier in the UI).

The main benefits of the 3-tier architectural style are:

Maintainability. Because each tier is independent of the other tiers, updates or changes can be carried out without affecting the
application as a whole.
Scalability. Because tiers are based on the deployment of layers, scaling out an application is reasonably straightforward.
Flexibility. Because each tier can be managed or scaled independently, flexibility is increased.
Availability. Applications can exploit the modular architecture of enabling systems using easily scalable components, which
increases availability.

Consider the 3-tier architectural style if the processing requirements of the layers in the application differ such that processing in one
layer could absorb sufficient resources to slow the processing in other layers, or if the security requirements of the layers in the
application differ. For example, the presentation layer should not store sensitive data, while this may be stored in the business and
data layers. The 3-tier architectural style is also appropriate if you want to be able to share business logic between applications, and
you have sufficient hardware to allocate the required number of servers to each tier.

Three-tier Architecture Example

(hĴps://alitarhini.files.wordpress.com
/2011/01/3tier2.png)

1. Presentation Layer (hĴp://en.wikipedia.org/wiki/Presentation_Layer)

In the presentation layer the user interaction takes place as defined before. The user enters the address in the web browser and in the
browser the URL is decoded into protocol/host/file, i.e. host name converted to IP address (hĴp://en.wikipedia.org/wiki/IP_address).
Then an issue request is sent to remote server using appropriate protocol (usually HTTP).

Also a returned HTML from the logic tier might be accepted. In the presentation layer interaction with client side scripts (e.g. using
DHTML) is supported and user inputer of variety controls on the form are accepted.

2. Logic Tier

In the logic Tier the application’s functionality is done by performing detailed processing of data from presentation layer. Server
such as Appache (or IIS) or Server Script (such as PHP) can be used to support this.

With Server (Apache or IIS) the appropriate action to be taken is identified, such as fetching a file, or passing request to an
interpreter. Also it sends an output back to caller in MIME package. As such support for thousands for concurrent users,
multithreading (allow multiple processor to run concurrently) and caching (holding results in a temporary store to reduce

2 of 4 1/9/2017 12:30 PM
Concepts of Three-Tier Architecture | Ali Tarhini https://alitarhini.wordpress.com/2011/01/22/concepts-of-three-tier-arch...

recalculation) is achieved).

With Server script (example in PHP) interacting with server such as accessing input or generating input is done. It interprets the
requests according to business rules and past transactions from this client, and requests appropriate data from the persistence layer.
It also computes the derived data and creates HTML (or GIF…) for the page.

3. Data Layer

This tier consists of database servers. The interaction with the database is done using standard languages such as SQL queries using
database specific protocol over TCP/IP. The data structures (for example tables) are defined and modified themselves, that insertion,
updating and deleting of data for example. Data maintenance should be maintained with backup and recovered. Access to
compilation of queries should be optimized, with indexing or replication of tables. An example of technology using this would be
.NET that is built into the .NET framework, as ADO.NET contains a mechanism to query data out of the database and return it to the
caller in a connected or disconnected fashion.

Real life example of a web system explained above would be in Emails done using 3 Tier Architecture. Reading e-mail using a
Web-based interface, such as Hotmail, uses a three-tier architecture. The three tiers are:

(hĴps://alitarhini.files.wordpress.com/2011/01
/3tier3.png)

1. Presentation Layer: The client’s web browser that sends HTTP requests to the Web server.

2. Logic Layer: The Web server:

a. sends HTTP responses to the Web client

b. Translates the client’s HTTP requests into SMTP packets which are then sent to the Mail server.

3. Data Layer: The Mail server performs the following functionality, and when performed it is transformed to the Logic Layer.

a. When completed, an e-mail message is sent by the sender’s e-mail client as an SMTP packet to the local mail server.

b. The mail server’s message transfer agent next reads the packet’s destination address and sends it over the Internet to the
receiver’s mail server.

c. The destination mail transfer agent then stores the message in the receiver’s mail box.

d. When the receiver next accesses e-mail, his or her user agent contacts the local mail server which then downloads the message
to the receiver’s client computer.

References:

Using a Three-Tier Architecture Model, hĴp://msdn.microsoft.com/en-us/library/ms685068(v=vs.85).aspx (hĴp://msdn.microsoft.com


/en-us/library/ms685068%28v=vs.85%29.aspx)

Microsoft Application Architecture Guide, 2nd Edition, hĴp://msdn.microsoft.com/en-us/library/dd673617.aspx


(hĴp://msdn.microsoft.com/en-us/library/dd673617.aspx)

Three-Tier Application Using an XML Web Service, hĴp://msdn.microsoft.com/en-us/library/ms973829.aspx


(hĴp://msdn.microsoft.com/en-us/library/ms973829.aspx)

Enterprise Solution PaĴerns Using Microsoft .NET, hĴp://msdn.microsoft.com/en-us/library/ms998469.aspx?rssCatalog


(hĴp://msdn.microsoft.com/en-us/library/ms998469.aspx?rssCatalog)

Three-Layered Services Application, hĴp://msdn.microsoft.com/en-us/library/ff648105.aspx?rssCatalog (hĴp://msdn.microsoft.com


/en-us/library/ff648105.aspx?rssCatalog)

Business Data Communications and Networking, Jerry FiĵGerald, Alan Dennis

3 of 4 1/9/2017 12:30 PM
Concepts of Three-Tier Architecture | Ali Tarhini https://alitarhini.wordpress.com/2011/01/22/concepts-of-three-tier-arch...

FILED UNDER .NET, TECHNOLOGY TAGGED WITH BUSINESS LOGIC LAYER, DATABASE MANAGEMENT SYSTEM,
GRAPHICAL USER INTERFACE, IP ADDRESS, MICROSOFT SQL SERVER, MULTITIER ARCHITECTURE, PRESENTATION
LAYER, WORLD WIDE WEB

3 Responses to Concepts of Three-Tier Architecture

ranjeetbassi says:
June 6, 2011 at 11:55 pm
I do have to say that you explained the concepts so clearly that I am going to recommended your website to everybody. I have
been searching from three tier web architectures.

thanks for the well explained conceptss !!!!!!

Reply
Muhammad Faizan says:
October 7, 2012 at 10:00 am
you explain three tier architecture in best way.
also tell me about the difference between three schema and three tier

Reply
Pingback: Three Tier Web Architecture ← Digital Humanities

Create a free website or blog at WordPress.com.

4 of 4 1/9/2017 12:30 PM

You might also like