Layered architecture is the art of dividing an application into different layers and applying rules to decide which code goes to which layer. Examples of layered architecture are MVC. Another example is: - Business layer ([[290220240839 - Domain Modeling]]): Encapsulates all business logic - [[290220241412 - Service Layer]]: Encapsulate all application use-cases and manages orchestration before handing over to the domain layer. - Interface layer: E.g Flask controllers, CLI, etc. They depend on the service layer.