Dieser Beitrag beschreibt das Projekt DerArchitekturkompass.de: eine deutschsprachige Entscheidungshilfe, die 146 Konzepte der Softwarearchitektur in Alltagssprache erklärt, jedes mit einem durchgehenden Beispiel, einer animierten Ablaufgrafik und einer offenen Aufstellung der Vor- und Nachteile.

Warum Architekturwissen schwer zugänglich ist

Wer in einem IT Projekt mitredet, begegnet früher oder später Begriffen wie Circuit Breaker, Saga, CQRS oder Event Sourcing. Hinter jedem dieser Begriffe steht eine Entscheidung, die ein System über Jahre prägt: wie es mit Ausfällen umgeht, wie Daten zwischen Diensten abgeglichen werden und was ein Nutzer sieht, wenn ein Teil des Systems nicht antwortet.

Die verfügbaren Erklärungen dieser Begriffe helfen oft nur Fachleuten. Viele setzen Vorwissen voraus, erklären einen Fachbegriff mit dem nächsten oder springen direkt in Programmcode. Andere beschreiben ein Konzept anhand eines bestimmten Produkts, sodass unklar bleibt, was zum Konzept gehört und was zum Produkt. Fast immer fehlt der Teil, der für eine Entscheidung am wichtigsten ist: welche Vorteile ein Ansatz hat und wann er nicht passt.

Die Entscheidung für einen Architekturansatz trifft in der Regel der Architekt, oft zusammen mit dem Entwicklungsteam. Grundlage dafür sind die Anforderungen der anderen Beteiligten: Der Fachbereich legt fest, was das System leisten muss, Anforderungsanalysten beschreiben diese Anforderungen, und Projektleiter achten auf Budget und Termine. Viele Folgen eines Ansatzes betreffen den Fachbereich unmittelbar, etwa wie lange ein Kunde nach einer Änderung noch alte Daten sieht. Deshalb müssen auch diese Beteiligten verstehen, was ein Ansatz im System verändert.

Was der Architekturkompass ist

Der Architekturkompass ist eine Sammlung von derzeit 146 Architekturkonzepten.

Alle Konzeptseiten sind gleich aufgebaut:

  1. Zuerst wird die Grundidee kurz erklärt.
  2. Danach beschreibt die Seite den Ablauf ausführlich an einem Beispiel. Ein animiertes Diagramm zeigt dieses Beispiel Schritt für Schritt.
  3. Dann klärt die Seite, wann der Einsatz des Konzepts sinnvoll ist und wann nicht.
  4. Anschließend nennt sie typische Nachteile und typische Fehler.
  5. Zum Schluss verweist die Seite auf verwandte Ansätze, auf Quellen und, wo vorhanden, auf passende Werkzeuge.

Ablaufdiagramm zum Konzept Adapter: Eine Schadenanwendung prüft über einen Adapter eine Adresse bei einem alten Adressdienst

Die Beispiele stammen überwiegend aus dem Versicherungsalltag: ein Kundenportal, eine Schadenmeldung, ein Tarifrechner. So ist bei jedem Konzept zu sehen, welche Personen, Systeme und Daten es betrifft.

Die Konzepte lassen sich nach Thema oder über die Suche finden:

  • Nach Thema: 16 Themengruppen, von Grundlagen über Integration sowie Nachrichten und Ereignisse bis zu Sicherheitsarchitektur und Modernisierung.
  • Über die Suche: Die Suche berücksichtigt auch Alltagswörter, die auf der Konzeptseite nicht wörtlich vorkommen. Wer „langsamer Dienst“ eingibt, landet beim Circuit Breaker.



Einstieg über das eigene Anliegen

Startseite des Architekturkompasses mit der Frage „Was ist dir wichtig?“ und 21 Anliegen in sechs Gruppen

Wer ein Problem hat, kennt selten schon den Namen der Lösung. Deshalb beginnt die Startseite mit der Frage „Was ist dir wichtig?“. Darunter stehen 21 Anliegen in sechs Gruppen, formuliert als Ziel und nicht als Fachbegriff, zum Beispiel:

  • Lastspitzen abfangen
  • Bei Ausfällen weiterarbeiten
  • Doppelte Nachrichten nur einmal verarbeiten
  • Altsysteme schrittweise ablösen
  • ….

