Questions tagged [three-tier]

The three-tier architecture model is a framework for logical design model; it segments an application's components into three tiers of services that correspond to logical layers of the application.

The three-tier architecture model is a framework for logical design model; it segments an application's components into three tiers of services. These tiers do not necessarily correspond to physical locations on various computers on a network, but rather to logical layers of the application.

A three-tier architecture is a client-server architecture in which the functional process logic, data access, computer data storage and user interface are developed and maintained as independent modules on separate platforms.

The three tiers are usually defined like this:

  • Presentation tier: this is the topmost level of the application. The presentation tier displays information related to such services as browsing merchandise, purchasing and shopping cart contents. It communicates with other tiers by which it puts out the results to the browser/client tier and all other tiers in the network. (In simple terms it is a layer which users can access directly such as a web page, or an operating systems GUI)
  • Application tier (also known as business logic, logic tier, or middle tier): the logical tier is pulled out from the presentation tier and, as its own layer, it controls an application’s functionality by performing detailed processing.
  • Data tier: the data tier includes the data persistence mechanisms (database servers, file shares, etc.) and the data access layer that encapsulates the persistence mechanisms and exposes the data. The data access layer should provide an Application Programming Interface (API) to the application tier that exposes methods of managing the stored data without exposing or creating dependencies on the data storage mechanisms. Avoiding dependencies on the storage mechanisms allows for updates or changes without the application tier clients being affected by or even aware of the change. As with the separation of any tier, there are costs for implementation and often costs to performance in exchange for improved scalability and maintainability.

During an application's life cycle, the three-tier approach provides benefits such as reusability, flexibility, manageability, maintainability, and scalability.

109 questions
3
votes
1 answer

Three-Tier Architecture Vs Repository Pattern

I am trying to use three-tier architecture and repository pattern in ASP.NET MVC project. But in some cases, the three-tier architecture and repository pattern look almost same. So I tried to study the followings to make it more clear: The…
AT-2017
  • 3,114
  • 3
  • 23
  • 39
3
votes
1 answer

Three-tier architecture using WCF

I have an app structured in two tiers (presentation and business logic in the client (WPF using MVVM) and data in one SQL server), but I'm facing the problem that it uses too much RAM in the client due to the need of a large collection of objects to…
Pinx0
  • 1,248
  • 17
  • 28
3
votes
2 answers

Where do models belong in my solution?

This is the first time I'm doing a web project using MVC and I'm trying to make it based on three layers : MVC, DAL (Data Access Layer) and BLL (Business Logic Layer). I'm also trying to use repositories and I'm doing it code-first. Anyway I've…
jony89
  • 5,155
  • 3
  • 30
  • 40
2
votes
3 answers

Can i say that MVP = 3 Tier Archi?

From last few days i have been searching the optimal architecture for my new web application, which would be devloped in ASP.Net using C#. Until now, i only find and study following 3 Three Tier Architecture (Note: By Tier i mean logical…
Jame
  • 21,150
  • 37
  • 80
  • 107
2
votes
2 answers

Entity Manager : 3 Tier/Layer Application Question

I'm trying to create a simple three tier project and I'm on track on implementing the Business Logic layer, right now, this is how my BL looks like //The Entity/BO public Customer { public int CustomerID { get; set; } public string…
dotnetlinc
  • 391
  • 3
  • 7
  • 18
2
votes
5 answers

Three-layered approach in PHP

I liked using three layers (data/business logic|services/ui) in Java and wish to apply this to a web site in PHP. What advice, links, tutorials could you suggest in this respect? P.S: I'm particularly interested in knowing how the domain/entity…
James P.
  • 19,313
  • 27
  • 97
  • 155
2
votes
2 answers

Three-tier architecture, Spring and Angular

I have a question about three-tier architecture. I have a app using Spring Boot and Angular. I wonder if : Presentation layer = angular Application layer = spring boot Or if there are TWO three-tier architecture : angular is one and spring boot…
Anne
  • 219
  • 2
  • 8
2
votes
0 answers

Spring MVC and Three Tier Architecture

Does this correctly potray the relationship between Spring MVC and three-tier architecture? Should Model be in Data Access Layer?
user3508140
  • 285
  • 2
  • 18
2
votes
2 answers

ASP.NET MVC Three Tier - what's everyone else doing?

When I start work on a new web application I tend to reach for the same tried & tested architecture of ASP.NET MVC, BLL (consisting of a set of services that contain all business logic) and a DAL (consisting of a set of repositories that facilitate…
John1221
  • 1
  • 1
2
votes
3 answers

Model-View-Presenter and Three-Tier?

What is the difference between the two architectures: Model-View-Presenter and Three-Tier? I understand the definitions of each when read individually, but I can't readily see how they're different. Is it desktop vs web? I am currently developing…
Who8MyLunch
  • 1,190
  • 14
  • 20
2
votes
0 answers

Entity Framework 6.0 - Implemeting Optimistic Concurrency with Timestamp Column

Background : I'm developing a ASP.Net Web Forms Application with EF 6.0 as Data Access. I 3 layers .. Website--> Business --> Data Access ( EF & EDMX is here).. I wanted to handle database concurrency in my code. My sample table would look…
2
votes
4 answers

Should Databases be used just for persistence

A lot of web applications having a 3 tier architecture are doing all the processing in the app server and use the database for persistence just to have database independence. After paying a huge amount for a database, doing all the processing…
Raju
  • 415
  • 5
  • 8
2
votes
5 answers

Which is the best and appropriate way to write the code in Winforms?

What is the best way to write the code ? (1) Like directly writing the code in the button_click() event. or (2) Make the function of that code which I write in button_click() event and write this function in one class and then that function I…
Harikrishna
  • 4,185
  • 17
  • 57
  • 79
2
votes
4 answers

What are the reasons I would need an MVC model on the browser client for a server based application?

Assumptions: I have a banking app with a Java-style web server. The Client side is written in JS with backbone and some other plugins. (The developers are fans of Angular, but they're not using that). My JavaScript developers have come to me…
hawkeye
  • 34,745
  • 30
  • 150
  • 304
2
votes
2 answers

Exception handling best practices in multi-tier architecture

I have an application with three-tire architecture. And I don't understand how to work with exceptions in this context. I collected some questions: 1 . Do I need to create a generic exceptions, like PersistentException, and make all DAO classes…
WelcomeTo
  • 19,843
  • 53
  • 170
  • 286