Sachbearbeiter-Dashboard — Designgrundlagen

ux/foundations/ · IHK-Carnet-Verwaltung · Mai 2026 · Vers. 2
Zusammenfassung. Das Sachbearbeiter-Dashboard ist eine einzige Seite ohne Navigation, ohne Detailseiten, ohne Wizards. Dieses Dokument fasst die Designgrundlagen zusammen: das Drei-Zonen-Modell, das mentale Modell der Sachbearbeiterin, die Kommandozeile als Metapher, das Strom-Modell mit privaten und gemeinsamen Einträgen, das Reset-Modell mit kausaler Abhängigkeitsanalyse, den URL-Vertrag (pushState statt Seitennavigation), die BITV-2.0-Barrierefreiheitsvorgaben und die Behandlung komplexer Formulare ohne Wizard. Abschließend werden die bekannten Einwände und ihre Mitigationen dokumentiert.

1Das Problem: Kontextwechsel ist der eigentliche Kostentreiber

Eine Sachbearbeiterin in der IHK-Carnet-Verwaltung bearbeitet 60–100 Vorgänge pro Tag über heterogene Entitätstypen hinweg — Firmen, Carnets, Prüfungen — in mehreren Kammerbezirken. Traditionelle Enterprise-UIs erzwingen Navigation zwischen diesen Typen. Die Kosten liegen nicht im Klick. Sie liegen in der Neuorientierung nach der Ankunft: Jeder Bildschirmwechsel zwingt die Sachbearbeiterin, drei Fragen zu beantworten — Wo bin ich? Was kann ich hier tun? Wie komme ich zurück? Bei hohem Volumen summiert sich dieser Neuorientierungsaufwand auf Stunden verlorener Produktivität pro Woche.

SystemMusterKosten
SAP GUI7400+ Transaktionscodes → eigene BildschirmeSachbearbeiterinnen memorieren Pfade statt zu arbeiten. Einarbeitungszeit: Monate.
ServiceNowListe → Detail → Zugehörige Liste → Zurück3–5 Seitenladungen pro Ticket. Warteschlangenbewusstsein geht beim Detail-Arbeiten verloren.
Oracle FormsMenü → Formular → Reiter → Unter­formular → Speichern → Zurück4–6 Navigationsschritte je CRUD-Operation. Keine periphere Wahrnehmung des Warteschlangenstands.
JiraBoard → Issue → Sub-task → Zurück zum BoardBoard-Kontext geht im Issue-Detail verloren.

Das Designziel ist null Neuorientierungsaufwand: ein fixes Drei-Zonen-Layout, dessen räumliche Stabilität Orientierungsfragen durch das periphere Sehen beantwortet — ohne aktives Lesen.

2Drei Zonen, null Navigation

Das Dashboard ist eine Seite mit drei vertikal gestapelten Zonen. Jede Zone beantwortet eine kognitive Frage, die über alle Aufgaben, alle Entitätstypen und alle Erfahrungsstufen hinweg stabil bleibt. Die Zonen bewegen sich nie, verschwinden nie und ändern ihr Layout nie.

ZoneKognitive FrageStabilitätsgarantie
Zone 1 — Scope-Leiste„Wer bin ich? Was kann ich sehen?"Scrollt nie, verschwindet nie, ändert Layout nie
Zone 3 — Der Strom„Was ist passiert? Was wartet auf mich?"Immer über Zone 2; scrollt nach oben; unten = jetzt
Zone 2 — Kommandofeld„Was tue ich gerade?"Immer unten verankert, immer dasselbe Interaktionsmodell
Eine Seite · Drei Zonen · Null Navigation ZONE 1 — SCOPE-LEISTE „Wer bin ich? Was kann ich sehen?" Fix. Scrollt nie. Verschwindet nie. Ändert Layout nie. ZONE 3 — DER STROM (scrollbar, unten = jetzt) „Was habe ich gesagt? Was ist passiert?" Sie: günther carnet limit 45000 Aktion: Carnet #456 · Limit: 35.000 → 45.000 € [System] Carnet #789 · Import adjustiert Sie: becker adresse Aktion: T. Klein · Adresse aktualisiert Sie: prüfung p-012 genehmigen Aktion: Prüfung #012 · Genehmigt ↑ Scroll = älter · unten = neueste Aktion · ↑-Taste = letzten Befehl abrufen Jetzt-Linie ZONE 2 — KOMMANDOFELD (unten verankert) „Was tue ich gerade?" günther carnet verschieben müll▌ #2024-00456 ✓ Inhaber wechseln LEER=fixieren ENTER=ausführen ESC=zurück Eine Seite · Drei Zonen · Null Navigation · Tastatur-First · Alle Erfahrungsstufen
Abb. 1 — Drei-Zonen-Layout. Zone 1 (Scope) bewegt sich nie. Zone 2 (Kommando) ist immer unten verankert. Zone 3 (Strom) füllt den Raum dazwischen und scrollt nach oben.