Ein Klick auf ein Anliegen zeigt die passenden Konzepte. Mehrere Anliegen lassen sich kombinieren; angezeigt werden dann nur Konzepte, die alle gewählten Anliegen erfüllen. Neben jedem Anliegen steht die Zahl der Konzepte, die nach einem Klick darauf übrig bleiben würden. Anliegen ohne Treffer sind ausgegraut. So ist schon vor dem Klick zu sehen, ob eine Kombination überhaupt Ergebnisse liefert.

Werkzeuge zu den Konzepten

Die Erklärung eines Konzepts kommt ohne Produktnamen aus. Wer ein Konzept umsetzen will, braucht aber irgendwann ein konkretes Werkzeug. Deshalb nennen viele Konzeptseiten im Abschnitt „Werkzeuge und Umsetzungen“ passende Werkzeuge, und der Architekturkompass hat neben den Konzepten einen zweiten Bereich mit 219 Open Source Werkzeugen in 13 Gruppen, von Nachrichtenplattformen über Datenbanken bis zu Sicherheit und Identität.

Werkzeugverzeichnis des Architekturkompasses mit 219 Werkzeugen, hier die Gruppe Nachrichtenplattformen

Jede Werkzeugseite zeigt, in welchen Konzepten das Werkzeug vorkommt und wofür genau.

Die Landkarte der Konzepte

Ausschnitt der Landkarte: Konzepte als Punkte in Kreisen je Thema, Linien verbinden verwandte Ansätze

Die Landkarte zeigt alle 146 Konzepte auf einer Karte, nach Themen gruppiert. Linien verbinden jedes Konzept mit seinen verwandten Ansätzen. So wird sichtbar, welche Konzepte zusammengehören. Auch auf der Landkarte lässt sich nach Anliegen filtern, und jeder Punkt führt zur Seite des Konzepts.

Vom Konzept zur Architekturentscheidung

Entwurf einer Architekturentscheidung (ADR) für das Konzept Autoscaling, mit Platzhaltern in eckigen Klammern

Viele Teams halten Architekturentscheidungen als Architecture Decision Record fest, kurz ADR. Ein ADR ist ein kurzes Dokument, das eine Entscheidung, ihren Anlass, die geprüften Alternativen und die Folgen beschreibt. Auf jeder Konzeptseite erzeugt die Schaltfläche „Als Architekturentscheidung übernehmen“ einen solchen Entwurf in Markdown. Er übernimmt aus dem Konzept das Problem, die verwandten Ansätze als Alternativen, die Abwägungen und die passenden Werkzeuge. Für die eigene Ausgangslage und die Begründung enthält er Platzhalter, die das Team selbst ausfüllt. Der Entwurf lässt sich kopieren oder als Datei speichern.

Merkliste und Druckfassung

Merkliste mit fünf gemerkten Konzepten und der Schaltfläche „ADR-Paket erstellen“

Jedes Konzept lässt sich auf eine Merkliste setzen. Die Merkliste wird nur im eigenen Browser gespeichert und braucht kein Benutzerkonto. Jede Konzeptseite lässt sich außerdem drucken oder als PDF speichern, etwa als Unterlage für eine Besprechung.

Was der Architekturkompass nicht ersetzt

Alle 146 Konzeptseiten wurden redaktionell durchgesehen: Text, Grafik und Animationsschritte wurden nebeneinander gelesen und auf denselben Fall abgestimmt. Diese Durchsicht ist aber keine fachliche Freigabe durch externe Fachleute. Der Architekturkompass erklärt Konzepte und ihre Abwägungen. Welcher Ansatz zu einem bestimmten System passt, hängt von dessen Anforderungen, Randbedingungen und Team ab. Diese Entscheidung treffen die Beteiligten selbst.

Fazit

Gute Architekturentscheidungen entstehen, wenn alle Beteiligten verstehen, welches Problem ein Ansatz löst und wann er nicht passt. Der Architekturkompass soll dieses Verständnis schaffen: mit einem konkreten Beispiel statt einer abstrakten Definition, mit einer Grafik, die denselben Fall zeigt, und mit Vor- und Nachteilen, die offen benannt werden.

Den Architekturkompass findest du unter DerArchitekturkompass.de.