5. Monolith
Microservices
Upfront planning
Knowledge of how things integrate
Solving the immediate requirements
Simple to maintain
Inflexible
‘Technical debt’
Small specialised services
Versatility
Simple to fix bugs
Can be hard to describe/represent
Ever growing
Easy to replace components