Designvorbild: Das Bloomberg Terminal erreicht dasselbe mit einem fixen Vier-Panel-Layout, das sich über Tausende verschiedener Datenansichten nie ändert. Die Panels sind der kognitive Anker; der Inhalt darin wechselt. Unsere drei Zonen erfüllen dieselbe Funktion mit einfacherer Geometrie.

3Das mentale Modell der Sachbearbeiterin

Die oberste Schicht jedes Verwaltungssystems ist nicht das Datenmodell oder die API — es ist das mentale Modell, das die Sachbearbeiterin an den Schreibtisch mitbringt. Eine Sachbearbeiterin denkt in Vorgängen, nicht in Datenbankzeilen. Sie denkt in erlaubten Handlungen, nicht in CRUD-Operationen. Ein System, das sein Datenmodell der Sachbearbeiterin direkt ausliefert, ist gescheitert, bevor die erste Interaktion stattfindet.

KonzeptBedeutung für die SachbearbeiterinFalsches Systemäquivalent
VorgangEin Fall mit einer Geschichte, einem aktuellen Zustand und ausstehenden AktionenEine Datenbankzeile
ZuständigkeitWofür ich verantwortlich bin und worauf ich handeln darfEine Berechtigungsmaske
ArbeitsschrittEine diskrete Aktion, die einen Vorgang voranbringt und eine Spur hinterlässtEin Formular-Submit

Das Kommandofeld als Interpreter

Das zentrale Kommandofeld ist kein Suchfeld. Es ist die Kommandozeile der Sachbearbeiterin — ein direkter Ausdruck ihrer Absicht über den Domänenobjektgraphen. Jedes Token verengt gleichzeitig die Entitätsmenge und aktualisiert die verfügbare Aktionsmenge. Die Sachbearbeiterin sieht keine Ergebnisseite — sie sieht eine sich kontinuierlich schärfende Absicht.

Eingabe                     Was das System zeigt
──────────────────────      ──────────────────────────────────────────────────────
„g"                    →    Günther Maschinenbau AG  ·  Gauss Metallbau GmbH
„gün"                  →    Günther Maschinenbau AG                           [Entität aufgelöst]
„gün car"              →    Günther Maschinenbau AG  ›  Carnet #2024-00456    [Relation gefolgt]
„gün car ver"          →    … AKTION: Zu anderer Firma verschieben ↵          [Methode gefunden]
„gün car ver mül"      →    … verschieben → Müller Werkzeugbau GmbH           [Parameter aufgelöst]
[ENTER]                →    Arbeitsschritt ausgeführt · Strom aktualisiert
Kommando-als-Objekt: Metapher → Architektur EINGABE günther aachen verschieben müller Tokens akkumulieren → Ergebnismenge und Aktionen aktualisieren sich je Tastenanschlag AUFLÖSUNG resolve(token) „günther" → Firma „456" → Carnet SEMANTIKSCHICHT synonyms(term) anrufen = telefon = call verschieben = transfer = move BERECHTIGUNGSFILTER actions(user, perms) Kammerbezirk-Scope rollenbasiertes Aktionsset DOMÄNENENTITÄT (einheitliche Schnittstelle) resolve(token) Suche per Teileingabe Firma · Carnet · Prüfung actions(user,perms) typenspezifisches Aktionsset gefiltert zur Anfragezeit history() unveränderliches Ereignis-Log speist den Strom EIN API-ENDPUNKT (Metapher verlangt einen einzigen Round-Trip) POST /search { tokens, user, permissions } → { entities, actions_per_entity } UI — dünnes Rendering der Metapher, nicht ihre Implementierung
Abb. 2 — Kommandofeld-Architektur: Auflösung → Semantikschicht → Berechtigungsfilter → Domänenentitäts-Schnittstelle → ein API-Endpunkt → dünnes UI.
Berechtigungsregel

