Tutorials
Application Development
Three Tier Software Architectures
Three Tier Software Architectures Purpose and History
Three Tier Architecture usage considerationsIn 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 the advantages that typically come with modular software with well defined interfaces, Three Tier systems are designed to allow any of its tiers to be upgraded or replaced without interfering with the other tiers or requiring a major change in technology. For instance, if one were to change their operating system to UNIX from Microsoft Windows, only the user interface code would be affected.
The user interface generally runs on a desktop computer, usually a PC, or a work station. It utilizes a normal graphical user interface. Its functional process logic might consist of one or several different modules running on a single application server or workstation. An RDBMS on a database server will contain the data storage logic. The center tier may itself be multi tiered – if this is the case, then the architecture is referred to as n-tier architecture.
Three Tier Architecture contains the following tiers or levels:
1. Presentation
2. Application/Logic/Business Logic/Transaction
3. Data
In the field of Web development, Three Tier is often employed in reference to web sites. In particular, Electronic commerce web sites are used in this system. This type of web site is usually built utilizing the following Three Tiers:
1. A front end web server, which serves static content
2. The middle level is typically an Application server. It might use, for example, a Java EE platform.
3. A back end Database, which will contain both the Database management system and the Data sets. This manages the data and provides access to it.
Next Page: Three Tier Software Architectures Purpose and History