liveBook · Manning

Modularity

As explained in Software Security for Developers

A modular monolith is a single application organized into well-defined independent modules that communicate through clean interfaces and own specific domains or features.

A modular monolith is one deployable application divided into independent modules with clear boundaries. Each module owns a domain’s data, business logic, and authorization rules, reducing the tangled dependencies found in nonmodular monoliths. section 17.2.1 section 17.3

For authorization, modular boundaries provide practical safeguards:

  • The Invoices module can enforce who may create, view, or approve invoices because it owns the relevant context. section 17.2.1
  • Rules remain encapsulated instead of being scattered across controllers, services, and helpers or centralized in one oversized security service. section 17.2.1
  • A single deployable unit preserves shared identity and permission context while module separation supports consistent enforcement, auditing, and testing. section 17.3 section 17.2.1

Invoice authorization

An Invoices module loads a user and an invoice, then applies context-aware rules such as whether user.department equals invoice.department. The module protects its own invoice resources rather than relying on unrelated application code. section 17.2.1

How Software Security for Developers covers it

How deep it goes
Explains module ownership, authorization placement, encapsulation, auditing, and testing, but does not specify implementation mechanics.
Examples
Uses Users, Invoices, Reports, and Teams modules plus a department-based invoice authorization decision.
What you can do after
Designs and audits module-local authorization without introducing distributed-service enforcement complexity.
How it connects
Connects authorization with RBAC, ABAC, ReBAC, encapsulation, and microservices.

Also explained in

Compare how 10 books explain modularity →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Software Security for Developers. The section links point to the parts of the book it draws on.