Aktionen werden zur Anfragezeit gefiltert, nicht zur Renderzeit. Eine Sachbearbeiterin im Kammerbezirk Aachen sieht keinen ausgegrauten „Limit ändern"-Button. Sie sieht den Button gar nicht. Die UI ist ein berechtigungs-gesteuerter Arbeitsbereich, kein Berechtigungsanzeigesystem.

Auffindbarkeit ohne Menü: Kategorie-Chips

Eine Sachbearbeiterin, die noch nicht weiß, dass es Carnets gibt, wird das Wort carnet nicht eintippen. Um diese Lücke zu schließen, ohne ein Navigationsmenü einzuführen, zeigt das Kommandofeld im Leerzustand Kategorie-Chips als anklickbare Maus-Affordanzen:

  [ Carnets ]   [ Firmen ]   [ Prüfungen ]   [ Verwaltung ]

Ein Klick auf [Carnets] entspricht dem Eintippen von carnet. Das Token-Modell und das Chip-Modell sind derselbe Mechanismus; die Chips sind ein nullvokabular-Einstiegspunkt für den ersten Arbeitstag. Erfahrene Sachbearbeiterinnen überspringen die Chips und tippen direkt — die Oberfläche bestraft keine Expertise und blockiert keine Anfänger.

4Der Strom — Chat als Geschichte

Zone 3 ist die Geschichte der Sitzung und aller Ereignisse auf Entitäten im Zuständigkeitsbereich. Die räumliche Metapher ist der Chat-Verlauf: das am tiefsten verankerte Raummodell der Arbeitnehmerschaft der 2020er Jahre. Das Kommandofeld ist die Nachrichteneingabe, unten verankert. Die Geschichte fließt darüber nach oben. Der jüngste Austausch ist direkt über dem Eingabefeld.

Zwei Sprecher, zwei visuelle Ausrichtungen:

Kollegin- oder Systemautomationsereignisse erscheinen als Aktion:-Bubble ohne vorangehendes Sie: — genau wie das Empfangen einer Nachricht in einem Gruppen-Chat. Nach einem Telefonat sieht die Sachbearbeiterin sofort, was sich verändert hat — durch Blick auf den unteren Bereich des Stroms.

Chat-Layout: Sie: (links) / Aktion: (rechts) ZONE 1 Scope-Leiste — Kammer: Aachen · K. Huber · Sachbearbeiterin Carnets fix ZONE 3 — STROM (scrollt, unten = neueste Aktion) ↑ ältere Einträge oben Sie: 09:14 🔒 Nur für Sie günther carnet limit 45000 Aktion: 09:14 Carnet #2024-00456 · Günther Maschinenbau AG Limit geändert: 35.000 → 45.000 € Aktion: 09:31 [System] Carnet #789 · Import: Limit adjustiert Sie: 10:02 🔒 Nur für Sie becker adresse Aktion: 10:02 T. Klein · Firma Becker Adresse aktualisiert: Hauptstr. 14 → Nr. 16 Sie: 10:45 🔒 Nur für Sie prüfung p-012 genehmigen Aktion: 10:45 K. Huber · Prüfung #2024-P-012 Genehmigt ↓ jüngstes Paar immer hier, direkt über dem Eingabefeld ═══ Jetzt-Linie ═══ ZONE 2 — KOMMANDOFELD (unten verankert, wie Chat-Eingabe) Entität oder Befehl eingeben … ENTER · ↑ abrufen · ESC Links = was ich gesagt habe · Rechts = was passiert ist · Unten = wo ich als Nächstes tippe Metaphernquelle: WhatsApp / Slack / iMessage — null Lernaufwand
Abb. 3 — Chat-Layout. Sie: (links, blau) ist der Befehl. Aktion: (rechts, Karte mit Rand) ist die Systemantwort. Sie:-Bubbles tragen „🔒 Nur für Sie" — sie sind privat und kein Bestandteil des Revisionsprotokolls. Systemereignisse erscheinen ohne Sie:.

