Eine Person öffnet ihr Kundenkonto, ändert die Lieferadresse und klickt auf „Speichern“. Kurz darauf bestätigt die Anwendung, dass die Änderung übernommen wurde. Der Vorgang wirkt wie eine einzelne Aktion. Technisch arbeiten dabei jedoch mehrere Teile der Software zusammen: Einer nimmt die Eingabe entgegen, ein anderer prüft sie, speichert das Ergebnis und meldet zurück, was tatsächlich geschehen ist.
Frontend: der Teil, den Menschen direkt erleben
Als Frontend wird der Teil einer Software bezeichnet, mit dem Menschen unmittelbar arbeiten. Im Browser umfasst es beispielsweise Formulare, Schaltflächen, Texte, Menüs und Rückmeldungen. Im Beispiel zeigt das Frontend die vorhandene Lieferadresse an, ermöglicht Änderungen und nimmt den Klick auf „Speichern“ entgegen.
Das Frontend ist deshalb nicht mit visuellem Design gleichzusetzen. Gestaltung ist wichtig, aber nur ein Teil seiner Aufgabe. Hinzu kommen die Steuerung von Abläufen, erste Prüfungen von Eingaben, barrierearme Bedienung und verständliche Zustände. Es sollte erkennbar sein, ob die Adresse gerade gespeichert wird, ob eine Angabe fehlt oder ob ein Problem aufgetreten ist.
Angular kann beispielsweise verwendet werden, um ein solches Browser-Frontend zu entwickeln. Die konkrete Technik ist für die Grundidee jedoch zweitrangig. Entscheidend ist, dass das Frontend zwischen Mensch und Anwendung vermittelt und eine fachliche Absicht in eine technisch verarbeitbare Aktion übersetzt.
Das Frontend verwaltet auch vorübergehende Zustände und kann während einer Anfrage einen Fortschritt anzeigen. Das hilft bei der Orientierung, ist aber noch keine fachliche Bestätigung. Erst die erfolgreiche Verarbeitung im Backend macht aus dem Zwischenstand ein gespeichertes Ergebnis; die Antwort informiert das Frontend darüber.
Das Frontend macht Software benutzbar. Das Backend macht ihre Ergebnisse verbindlich.
Backend: der Teil, der Ergebnisse verbindlich macht
Das Backend arbeitet im Hintergrund und ist nicht unmittelbar als Bedienoberfläche sichtbar. Es nimmt Anfragen entgegen, wendet fachliche Regeln – etwa zu erforderlichen Adressangaben und Berechtigungen – sowie technische Prüfungen an, liest oder verändert Daten und liefert ein Ergebnis zurück. Eine solche Anfrage kann etwa die Aufforderung enthalten, eine neue Lieferadresse zu speichern.
Das Backend prüft dabei, ob die Daten vollständig sind und ob die angemeldete Person die im Kundenkonto hinterlegte Adresse ändern darf. Erst wenn die Verarbeitung erfolgreich abgeschlossen ist, kann die Anwendung verlässlich bestätigen, dass die neue Adresse übernommen wurde.
Ein Backend ist nicht einfach nur eine Datenbank. Eine Datenbank bewahrt Informationen über den aktuellen Vorgang hinaus auf und stellt sie später wieder bereit, während das Backend die Regeln für den Umgang mit ihnen umsetzt. Spring Boot ist beispielsweise eine mögliche Grundlage für ein Backend, das solche Anfragen verarbeitet. Wie Angular ist auch Spring Boot ein Werkzeug; entscheidend ist die jeweilige Aufgabe.
Zu den Aufgaben eines Backends kann außerdem die Zusammenarbeit mit anderen Systemen gehören. Eine geänderte Adresse könnte beispielsweise für Versand, Abrechnung oder Benachrichtigungen relevant sein. Das Backend koordiniert solche Abläufe und sorgt dafür, dass nicht jedes Frontend eigene, möglicherweise widersprüchliche Regeln dafür entwickeln muss.
| Aspekt | Frontend | Backend |
|---|---|---|
| Hauptaufgabe | Bedienung und Darstellung | Verarbeitung und verbindliche Regeln |
| Typischer Ort | Browser, App oder lokales Programm | Server oder Hintergrunddienst |
| Typische Schnittstellen | Menschen und Backend-Schnittstellen | Frontends, Datenbanken und andere Systeme |
| Prüfungen | Schnell und benutzerfreundlich | Vollständig und maßgeblich |
| Im Beispiel | Zeigt Formular und Rückmeldung | Prüft und speichert die Adresse |
Was zwischen Klick und Bestätigung passiert
Frontend und Backend kommunizieren meist über eine API. Diese Programmierschnittstelle ist eine vereinbarte Form des Austauschs: Sie legt fest, wohin eine Anfrage geschickt wird, welche Angaben sie enthalten muss und wie das Backend Erfolg oder Fehler zurückmeldet.
- Formulareingabe: Die Person trägt Straße, Hausnummer, Postleitzahl und Ort ein.
- Anfrage des Frontends: Das Frontend sammelt die Eingaben und sendet sie strukturiert an die vorgesehene Schnittstelle.
- Prüfungen im Backend: Das Backend prüft Berechtigung, Vollständigkeit, Format und fachliche Regeln.
- Speicherung: Sind die Prüfungen erfolgreich, wird die neue Adresse dauerhaft gespeichert.
- Antwort und Anzeige: Das Backend meldet das Ergebnis zurück. Das Frontend zeigt eine Bestätigung oder einen verständlichen Fehlerhinweis.
Die API bildet dabei einen Vertrag zwischen beiden Seiten. Das Frontend muss wissen, welche Felder erwartet werden und welche Antworten möglich sind. Das Backend muss diese Vereinbarung verlässlich einhalten. Ändert sich die Schnittstelle, ohne dass die andere Seite darauf vorbereitet ist, kann ein technisch korrektes Einzelteil den gesamten Vorgang trotzdem unterbrechen.
Die sichtbare Reaktion einer Schaltfläche garantiert noch keinen erfolgreichen Vorgang. Die Oberfläche kann bereits anzeigen, dass sie die Eingabe angenommen hat, während die Speicherung noch läuft. Eine sorgfältige Anwendung unterscheidet deshalb klar zwischen „Eingabe angenommen“, „Verarbeitung läuft“ und „Änderung gespeichert“.
Auch Fehler gehören zum Ablauf. Bei ungültigen Angaben oder einer abgelaufenen Sitzung sollte das Backend einen eindeutigen Fehler melden. Bricht die Verbindung ab, kann der Ausgang zunächst unklar sein: Die Speicherung könnte erfolgt sein, obwohl keine Antwort ankommt. Das Frontend sollte dies kenntlich machen und einen sicheren nächsten Schritt anbieten, ohne technische Interna offenzulegen.
Warum manche Regeln doppelt geprüft werden
Einige Prüfungen finden sowohl im Frontend als auch im Backend statt. Das ist keine unnötige Wiederholung. Fehlt beispielsweise die Postleitzahl, kann das Frontend unmittelbar am Eingabefeld darauf hinweisen. Die Person erhält schnelle Hilfe, ohne erst auf die Verarbeitung im Hintergrund warten zu müssen.
Diese Prüfung ist jedoch nicht maßgeblich. Anfragen können fehlerhaft sein oder außerhalb der vorgesehenen Oberfläche erzeugt werden. Deshalb muss das Backend jede relevante Regel selbst prüfen. Nur dort kann verbindlich entschieden werden, ob eine Eingabe zulässig ist und ob die anfragende Person die Änderung vornehmen darf.
Frontend-Prüfungen verbessern damit Bedienbarkeit und Geschwindigkeit, ersetzen aber nicht die Kontrolle im Backend. Inhaltlich sollten beide Ebenen dieselben Erwartungen vermitteln. Wenn das Frontend einen Wert akzeptiert, den das Backend ohne verständliche Begründung ablehnt, entsteht unnötige Reibung.
Das Prinzip gilt nicht nur im Browser
Frontend und Backend werden oft anhand von Webseiten erklärt, das Prinzip ist aber nicht an einen Browser gebunden. Eine mobile App kann ebenfalls ein Frontend sein, das Daten an ein Backend übermittelt. Dasselbe gilt für ein Desktop-Programm oder eine textbasierte Bedienoberfläche im Terminal.
Auch vernetzte Geräte folgen häufig diesem Muster. Ein Sensor aus dem Bereich des Internets der Dinge, kurz IoT, erfasst Messwerte und sendet sie an ein Backend. Der Sensor ist dabei ein Datenlieferant; das sichtbare Frontend ist beispielsweise die App, die diese Werte verständlich darstellt.
Gemeinsam ist diesen Varianten die Trennung zwischen Interaktion oder Datenerfassung auf der einen und verbindlicher Verarbeitung auf der anderen Seite. Das Denkmodell beschreibt Verantwortlichkeiten und ist deshalb nicht von einer bestimmten Bildschirmform oder Programmiersprache abhängig.
Gerade bei mehreren Frontends wird die zentrale Rolle des Backends sichtbar. Browser, App und internes Verwaltungsprogramm können unterschiedliche Oberflächen anbieten und trotzdem dieselben fachlichen Regeln verwenden. Eine Adressänderung bleibt dadurch derselbe Geschäftsprozess, unabhängig davon, über welchen Zugang sie ausgelöst wurde.
Wo Frontend endet und Backend beginnt
In realen Anwendungen ist die Grenze nicht immer so deutlich, wie die Begriffe vermuten lassen. Beim serverseitigen Rendern – wenn der Server die sichtbare Seite vorbereitet – erzeugt das Backend bereits fertige oder vorbereitete Seiten, obwohl deren Darstellung zum Frontend gehört. Der Browser ergänzt anschließend möglicherweise interaktive Funktionen.
Offline-fähige Anwendungen verschieben ebenfalls Aufgaben. Sie können Eingaben zunächst lokal speichern und später mit einem Backend abgleichen. Für die Person wirkt die Änderung möglicherweise schon abgeschlossen. Verbindlich im gemeinsamen Datenbestand ist sie aber erst, wenn die Synchronisierung erfolgreich war.
Frontend und Backend bedeuten außerdem nicht zwangsläufig getrennte Teams, Programme oder Quelltext-Sammlungen. Die Begriffe helfen vor allem bei der Frage, an welcher Stelle eine Eingabe vorläufig dargestellt oder verbindlich geprüft wird und welcher Zustand gespeichert bleibt.
Die passende Aufteilung hängt deshalb vom jeweiligen Produkt ab. Reaktionszeit, Offline-Fähigkeit, Datenschutz, Wartbarkeit und die Häufigkeit von Änderungen können unterschiedliche Lösungen sinnvoll machen. Eine Grenze sollte nicht aus Gewohnheit gezogen werden, sondern so, dass Verantwortung und Datenfluss für Entwicklung, fachlich Verantwortliche und Betrieb nachvollziehbar bleiben.
Vier Fragen, die Projekte klären sollten
Die Aufteilung wirkt sich unmittelbar auf Bedienung, Datenqualität und fachliche Abläufe aus. Einige Fragen sollten deshalb früh gemeinsam beantwortet werden:
- Welche Rückmeldung unterscheidet Erfolg, laufende Verarbeitung und Fehler eindeutig?
- Welche Regeln dienen der schnellen Bedienhilfe, und welche muss das Backend verbindlich durchsetzen?
- Ab welchem Schritt gilt eine Änderung fachlich als abgeschlossen?
- Was geschieht, wenn eine Verbindung abbricht oder nur ein Teil des Vorgangs erfolgreich ist?
Diese Fragen betreffen nicht nur die technische Umsetzung, sondern auch die Erwartungen an einen Geschäftsprozess. Bleibt unklar, wann ein Ergebnis verbindlich ist, entstehen leicht doppelte Eingaben, widersprüchliche Daten oder missverständliche Bestätigungen.
Zwei Perspektiven auf denselben Vorgang
Das Frontend beschäftigt sich damit, wie eine Person ihre Absicht ausdrückt und das Ergebnis versteht. Das Backend entscheidet, ob diese Absicht zulässig ist, wie sie verarbeitet wird und welches Ergebnis dauerhaft gelten soll. Beide Seiten benötigen dafür eine klare Vereinbarung über Daten und Rückmeldungen.
Bei der geänderten Lieferadresse hilft das Frontend beim Ausfüllen, weist früh auf fehlende Angaben hin und zeigt den Fortschritt an. Das Backend prüft Berechtigung und Regeln, speichert die Änderung und meldet das Ergebnis zurück. Erst dann kann die Bestätigung zuverlässig sagen, dass die neue Adresse im Kundenkonto gespeichert wurde.
Was nach einem einfachen Klick aussieht, ist somit ein geordneter Austausch von Verantwortung. Menschen müssen dessen technische Einzelheiten nicht kennen. Sie sollten sich aber darauf verlassen können, dass die Software ihre Eingabe verständlich begleitet und nur dann als gespeichert bezeichnet, wenn das Ergebnis tatsächlich verbindlich geworden ist.