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?