Private und gemeinsame Einträge — die Trennlinie

Der Strom enthält zwei semantisch verschiedene Eintragstypen:

TypDarstellungSichtbarkeitKassenbuch-Vertrag
Vorgangsstrahl-EintragAktion:-Bubble (rechts)Alle Kolleginnen, RevisionsprotokollJa — append-only, irreversibel, attribuiert
Arbeitsstrahl-EintragSie:-Bubble (links)Nur die eigene SitzungNein — privates Shell-History-Äquivalent

Die Visualisierung macht die Grenze sichtbar: Sie:-Bubbles tragen ein Schloss-Icon und beim Hover den Hinweis „Nur für Sie — nicht im Protokoll." Aktion:-Bubbles tragen immer ein Quell-Badge (Sachbearbeiterin-Name, [System], [Portal], [Allianz]). Die Unterscheidung ist visuell, nicht räumlich — beide Typen leben im selben Strom, weil sie zeitlich zusammengehören.

Vorgangshistorie — das Kassenbuch der Entität

Der Strom zeigt die persönliche Sitzung. Ein Vorgang hat jedoch einen viel breiteren Lebenszyklus: Kundenportal-Einreichungen, Kolleginnenaktionen, externe Partnerantworten, Systemautomationen. Diese vollständige Geschichte lebt in der Vorgangshistorie — einem Seitenleisten-Panel, das sich öffnet, wenn eine Entität ausgewählt wird.

AnsichtBeantwortete FrageScope
Strom (Zone 3)„Was habe ich getan?"Meine Sitzung, alle Entitäten
Vorgangshistorie-Panel„Was ist mit dieser Entität passiert?"Eine Entität, vollständiger Lebenszyklus, alle Akteure

Das Panel öffnet sich als Seitenleiste und überlagert den linken Teil des Stroms, verdeckt aber nicht das Kommandofeld. Es ist keine Modal-Ansicht und keine eigene Seite.

5Das Reset-Modell — git reset, nicht Strg+Z

Der Arbeitsstrahl ist der persönliche Befehlspfad der Sachbearbeiterin. Klassisches Undo (Strg+Z) arbeitet in strenger umgekehrter Reihenfolge: Aktion 5 muss rückgängig gemacht werden, um Aktion 3 zu korrigieren — auch wenn Aktion 4 völlig unabhängig war. Das Arbeitsstrahl-Modell verwendet stattdessen git reset mit automatischer kausaler Abhängigkeitsanalyse.

Die Sachbearbeiterin klickt eine frühere Sie:-Bubble. Das System bewertet, welche nachfolgenden Aktionen davon abhingen (gleiche Entität, oder Ausgabe-als-Eingabe) und welche unabhängig waren. Unabhängige Aktionen überleben den Reset automatisch. Nur kausal abhängige Aktionen werden rückgängig gemacht. Der Reset selbst ist ein Kassenbuch-Eintrag — nichts wird stillschweigend gelöscht.

