3-Layer Application Architecture

Many applications use this traditional architecture and it may be ideal for apps with simple requirements.

Presentation

This layer represents the presentation, the content that is presented to end the user. The product page of a PS5 is an example of a presentation.

Business Logic

This layer encodes the real-world business rules that determines how an application can access, create, store, and change data. The PS5 product page provides the product ID to the Logic layer and requests recommended products.

Persistence

In this layer, information is stored and retrieved from a form of storage (ex. Database). The data passed to the Logic layer for processing and eventually is passed back to the user (Presentation layer).

A query (to get recommended products) is formed & passed to the Persistance layer to be executed.

Example Workflow

The query results containing the recommended products is returned to the Logic layer to be processed and eventually returned to the Presentation layer to be rendered.

Additional Info

While this is a traditional architecture, it is monolithic since the application can become too large and complex to make frequent changes over time. There are alternatives:

  • Microservice Architecture
  • Cloud native Architecture
  • Event Driven Architecture

Sources

  • IBM
  • Wikipedia

What tech stack do you use for development?