Problem
Architecture diagrams are often either too vague (boxes and arrows) or too detailed (class diagrams). Stakeholders can't find the right level of detail for their decisions.
Also known as: c4, context-containers-components-code
A hierarchical notation for describing software architecture at four levels of abstraction, optimising for different audiences and decision contexts.
Architecture diagrams are often either too vague (boxes and arrows) or too detailed (class diagrams). Stakeholders can't find the right level of detail for their decisions.
None — text-based
Low — maintain with code changes
Low — intuitive hierarchy
Diagrams drift from reality (mitigate: generate from code, CI checks)
Over-documenting at component level for stable modules
Using C4 for concerns it doesn't address (security zones, physical deployment)