Arbeitsstrahl-Reset: git reset mit kausaler Abhängigkeit VOR DEM RESET — die Sachbearbeiterin sieht einen linearen Pfad: 09:14 günther carnet limit 45000 → Carnet #456 09:31 becker adresse → Firma Becker 10:02 prüfung p-012 genehmigen → Prüfung #012 10:15 günther carnet inhaber wechseln müller → Carnet #456 ⚠ 10:30 schmidt firma anlegen → Firma Schmidt (neu) RESET AUF DIESEN PUNKT Analyse der kausalen Abhängigkeiten: UNABHÄNGIG (überleben den Reset) 09:31 becker adresse → Firma Becker 10:02 prüfung genehmigen → Prüfung #012 10:30 schmidt firma anlegen → Firma Schmidt andere Entitäten — keine Datenabhängigkeit ABHÄNGIG (werden rückgängig gemacht) 10:15 inhaber wechseln → Carnet #456 gleiche Entität wie Reset-Punkt (Carnet #456) → ins Reflog verschoben (erhalten, unsichtbar) NACH DEM RESET — sauberer Pfad: 09:14 günther carnet limit 45000 ← RESET-PUNKT 09:31 becker adresse erhalten (unabhängig) 10:02 prüfung p-012 genehmigen erhalten (unabhängig) 10:30 schmidt firma anlegen erhalten (unabhängig) Kommandofeld wird mit den Tokens des Reset-Punkts vorbefüllt — Sachbearbeiterin ändert und führt erneut aus
Abb. 4 — Reset-Modell. Die Sachbearbeiterin wählt den Reset-Punkt. Kausal abhängige Aktionen werden rückgängig gemacht; unabhängige bleiben erhalten. Der Pfad linearisiert sich neu. Der Reset selbst ist ein Kassenbuch-Eintrag.
Klassisches Strg+ZArbeitsstrahl-Reset
Strenge umgekehrte Reihenfolge — muss 5, 4, 3 rückgängig machen, um 3 zu korrigierenDirekter Sprung zu einem beliebigen Eintrag — unabhängige Arbeit bleibt erhalten
Keine Vorschau, was rückgängig gemacht wirdBestätigungspanel zeigt genau, welche Aktionen abhängig sind
Still — kein Protokolleintrag, dass Undo stattfandPrüfbar — der Reset selbst ist ein Kassenbuch-Eintrag
Vernichtet ZwischenzuständeRückgängig gemachte Einträge werden im Reflog für Compliance aufbewahrt

6Sofortige Auflösung — der Performance-Vertrag

Das Versprechen des Kommandofelds: Jeder Tastenanschlag liefert eine sichtbare Vorschau innerhalb ~50 ms — unabhängig von der Backend-Round-Trip-Zeit. Das ist nur erreichbar, wenn der Client niemals eine Anfrage beim Drücken einer Taste auslöst. Alle sichtbaren Vorschläge kommen aus Daten, die bereits vor dem Tippen eingetroffen sind. Die Aufgabe des Backends ist es, vorherzusagen, was die Nutzerin als Nächstes braucht, und es vorab zu liefern.

AuslöserStrategieMechanismus
SitzungsstartGlobaler EntitätsindexKompakter In-Memory-Index aller Firmen/Carnets/Prüfungen — sämtliches Token-Matching läuft lokal, null Netzwerklatenz je Tastenanschlag
Tippen, Top-Treffer stabil >150 msSpekulativer PrefetchAnchor-Payload des Top-Treffers wird abgerufen, bevor Leerzeichen gedrückt wird; Abbruch bei Trefferänderung
Entitäts-Token fixiert (Leerzeichen)Warm CacheAlle Aktionen, verknüpfte Objekte und Parameter-Kandidaten in einem Round-Trip — Client ist bereit, bevor das Aktions-Token getippt wird
Zone 3 / Offene Vorgänge gerendertViewport-PrefetchAnchor-Payloads aller sichtbaren Entitäten werden gebündelt abgerufen; Klick auf eine Zeile füllt ein bereits gecachtes Token vor
Bestätigungspanel muss erscheinenMitgepacktes PayloadBestätigungstext und Validierungsergebnisse stecken im Anchor-Payload — kein zweiter Request nötig
Regel

Keine Anfragen bei Tastenanschlägen auslösen. Debounce reicht nicht — das Ziel ist null Tastenanschlag-Anfragen. Das Netzwerk bewegt sich nur, wenn die Entität aufgelöst wird (Leerzeichen), nicht beim Tippen.

