The following four layers are the most common layers in a logical multilayered architecture for an information system with an object-oriented design:
- Presentation Layer (a.k.a. UI Layer, View Layer, Presentation Tier.)
- Application Layer (a.k.a. Service Layer or GRASP Controller Layer )
- Business Layer (a.k.a Business logic layer (BLL))
- Infrastructure Layer (Data access layer, Persistence layer, Logging, Networking, and other Services which are required to support a particular Business Layer.)
Some common purposes of the above four layers are for example described in the book about domain-driven design at page 68-74, which is a book that otherwise is focused on describing the Domain layer
Sometimes there is no explicit distinction between the Business Layer and the Application Layer, e.g. the Application Layer is considered as being a part of the Business Layer. On the other hand, it is also possible to even further divide the Application/Business Layers into more layers. For example, if the Model View Presenter pattern is used, then you can consider the Presenter Layer as being a layer between the User Interface Layer and the Application Layer.
The Business Layer can also use a Business Infrastructure Layer (aka low-level business 'services' layer) logically positioned between Business Layer(s) and Infrastructure Layer(s). That layer (BI) is very general and can be used in several application tiers, e.g. a CurrencyConverter.
The Infrastructure Layer may be partitioned into different levels (high-level or low-level technical services). Though, it is not unusual that developers only consider the persistence (data access) and therefore only talk about the Persistence Layer or the Data Access Layer (instead of an Infrastructure Layer or Technical services Layer). In other words, the other kind of technical services are not always being explicitly thought of as being part of any particular layer.
Regarding that all types are not always considered as belonging to one particular layer, according to the "POSA book" (Pattern-Oriented Software Architecture A System of Patterns, page 39) a relaxed layered system (as opposed to a strict layered system) can use so called "shared data definition modules" which are types not belonging in a particular layer.
Famous quotes containing the words common, layers, information, system, logical and/or architecture:
“The common idea that success spoils people by making them vain, egotistic, and self- complacent is erroneous; on the contrary, it makes them, for the most part, humble, tolerant, and kind. Failure makes people cruel and bitter.”
—W. Somerset Maugham (18741966)
“The force of a death should be enormous but how can you know what kind of man youve killed or who was the braver and stronger if you have to peer through layers of glass that deliver the image but obscure the meaning of the act? War has a conscience or its ordinary murder.”
—Don Delillo (b. 1926)
“On the breasts of a barmaid in Sale
Were tattooed the prices of ale;
And on her behind
For the sake of the blind
Was the same information in Braille.”
—Anonymous.
“Human beings are compelled to live within a lie, but they can be compelled to do so only because they are in fact capable of living in this way. Therefore not only does the system alienate humanity, but at the same time alienated humanity supports this system as its own involuntary masterplan, as a degenerate image of its own degeneration, as a record of peoples own failure as individuals.”
—Václav Havel (b. 1936)
“She thinks of the 4 a.m. lonelinesses that have folded
her up like death, discordant, without logical and
beautiful conclusion. Her teeth break off at the edges.
She would speak.”
—Joy Harjo (b. 1951)
“And when his hours are numbered, and the world
Is all his own, retiring, as he were not,
Leaves, when the sun appears, astonished Art
To mimic in slow structures, stone by stone,
Built in an age, the mad winds night-work,
The frolic architecture of the snow.”
—Ralph Waldo Emerson (18031882)