N-Tier Architecture: Data Access Layer

In an N-Tier architecture, the data access layer consists of components that aid one in the process of accessing the database. When it is used correctly, the data access layer serves as an abstract level for the structures of the database. Simple changes that are made to the database and to tables and other components will not effect the rest of the application – the data access layer will not allow this to happen! The various layers of the application send their data requests to this layer, and this layer… Read More

N-Tier Architecture: The Business Rules Layer

The Business Rules Layer in an N-Tier architecture is that layer that contains the Business logic and / or Business rules of the application. Reserving a separate layer strictly for Business logic in an N-Tier architecture is a major advantage, in that any changes that need to be made to Business rules can be made here without having any effect on other applications. Assuming that the interface among the different layers stays the same, changes that are made to the functionality / processing logic in the Business Rules Layer can… Read More

N-Tier Architecture Presentation Logic Layer

The Presentation Layer in an N-Tier structure is commonly referred to as the “client” layer. It consists of parts that are used to present data to an end user. Examples of components on the Presentation Layer might include edit boxes, labels, text boxes, grids, buttons, Windows or Web forms, or more. The Presentation Layer can be either Windows based or Internet based. What an Internet Based Presentation Layer Looks Like Let us take a look of a correctly formatted Presentation Layer. This one consists of a Web server (IIS, in… Read More

N-Tier Application Partitioning

Application partitioning is a vital process, as it provides one with the opportunity to clearly define an even distribution of an application’s presentation, process, and key data components – without which, you may find yourself feeling quite lost. The components may be distributed over several different physical machines, or across a vast array of memory address spaces.  Application partitioning serves to maximize the inherent benefits of a multi tiered computer model, in that it distributes application processing across all spectrums of the system’s resources. For those who wish to achieve… Read More

N-Tier Application Manageability

While it is a fact that N-Tier applications tend to provide almost limitless scalability, the desire to change or add new forms of functionality can present a challenge in more than one arena. Growth on a large scale can make capacity planning quite hard. When available resources have been exhausted by applications, then there must be some sort of provision made to borrow resources in order to support unexpected workloads. This is where manageability becomes key.  Manageability entails the sharing of resources, simplicity, and centralized management. Organizations are forced by… Read More

Client-Server Models and N-Tier Applications

One of principal objective of Client-Server methods is to provide data to an end user. However, Client-Server architectural methodologies are much more complex. Client-Server describes the process wherein a client program generates contact with a separate server for a particular reason on a networked system. The client, in these cases, is the requester for a service that the server will theoretically provide. In the course of the past two decades, we have witnessed the evolution of large scale, complex information systems. During this period, Client-Server computing models have come to… Read More

Three Tier Software Architectures

In this tutorial, you will learn about three tire software architectures, purpose, history, technical details, three tier architecture usage considerations, maturity, costs and alternatives.  The concept of Three Tier and multi tier architectures originated with the idea of Rational Software. Three Tier software is defined as client server architecture that feature the user interface, data storage, data access, and functional process logic maintained and developed as independent modules. Usually they are also located on different platforms. This architectural model is considered as both software design pattern and software architecture. Besides… Read More

What is N-Tier?

N-Tier applications are useful, in that they are able to readily implement Distributed Application Design and architecture concepts. These types of applications also provide strategic benefits to solutions at the enterprise level. It is true that two tier, client server applications may seem deceptively simple from the outset – they are easy to implement and easy to use for Rapid Prototyping. At the same time, these applications can be quite a pain to maintain and secure over time.  N-Tier applications, on the other hand, are advantageous, particularly in the business… Read More