7Der URL-Vertrag: Ein Bildschirm bedeutet nicht null URLs

Eine Single-Screen-Anwendung, die die URL aufgibt, verliert Teilbarkeit, Browser-History, Back-Button-Verhalten und Testadressierbarkeit. All das setzt keine Seitennavigation voraus — es setzt history.pushState() voraus.

Das Design verpflichtet sich zum folgenden URL-Vertrag:

ZustandsübergangURL-Aktualisierung
Entität im Kommandofeld fokussiert/vorgang/{typ}/{id}  z.B. /vorgang/carnet/2024-00456
Inline-Panel geöffnet (Formular oder Detail)/vorgang/{typ}/{id}/{aktion}  z.B. /vorgang/carnet/2024-00456/inhaber-wechseln
Vorgangshistorie-Seitenleiste geöffnet/vorgang/{typ}/{id}/historie
Vollbreites Panel (Zone 3 verborgen)/vorgang/{typ}/{id}/{panel}  z.B. /vorgang/carnet/2024-00456/warenpositionen
Panel oder Seitenleiste geschlossenKehrt zur Entitäts-URL zurück

pushState feuert bei jedem Übergang. Es feuert kein Navigation-Event — der Bildschirm wird nie entladen. Das popstate-Event wird abgefangen und als Zustand-Wiederherstellung innerhalb des aktuellen Bildschirms behandelt: Kommandofeld und Zonen rekonstruieren sich aus den URL-Parametern ohne Neuladen.

Konsequenzen

Eine Sachbearbeiterin kann einen Vorgang durch Kopieren der Adressleiste oder per Kopier-Button am Entitäts-Header-Chip teilen. Die Browser-History spiegelt Entitäts-Übergänge wider — Supervisorinnen können Sitzungen rekonstruieren. Support kann Fehlermeldungen aus einer URL reproduzieren. Automatisierte Tests navigieren direkt zu /vorgang/carnet/2024-00456 — kein Token-Tippen pro Test nötig. Der Back-Button stellt den vorherigen Entitätszustand wieder her, nicht die vorherige Seite.

Dies löst den stärksten strukturellen Einwand gegen das Einzelbildschirm-Modell. Die Wahl ist nicht „ein Bildschirm vs. URLs" — sie ist „ein Bildschirm mit pushState" gegenüber „Multi-Route-SPA mit Seitenübergängen." Beide haben URLs. Nur eines eliminiert den Neuorientierungsaufwand.

8Barrierefreiheitsvertrag: BITV 2.0

Der deutsche öffentliche Sektor ist an die BITV 2.0 gebunden, die WCAG 2.1 AA umsetzt. Eine Kommandopaletten-primäre Oberfläche ist BITV-konform, wenn sie korrekt implementiert wird. Die folgenden Punkte sind erstklassige Anforderungen, keine Nachgedanken:

9Komplexe Formulare ohne Wizard

Der härteste Einwand gegen das Einzelbildschirm-Modell: „Wir haben ein 12-Felder-Carnet-Antragsformular. Das kann man nicht in eine Kommandozeile eintippen." Richtig — und die Antwort ist nicht „12 Tokens tippen." Die Antwort ist, dass komplexe Dateneingabe ein anderer Interaktionsmodus ist, den Zone 2 unterstützt, ohne den Einzelbildschirm-Vertrag zu brechen.

Warum Wizards existieren — und was sie eigentlich lösen

Ein Wizard löst zwei Probleme: Sequenzierung (Felder in einer bestimmten Reihenfolge ausfüllen, weil spätere Felder von früheren Entscheidungen abhängen) und kognitive Portionierung (12 Felder auf einmal überfordern; 3 auf einmal fühlen sich handhabbar an). Beide Probleme sind real. Aber die Lösung des Wizards — ein getrennter mehrseitiger Ablauf mit Weiter/Zurück-Navigation — führt drei neue Probleme ein:

