Software Architecture

1. Layers

1.1. Second Most Minimal Strat

1.1.1. Presentation Layer

  • the front
  • mobile, web, desktop application …

1.1.2. Application Layer

  • Generic enablement of the software
  • neither business nor presentation
  • orchestrates the rest

1.1.3. Business/Domain Layer

  • the control flows
  • the domain specific intellect

1.1.4. Persistence/Data Access Layer

  • code necessary to access the database layer
  • SQL, ORMs

1.1.5. Database Layer

  • Core CRUD ops here
  • could be a file server/database server

1.2. Most Minimal Strat

1.2.1. Presentation

1.2.2. Business

  • ++application from above

1.2.3. Data

  • ++persistence from above

1.3. N-tier

  • usually synonyms for anything non-monolithic
Tags::cs: