Traits

A monolithic application has a number of traits:

  • Contains the whole or a big amount of business logic
  • Accesses persistency services
    • Databases
    • Caches
    • Assets

In general terms, a monolith could be internally structured in a number of modules, which encapsulates code and data that implement a particular functionality.

For the purpose of further analysis, let's assume that a monolith has all the business logic and data access logic combined in one. This doesn't mean that the monolithic application includes the persistency services, but that it merely consumes them.