Basic Of N Tier Application Architecture example essay topic

768 words
It all started with solitary computers that were accessed by users though terminals. This was a single-tier architecture the programs and data was used only on one machine. The wide-spread popularity of desktop computer has lead to two-tier architecture or client-server systems; workstations has split some work with back-end servers, usually by running the program and leaving servers to carry on with more general and important tasks like company databases. This differentiation in function worked quite well and was perceived as positive. However, extensive use of the client-server architecture has revealed some inborn limitations.

First, roll out and upgrade ordeals client software must be installed and managed on a potentially large number of separate, diverse clients across the entire network. Software installations, updates or replaces can unreasonably costly in terms of money, efforts and downtime. Furthermore, server failures and consequent downtime have become characteristic feature of client-server architecture. Consequently, three-tier systems has been developed to address some of the issues pertinent to client-server architecture. Actually, there are a number of reasons for adding another layer, and two of them are thin clients and distributed processing.

In a typical three-tier architecture, the first layer still handles the database or other centralized data stores; the second layer is where specialized application servers running the programs and / or business logic is run; and the third layer is the client. In the thin client model, the client part is nothing more than the user interface (UI). Here, the client layer is precisely thin; there is not much to maintain, because the business logic is implemented in another layer, typically with the help of some form of middle ware product, such as an application server. Actually, if a Web browser employed as a client UI, it can greatly reduce the need to program a custom client, making the applications accessible to a wide range of client types and platforms. Moreover, hardware demands on client part is reduced as well, anything that can run a Web browser is suitable, including PCs, Macs, Network Computers, Unix workstations and Java stations. This boosts portability across platforms, and also allows organizations to better utilize older computers even with most recent state-of-the-art enterprise applications.

In addition to the above-mentioned advantages, middle-tier solution confines development, deployment and maintenance of most of the code to a limited number of dedicated application servers, which is much easier compared to serving multitude of desktops. In a properly implemented three-tier system back-end and middle-tier services can handle the details of data replication and synchronization and automatic load-balancing, providing redundant number of client UI and database copies to cover shortages in case of a component failure. This makes the system more failure-proof, stable and reliable for the end user. Basics of N-tier Application architecture Since no n-tier approach is possible without corresponding application architecture, it is essential to know the basic of n-tier application architecture. As can be seen in the picture below, typical n-tier architecture has 5 layers or tiers: data layer, data access layer, business layer, presentation logic layer and presentation tier.

Data layer described above is an important part. Although theoretically the system can work without this tier, most system will require this part. This where Database Management System (DBMS), like SQL Server, Access, Oracle, My Sql reside. This layer is solely aimed to deal with the storage and retrieval of information. It doesn't care about how you plan on manipulating or delivering this data. Data access layer accommodates interfaces for data access.

These can be generic like method for creating and opening a Connection object as well as specific ones like "save Product". This layer is only a reusable interface to the database. Business tier is the brain of your application; it includes things like the business rules, data manipulation, etc. For example, if you " re developing a search engine and you put rate / weight each matching item based on some custom criteria (say a quality rating and number of times a keyword was found in the result), place this logic at this layer.

When creating this layer, a developer should not be concerned with code or databases, but only with business logic of the application. At presentation tier the system meets its end user. The interface should provide the user with meaningful output, it can include standard ASP documents and Windows forms. Below is the drawing of a typical n-tier application architecture..