Themen

Einordnung, Orientierung und Denkrahmen für Softwarearchitektur

Softwarearchitektur entsteht nicht durch einzelne Patterns, Technologien oder Methoden.
Sie entsteht durch bewusste Entscheidungen, ein gemeinsames Verständnis und den Umgang mit unvermeidbaren Trade-offs.

Die folgenden Themen dienen der Einordnung und Orientierung.
Sie ersetzen keine Reviews oder Beratung, helfen aber dabei, Architekturfragen besser zu verstehen und fundierter zu diskutieren.

Domain-Driven Design (DDD)

Fachliche Komplexität verstehen und strukturieren

Domain-Driven Design hilft, komplexe fachliche Domänen sichtbar zu machen und Architektur daran auszurichten.

Die Themenseite ordnet DDD ein:

  • als Denkmodell statt Methodensammlung
  • mit Fokus auf Domänenverständnis und Entscheidungsfindung
  • klar abgegrenzt von Dogmen und Überfrachtung
→ Domain-Driven Design ansehen

CQRS & Event Sourcing

Mächtige Konzepte mit klaren Konsequenzen

CQRS und Event Sourcing sind spezialisierte Architekturkonzepte für bestimmte Problemklassen.

Diese Themenseite zeigt:

  • wann diese Konzepte sinnvoll sind
  • welche Konsequenzen sie mit sich bringen
  • warum sie keine Default-Architektur darstellen
→ CQRS & Event Sourcing ansehen

Hexagonale, Onion & Clean Architecture

Strukturierungsprinzipien statt Stil-Debatten

Hexagonale, Onion und Clean Architecture verfolgen denselben Kern, werden aber oft missverstanden.

Die Themenseite hilft:

  • Begriffe zu entwirren
  • Dogmen abzubauen
  • den Fokus auf Verantwortung und Struktur zu lenken
→ Architekturprinzipien ansehen

Architekturentscheidungen & Trade-offs

Bewusst entscheiden statt implizit festlegen

Architektur besteht aus Entscheidungen. Viele davon mit langfristigen Auswirkungen.

Die Themenseite beleuchtet:

  • warum es keine «richtigen» Architekturen gibt
  • wie Trade-offs entstehen
  • warum explizite Entscheidungen zentral sind
→ Architekturentscheidungen ansehen

Skalierbarkeit & Komplexität

Wachstum ermöglichen, ohne Systeme unbeherrschbar zu machen

Skalierbarkeit ist eines der meistgenannten Architekturziele und eine der häufigsten Ursachen unnötiger Komplexität.

Die Themenseite ordnet ein:

  • was Skalierbarkeit wirklich bedeutet
  • welche Arten von Komplexität entstehen
  • warum nicht jedes System skalieren muss
→ Skalierbarkeit ansehen

Technische Schulden

Bewusst eingehen, sichtbar machen und verantwortungsvoll managen

Technische Schulden sind ein natürlicher Teil realer Softwareentwicklung.

Diese Themenseite zeigt:

  • warum Schulden entstehen
  • warum sie mehr als Code betreffen
  • wie sie architektonisch eingeordnet werden sollten
→ Technische Schulden ansehen