Simon Brown
Schlüsselwerke: Software Architecture for Developers (2012), C4 Model (c4model.com)
Die prägende Idee
Abschnitt betitelt „Die prägende Idee“Softwarearchitektur ist schwer zu kommunizieren, weil alle unter „Architekturdiagramm” etwas anderes verstehen. Das C4-Modell gibt vier klare Abstraktionsebenen:
- Context: Das System und seine externen Akteure
- Container: Deploybare Einheiten (Webserver, DB, Message Queue)
- Component: Interne Komponenten eines Containers
- Code: Klassen/Interfaces (optional, oft automatisch generiert)
Was in Projekten relevant wurde
Abschnitt betitelt „Was in Projekten relevant wurde“- Context-Diagramm als Gesprächsbasis: Wer nutzt das System? Mit welchen externen Systemen kommuniziert es? Das C4-Kontext-Diagramm beantwortet das in einer Seite.
- Container-Diagramm für Deployment-Entscheidungen: Wie viele Services gibt es? Wie kommunizieren sie? Wer hostet was?
- Keine Tool-Abhängigkeit: C4 funktioniert mit PlantUML, Structurizr, Mermaid, oder auf dem Whiteboard.
Die praktische Lehre
Abschnitt betitelt „Die praktische Lehre“Architektur muss kommunizierbar sein. Nicht nur für Senior-Entwickler. Auch für Product Owner, neue Teammitglieder, Stakeholder. Das C4-Modell gibt einen gemeinsamen Rahmen, der skaliert — von High-Level bis Detail.
In Taskly: Der Nx-Dependency-Graph ist de facto das Container-Diagramm. Es fehlt nur die explizite C4-Dokumentation.