Skip to content
Arquitetura de Software — Study

Part II — Architecture Styles

Chapter 11 — The Modular Monolith Architecture Style

Core ideas

  • Domain-partitioned, monolithic. Single deployment unit, but internally organized by domain modules with well-defined boundaries — not by technical layer.
  • Gives you many of the maintainability/modularity benefits of microservices without the distribution cost. A strong “start here” for domain-driven systems and a natural stepping stone toward services later.
  • Governance matters: without fitness functions enforcing module boundaries, a modular monolith degrades into a big ball of mud.

Trade-offs / when to use

You want clean domain boundaries, good maintainability/evolvability, and simple operations, and you don’t (yet) need independent deployment/scaling. Cheaper and simpler than microservices; better modularity than layered.

Self-check

0/3 answered