Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

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

Related documents


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. 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) 2. 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 developed concurrently by different team of programmers coding in different languages from the other tier developers. Because the programming for a tier can be changed or relocated without affecting the other tiers, the 3-tier model makes it easier for an enterprise or software packager to continually evolve an application as new needs and opportunities arise. Existing applications or critical parts can be permanently or temporarily retained and encapsulated within the new tier of which it becomes a component. Definition of N-Tier Architecture N-tier architecture is also called multi-tier architecture because the software is engineered to have the processing, data management, and presentation functions physically and logically separated. That means that these different functions are hosted on several machines or clusters, ensuring that services are provided without resources being shared and, as such, these services are delivered at top capacity. The “N” in the name n-tier architecture refers to any number from 1. Not only does your software gain from being able to get services at the best possible rate, but it’s also easier to manage. This is because when you work on one section, the changes you make will not affect the other functions. And if there is a problem, you can easily pinpoint where it originates. A More In-Depth Look at N-Tier Architecture N-tier architecture would involve dividing an application into ​three different tiers​. These would be the 1. logic tier, 2. the presentation tier, and 3. 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 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 tier ● Client 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/
Docsity logo



Copyright © 2024 Ladybird Srl - Via Leonardo da Vinci 16, 10126, Torino, Italy - VAT 10816460017 - All rights reserved