Understanding Multi-Tier Architecture in Software Development: One, Two, Three and N-Tier, Study Guides, Projects, Research of Web Design and Development

Explore the concept of multi-tier architecture in software development, including its various types such as one, two, and n-tier. Learn about the functionality of each tier (presentation, application, and data) and the benefits of using multi-tier architectures.

Typology: Study Guides, Projects, Research

2018/2019

Uploaded on 12/16/2019

nikhil-dahall
nikhil-dahall 🇳🇵

1 document

1 / 11

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Tier Architecture
A Tier Architecture
is a software architecture in which different software
components, organized in tiers (layers), provide dedicated functionality.
The most common occurrence of a multi-tier architecture is a three-tier
system consisting of a data management tier (mostly encompassing one or
several database servers), an application tier (business logic) and a client
tier (interface functionality). Novel deployments come with additional tiers.
Web information systems, for instance, encompass a dedicated tier (web
tier) between client and application layer.
Conceptually, a multi-tier architecture results from a repeated application
of the client/server paradigm. A component in one of the middle tiers is
client to the next lower tier and at the same time acts as server to the next
higher tier.
Software Architecture consists of One Tier, Two Tier, Three Tier and
N-Tier architectures.
A “tier” can also be referred to as a “layer”.
Three layers involved in the application namely Presentation Layer,
Business Layer and Data Layer. Let’s see each layer in detail:
Presentation Layer: It is also known as Client layer. Top most layer of an
application. This is the layer we see when we use a software. By using this
layer we can access the web pages. The main functionality of this layer is to
communicate with Application layer. This layer passes the information
pf3
pf4
pf5
pf8
pf9
pfa

Partial preview of the text

Download Understanding Multi-Tier Architecture in Software Development: One, Two, Three and N-Tier and more Study Guides, Projects, Research Web Design and Development in PDF only on Docsity!

Tier Architecture A Tier Architecture is a software architecture in which different software components, organized in tiers (layers), provide dedicated functionality. The most common occurrence of a multi-tier architecture is a three-tier system consisting of a data management tier (mostly encompassing one or several database servers), an application tier (business logic) and a client tier (interface functionality). Novel deployments come with additional tiers. Web information systems, for instance, encompass a dedicated tier (web tier) between client and application layer. Conceptually, a multi-tier architecture results from a repeated application of the client/server paradigm. A component in one of the middle tiers is client to the next lower tier and at the same time acts as server to the next higher tier. Software Architecture consists of One Tier, Two Tier, Three Tier and N-Tier architectures. A “tier” can also be referred to as a “layer”. Three layers involved in the application namely Presentation Layer, Business Layer and Data Layer. Let’s see each layer in detail: Presentation Layer: It is also known as Client layer. Top most layer of an application. This is the layer we see when we use a software. By using this layer we can access the web pages. The main functionality of this layer is to communicate with Application layer. This layer passes the information

which is given by the user in terms of keyboard actions, mouse clicks to the Application Layer. For example, login page of Gmail where an end user could see text boxes and buttons to enter user id, password and to click on sign-in. In a simple words, it is to view the application. Application Layer: It is also known as Business Logic Layer which is also known as logical layer. As per the gmail login page example, once user clicks on the login button, Application layer interacts with Database layer and sends required information to the Presentation layer. It controls an application’s functionality by performing detailed processing. This layer acts as a mediator between the Presentation and the Database layer. Complete business logic will be written in this layer. In a simple words, it is to perform operations on the application. Data Layer: The data is stored in this layer. Application layer communicates with Database layer to retrieve the data. It contains methods that connects the database and performs required action e.g.: insert, update, delete etc. In a simple words, it is to share and retrieve the data.

Two Tier application AKA Client-Server application The Two-tier architecture is divided into two parts:

  1. Client Application (Client Tier)
  2. Database (Data Tier) Client system handles both Presentation and Application layers and Server system handles Database layer. It is also known as client server application. The communication takes place between the Client and the Server. Client system sends the request to the Server system and the Server system processes the request and sends back the data to the Client System Three-Tier Architecture:

Three Tier application AKA Web Based application The Three-tier architecture is divided into three parts:

  1. Presentation layer (Client Tier)
  2. Application layer (Business Tier)
  3. Database layer (Data Tier) Client system handles Presentation layer, Application server handles Application layer and Server system handles Database layer. Benefits of a 3-tier app architecture The benefits of using a 3-layer architecture include improved horizontal scalability, performance and availability. With three tiers, each part can be
  1. the presentation tier, and
  2. the data tier. The separate physical location of these tiers is what differentiates n-tier architecture from the model-view-controller framework that only separates presentation, logic, and data tiers in concept. N-tier architecture also differs from MVC framework in that the former has a middle layer or a logic tier, which facilitates all communications between the different tiers. When you use the MVC framework, the interaction that happens is triangular; instead of going through the logic tier, it is the control layer that accesses

the model and view layers, while the model layer accesses the view layer. Additionally, the control layer makes a model using the requirements and then pushes that model into the view layer. This is not to say that you can only use either the MVC framework or the n-tier architecture. There are a lot of software that brings together these two frameworks. For instance, you can use the n-tier architecture as the overall architecture, or use the MVC framework in the presentation tier. What are the Benefits of N-Tier Architecture? There are several benefits to using n-tier architecture for your software. These are scalability, ease of management, flexibility, and security. ● Secure: You can secure each of the three tiers separately using different methods. ● Easy to manage: You can manage each tier separately, adding or modifying each tier without affecting the other tiers. ● Scalable: If you need to add more resources, you can do it per tier, without affecting the other tiers. ● Flexible: Apart from isolated scalability, you can also expand each tier in any manner that your requirements dictate. In short, with n-tier architecture, you can adopt new technologies and add more components without having to rewrite the entire application or redesigning your whole software, thus making it easier to scale or maintain. Meanwhile, in terms of security, you can store sensitive or confidential information in the logic tier, keeping it away from the presentation tier, thus making it more secure. Other benefits include: ● More efficient development. N-tier architecture is very friendly for development, as different teams may work on each

allow you to make sense of the Web application. If you need to log in, the presentation tier will show you boxes for username, password, and the submit button. After filling out and then submitting the form, all that will be passed on to the logic tier. The logic tier will have the JSP, Java Servlets, Ruby, PHP and other programs. The logic tier would be run on a Web server. And in this example, the data tier would be some sort of database, such as a MySQL, NoSQL, or PostgreSQL database. All of these are run on a separate database server. Rich Internet applications and mobile apps also follow the same three-tier architecture. And there are n-tier architecture models that have more than three tiers. Examples are applications that have these tiers: ● Services – such as print, directory, or database services ● Business domain – the tier that would host Java, DCOM, CORBA, and other application server object. ● Presentation tierClient tier – or the thin clients One good instance is when you have an enterprise service-oriented architecture. The enterprise service bus or ESB would be there as a separate tier to facilitate the communication of the basic service tier and the business domain tier. Advantages and Disadvantages of Multi-Tier Architectures Advantages Disadvantages ● Scalability ● Increase in Effort ● Data Integrity ● Increase in Complexity

● Reusability ● Reduced Distribution ● Improved Security ● Improved Availability View more: https://www.softwaretestingmaterial.com/software-architecture/