Wizard-Kosten

  • Kontextverlust: kein Strom, keine Warteschlange sichtbar
  • Nicht reversibles Commitment: Zurück vernichtet Folgeschritte
  • Exit-Ambiguität: Jeder Wizard erfindet seine eigene Antwort
  • Neuorientierung nach Abschluss nötig

Inline-Expansion löst das

  • Zone 1 und Zone 3 bleiben peripher sichtbar
  • TAB/SHIFT+TAB — Tasten, die die Sachbearbeiterin überall kennt
  • ESC bedeutet immer „verwerfen und zurück zu den Tokens"
  • Auto-Speichern als Entwurf in Offene Vorgänge

Progressives Inline-Expanding

Befehl:     firma neu anlegen
Zeile 2:    ✓ Neue Firma anlegen

Unter Zone 2 (expandiertes Panel):
┌─────────────────────────────────────────────────────────────────┐
│  Neue Firma anlegen                                       1 / 3 │
│                                                                 │
│  Firmenname     [ ________________________________ ]             │
│  Rechtsform     [ GmbH ▾ ]                                      │
│  Kammerbezirk   [ Aachen ▾ ]                                    │
│                                                                 │
│  [TAB → weiter]                           [ESC Abbrechen]       │
└─────────────────────────────────────────────────────────────────┘

Nach TAB auf dem letzten Feld ersetzt das Panel seinen eigenen Inhalt:
┌─────────────────────────────────────────────────────────────────┐
│  Neue Firma anlegen                                       2 / 3 │
│  ✓ Günther Maschinenbau AG · GmbH · Aachen                      │
│                                                                 │
│  Straße         [ ________________________________ ]             │
│  Hausnummer     [ ____ ]                                        │
│  PLZ            [ _____ ]   Ort  [ __________________ ]         │
│                                                                 │
│  [TAB → weiter]   [SHIFT+TAB ← zurück]    [ESC Abbrechen]       │
└─────────────────────────────────────────────────────────────────┘

Hierarchie der Wizard-Ersatzmuster

KomplexitätMusterFelderBeispiel
1 ParameterInline-Token (Zustand B/C)1Limit ändern, Termin verschieben
2–4 FelderD3-Mini-Formular2–4Adresse bearbeiten, Ansprechpartner
5–12 Felder, sequenziellProgressives Inline-Expanding5–12, in Abschnitte unterteiltFirma neu anlegen, Carnet beantragen
Räumliches/tabellarisches LayoutVollbreites Panel (Zone 3 verborgen)BeliebigWarenpositionen, Vergleichsansicht
>12 Felder, verzweigte LogikProgressives Expanding + Auto-Entwurf12+Vollständiger Carnet-Antrag mit Warenprüfung

Jede Stufe verwendet denselben Tastatur-Vertrag (TAB vorwärts, SHIFT+TAB zurück, ENTER ausführen, ESC beenden), denselben räumlichen Anker (Zone 2 expandiert nach unten, verdrängt nie die Scope-Leiste) und dasselbe Wiederaufnahme-Modell (Tokens bleiben, Entwürfe erscheinen in Offene Vorgänge).

10Was dieses Design ausschließt

Die Designentscheidung hat Konsequenzen, die akzeptiert werden müssen — sie sind nicht verhandelbar:

11Bekannte Einwände und ihre Mitigationen

Ein traditioneller Webapplikations-Designer erhebt strukturelle Einwände gegen das Einzelbildschirm-Modell. Die folgende Tabelle klassifiziert jeden Einwand nach dem Grad seiner Lösung.

Vollständig mitigiert — durch den URL-Vertrag

EinwandMitigation
Sachbearbeiterin kann keinen Vorgang per URL teilenpushState bei Entitätsfokus; Kopier-URL-Button am Entitäts-Header-Chip
Back-Button wirft Sachbearbeiterin zur Login-Seitepopstate abfangen; als Zustand-Wiederherstellung im aktuellen Bildschirm behandeln, nicht als Navigation
Supervisorin kann Browser-History nicht für Audit nutzenFolgt aus pushState — Entitäts-Übergänge erscheinen in der History
Support kann Bug nicht aus URL reproduzierenFolgt aus stabilem URL-Schema je Entitätstyp und Zustand
Automatisierte Tests können keine Entität direkt adressierenNavigation zu /vorgang/carnet/2024-00456; Bildschirm stellt diesen Zustand wieder her
Vollbreites Panel hat keine URLpushState bei Panel-Öffnung; Schließen stellt vorherige URL wieder her

