Kontextabgrenzung

Das Kontextdiagramm war Eberhards erster Schritt. "Ich habe dadurch ein besseres Bild bekommen, was ich bauen soll und mit wem ich interagieren muss, insbesondere welche Verantwortung ich habe und welche Schnittstellen" (Folge 111, 26:03). Er trennt fachlichen und technischen Kontext in zwei Diagramme (27:51, 28:22). Beide zeigen dieselben drei Akteure und sieben externen Systeme (Miro-Board Seiten 2 und 3).

Fachlicher Kontext

03 business context
Kommunikationspartner Eingabe in das Reparatur-System Ausgabe aus dem Reparatur-System

Kund:in

Reparaturanmeldung (Fahrrad, Defekt), Statusanfrage, Abholung

Reparaturtermin, Status der Reparatur, voraussichtliche Kosten

Shop-Mitarbeiter:in

Fahrradabgabe im Laden, Auslösen der Bezahlung

Preis der Reparatur, Bestätigung der Bezahlung

Fahrrad-Mechaniker:in

Fahrrad-Defekt, Einplanung, Protokollpositionen, Materialbestellung

Täglicher Reparaturplan, nächste Reparatur, Bestellung an den Großhändler

Webshop

Umgeleitete Aufrufe von /reparatur

Keine; der Webshop hält keine Reparaturdaten (ADR-005)

Webshop User Database

Identität der eingeloggten Person, Adresse, bevorzugte Zahlungsart

Anfrage nach Nutzerdaten (ADR-001)

Kasse

Bestätigung der Zahlung im Laden

Zu zahlender Preis (ADR-004)

Online Payment Service

Buchungsstatus der Online-Zahlung

Zahlungsauftrag, Weiterleitung der Kund:in (ADR-004)

Rechnungswesen

Keine

Rechnungselemente der abgeschlossenen Reparatur

EMail System

Keine

Info über Updates, insbesondere Ende der Reparatur (ADR-007)

SMS Versand

Keine

Info über Updates, Kanal vorgesehen (ADR-007)

Das Reparatur-System trägt die Verantwortung für alles rund um die Reparatur: Termine, Plan, Protokoll, Bestand an Ersatzteilen und Werkzeug (ADR-006) und die Bezahlung. Es besitzt keine eigene Nutzerverwaltung und keine eigene Zahlungsabwicklung; beides liegt bei Nachbarsystemen. Der Großhändler für Ersatzteile und Werkzeug ist kein externes System im Kontext, sondern Empfänger einer Bestellung (Board Seite 7).

Note
Offen: Ob die Bestellung beim Großhändler über eine Schnittstelle oder manuell läuft, zeigt das Board nicht. Quelle: Transkript Folge 112/113 ausstehend.

Technischer Kontext

03 technical context
Externes System Schnittstelle (Board Seite 3) Erläuterung

Webshop

Umleitung von URLs (/reparatur)

Der Webshop leitet den Pfad /reparatur an das Reparatur-System weiter. So bleibt das System in derselben Domain und die Same-Origin-Policy lässt den Cookie durch (ADR-002).

Webshop User Database

JWT als Cookie, REST

Der Webshop setzt nach dem Login einen JWT als Cookie. Das Reparatur-System liest daraus die Identität und fragt Adresse und Zahlungsart per REST ab (ADR-001).

Kasse

REST

Protokoll "meinetwegen REST" (30:52); die Details sind bewusst offen gelassen.

Online Payment Service

REST und UI-Integration (Redirect-Button)

Backend-Integration per REST für den Buchungsstatus, dazu ein Button, der die Kund:in zum Dienst umleitet (ADR-004).

Rechnungswesen

REST

Übergabe der Rechnungselemente; Protokoll als Default gewählt.

EMail System

REST

Zugekaufter Dienst, etwa AWS Simple Email Service (31:02).

SMS Versand

REST

Kanal vorgesehen, nicht entschieden (ADR-007).

Die fachlichen Schnittstellen bilden sich so auf die technischen ab: Alles, was Akteure tun, läuft über den Webbrowser und den vom Webshop umgeleiteten Pfad /reparatur. Die Identität der Kund:in kommt nicht aus einem eigenen Login, sondern aus dem JWT-Cookie des Webshops; die Nutzerdaten dazu liefert die User Database per REST. Bezahlung im Laden fließt als Preis per REST an die Kasse, Online-Bezahlung als REST-Aufruf plus UI-Redirect an den Payment Service. Rechnungselemente und Benachrichtigungen verlassen das System ausschließlich als ausgehende REST-Aufrufe. Für alle Protokolle außer der Webshop-Anbindung gilt REST als Default; Eberhard hat gRPC oder anderes ausdrücklich nicht bewertet (29:53, 30:04).

Note
Offen: Hosting der externen Systeme (Webshop, User Database) ist bewusst nicht erfasst (35:36). Ob Kasse und Rechnungswesen aus der Cloud erreichbar sind, bleibt eine offene Frage auf dem Board (Seiten 10 und 11). Quelle: Transkript Folge 112/113 ausstehend.