1. Anforderungen & Domäne
Was soll das System leisten?
Funktionale AnforderungenNichtfunktionale AnforderungenDomain-Driven DesignBounded Contexts
Eine kompakte Referenz zu Architekturentscheidungen – von Anforderungen und Domänen über Monolithen, Microservices und Events bis zu Betrieb, Security und AI Systems.
Was soll das System leisten?
Wie wird das System grundlegend strukturiert?
Wie kommunizieren Komponenten?
Wie werden Daten gespeichert und konsistent gehalten?
Wie wird Software bereitgestellt und betrieben?
Wie wird das System robust und sicher?
Wie werden KI-Komponenten integriert?
| Stil | Grundidee | Stärke | Herausforderung |
|---|---|---|---|
| Monolith | Eine Anwendung, ein Deployment | Einfacher Start, geringe verteilte Komplexität | Kann bei großer Kopplung schwerer skalierbar werden |
| Modularer Monolith | Ein Deployment, klare interne Module | Gute Balance aus Einfachheit und Struktur | Modulgrenzen müssen konsequent eingehalten werden |
| Microservices | Viele unabhängig deploybare Services | Gezielte Skalierung und autonome Teams | Netzwerk, Monitoring und Datenkonsistenz werden komplexer |
| Event-Driven | Kommunikation über Events | Lose Kopplung und Asynchronität | Debugging, Reihenfolge und Event-Versionierung |
| Serverless | Managed Functions und Events | Wenig Infrastruktur-Overhead | Vendor Lock-in, Laufzeit- und Observability-Themen |