Multi-Layered Application

UML Model Diagram Example

An example of UML model diagram representing a model of a layered application, based on the Microsoft Application Achitecture Guide, 2nd Ed.

According to the Guide, layers are concerned with the logical division of components and functionality, and do not take into account the physical location of components, whereas tiers describe the physical distribution of the functionality and components on separate servers, computers, networks, or remote locations. Layers can be located on different tiers, or they may reside on the same tier.

Application model shows several layers - presentation layer, services layer, business, data, and cross-cutting layers. All layers are represented as UML models.

UML model diagram of a multi-layered application.

Multi-layered application UML model diagram example.

Users and external systems are also represented as models, and communicate with presentation and services layers, correspondingly. Diagram also shows data sources such as relational databases and web service agents that provide access to data and external or remote services that are consumed by the application.

Cross-cutting layer contains common functionality that spans layers and tiers. This functionality typically supports authentication, authorization, caching, communication, exception management, logging and instrumentation, and validation. Such functionality is generally described as crosscutting concerns.