Zum Inhalt springen

Softwarearchitektur

Männliche Person, frontal, schaut in die Kamera; trägt kariertes Hemd über dunkelfarbigem T‑Shirt; heller Innenraum mit unscharfem Monitor oder Poster links und Fenster rechts.

von Richard Albrecht am 08.11.2026

Softwarearchitektur ist der grundlegende Aufbau einer Software. Sie legt fest, aus welchen Teilen eine Anwendung besteht, welche Aufgabe jeder Teil hat und wie die Teile miteinander sprechen.

Softwarearchitektur

Die Struktur einer Software aus Bausteinen, ihren Verantwortlichkeiten und Beziehungen, samt der Entscheidungen, die zu dieser Struktur geführt haben.
Beispiel: „Bei der Softwarearchitektur des Portals haben wir Kundendaten und Buchungen in getrennte Module gelegt, die nur über feste Schnittstellen reden.“

Verwandt: Technologie-Stack, die Wahl der Techniken, mit denen eine Architektur umgesetzt wird.

Welche Entscheidungen zur Softwarearchitektur gehören

Ob die Anwendung ein Monolith wird oder aus Microservices besteht, wo die Daten liegen, wie Frontend und Backend zusammenarbeiten, welche Systeme angebunden werden und wie die Anwendung später wachsen kann. Muster wie MVC geben dabei eine bewährte Ordnung vor.

Kennzeichen einer Architekturentscheidung ist, dass sie sich später nur mit großem Aufwand ändern lässt.

Warum die Softwarearchitektur früh zählt

Weil sie alle folgenden Entscheidungen prägt. Eine Anwendung, deren Teile von Anfang an sauber getrennt sind, lässt sich erweitern, testen und von neuen Leuten verstehen. Eine, in der alles mit allem verflochten ist, wird mit jeder Änderung langsamer zu bearbeiten.

Was hier am Anfang gespart wird, kommt später als technische Schulden zurück.

Softwarearchitektur bei Websites

Bei den meisten Websites ist die Architektur durch das CMS weitgehend vorgegeben, und das ist ein Vorteil. Spannend wird sie, sobald eigene Funktionen dazukommen, etwa ein Kundenbereich oder Anbindungen an Warenwirtschaft und CRM: Dort entscheidet sich, ob der eigene Code neben dem CMS sauber getrennt bleibt.

Siehe auch:

Monolith

Eine Anwendung, deren Teile alle in einem gemeinsamen Programm stecken und gemeinsam ausgeliefert werden.

#Programmiersprachen

Microservices

Eine Bauweise, bei der eine Anwendung aus vielen kleinen, eigenständigen Diensten besteht.

#Programmiersprachen

MVC (Model-View-Controller)

Ein Entwurfsmuster, das Anwendungen in Daten, Darstellung und Steuerung trennt.

#Programmiersprachen

Technologie-Stack

Die Kombination aus Sprachen, Frameworks, Datenbanken und Diensten, auf der ein Projekt läuft.

#Programmiersprachen

Technische Schulden (Technical Debt)

Der Aufwand, der sich ansammelt, wenn eine schnelle Lösung gewählt wird statt einer tragfähigen.

#Programmiersprachen

Refactoring

Die innere Form von Code verbessern, ohne sein Verhalten zu ändern.

#Programmiersprachen