As all of the components of the client-server architecture need to be connected over a network from server to server, performance problems arrive with bottlenecks on the server side of things. This problem could cause a system to be a failure or not be able to adapt well over time. A natural solution to this problem would be to try and remove those bottlenecks by splitting the server side of things into several servers, which all do different things with the data. This approach is called the multi-tiered architecture. The three-tiered architecture is the most common of these, and will be evaluated for its applicability to a banking software system.
The Tiers
The three “tiers” of the three-tiered system are the presentation layer, the domain layer, and the technical services layer. In a good three-tiered architecture, the layers will be coupled to each other as little as possible by using the Controller and Adapter software patterns. Because of this, the layers are very modular in form, which means that they should be able to easily swap out multiple user interfaces and technical services components (i.e. data …show more content…
The domain layer is the heart of the system; the other layers are periphery to the domain layer. This is the layer in which a product line can be developed. This is what the banks are really paying for when they ask for an accurate system; other components of the system are usually outside functional requirements and main business drivers for the project, and are easily contracted out. The domain layer also contains Controllers and Adapters which connect to the other layers in the proper way, which is what makes a three-tiered system so thin (i.e. makes it very modular and easily modifiable). It is also a channel through which data from the technical services layer reaches the presentation