Monolith
12 pages
-
Architectural Decomposition
concept
Modularity drivers (availability, scalability, deployability, testability, maintainability); scalability vs elasticity; component-based vs tactical forking; six decomposition patterns; architecture stories
-
Architecture Styles
style
Summary and comparison of all 8 styles; decision guide
-
Architecture Styles Comparison
comparison
All 8 architecture styles rated side by side; decision guide; monolith vs understanding-distributed-systems; partitioning type
-
Branch by Abstraction
pattern
Migration for deeply embedded capabilities: 5 steps; feature toggles; verify variant with automatic fallback
-
Decomposition Strategy: How Far to Break Up a System
comparison
How far to decompose: modular monolith → service-based → microservices; five decision factors (domain understanding, team structure, DevOps maturity, transaction requirements, scalability); recommended migration path; granularity disintegrators vs integrators; Ferrari anti-pattern
-
Fracture Planes
concept
Eight types of natural split points for monolith decomposition: business domain (primary), regulatory compliance, change cadence, team location, risk, performance, technology (sparingly), user personas; six forms of monolith; distributed monolith anti-pattern
-
Layered Architecture
style
Technical partitioning; simplest monolith; domain layer isolation as the DDD prerequisite; Smart UI anti-pattern; sinkhole anti-pattern; closed/open layers
-
Microkernel Architecture
style
Core system + plug-ins; single quantum; customisability-focused
-
Modular Monolith Architecture
style
Domain-partitioned single quantum; appropriate coupling via fitness function enforcement; intermediate migration step
-
Pipeline Architecture
style
Filter-and-pipe; technically partitioned; ETL/data processing; EIP treats Pipes and Filters as a messaging composition pattern
-
Software Architecture Patterns
source
*Software Architecture Patterns* — Mark Richards
-
Strangler Fig Pattern
pattern
Incremental migration pattern: identify → implement → redirect via proxy; HTTP/FTP/message variants; UI composition (page, widget, micro frontends); deployment ≠ release; feature freeze