Teilweise mitigiert — erfordern Designergänzungen

EinwandMitigation
Anfängerin weiß nicht, „carnet" zu tippen, um Carnets zu entdeckenKategorie-Chips im leeren Kommandofeld als Maus-Affordanzen ohne Token-Vokabular
Zone 3: Ist dieser Eintrag Revisionsprotokoll oder private Sitzungshistorie?Visuelle Unterscheidung: Sie:-Bubbles mit 🔒-Icon und Hover-Hinweis „Nur für Sie — nicht im Protokoll"; Aktion:-Bubbles mit Quell-Badge
BITV 2.0: Screenreader können Kommandofeld nicht parsenImplementierung als combobox mit korrekten ARIA-Rollen; Zonen als HTML-Landmarks — BITV-Konformität ist erstklassige Designanforderung (→ §8)

Echte Spannungen — anerkannt, nicht aufgelöst

SpannungEhrliche Position
Nicht-Blindtipper sind mit Tokens langsamer als mit Klick-ZielenDie mausbedienbaren Vorschlagslisten und Kategorie-Chips verringern den Unterschied, aber das Token-Modell bevorzugt Tipperinnen. Akzeptierter Kompromiss für professionelle Hochvolumenarbeit.
Keine Nutzerstudien mit echten IHK-Carnet-SachbearbeiterinnenAlle Zitierungen sind theoretisch. Das Design muss mit 5 repräsentativen Sachbearbeiterinnen validiert werden, bevor eine Implementierungsverpflichtung eingegangen wird. Dies ist eine offene empirische Frage.
Vollbreites Panel (Zone 3 verborgen) ist nominell „ein Bildschirm"Zone 1 (Scope) bleibt sichtbar; der Vertrag gilt dort. Zone 3 wird unter den Viewport geschoben. Ehrliche Position: der Einzelbildschirm-Anspruch gilt für „Zone 1 immer sichtbar" und „ESC beendet immer" — nicht für simultane Sichtbarkeit aller drei Zonen bei maximaler Komplexität.

12Empfohlene Aufbaureihenfolge

Das Design hat eine strikte Abhängigkeitsreihenfolge. Das UI vor dem Domänenmodell zu bauen, produziert ein UI, das die falschen Abstraktionen eincodiert.

  1. Die drei Konzepte benennen — Vorgang, Zuständigkeit, Arbeitsschritt — und auf Domänenentitäten abbilden. Keine UI-Arbeit, bevor das stabil ist.
  2. Die einheitliche Entitätsschnittstelle definieren: resolve(), actions(user, perms), synonyms, history(). Jeder Entitätstyp implementiert denselben Vertrag.
  3. Den Kommando-Interpreter als Domänen-Service entwerfen — nicht als UI-Komponente. Die Vorschlagsliste ist das Typsystem, sichtbar gemacht.
  4. Autorisierung zur Anfragezeit verdrahten. Die API gibt nur zurück, was die Sachbearbeiterin sehen und tun darf. Niemals zur Renderzeit filtern.
  5. Den Strom als append-only-Ledger auf Datenschicht-Ebene mit Quellenattribuierung je Eintrag bauen.
  6. Das UI zuletzt bauen — drei Zonen, die das Domänenmodell rendern, nichts weiter.
  7. Mit fünf echten IHK-Carnet-Sachbearbeiterinnen validieren, bevor eine Produktionsimplementierung eingegangen wird.

LitLiteratur

Quellen: ux/foundations/single-screen-rationale.md · ux/foundations/clerk-mental-model.md · ux/foundations/single-screen-counterargument.md · ux/patterns/instant-command-resolution.mdx · ux/screens/sachbearbeiter-dashboard/SCREEN.md