Risiken und technische Schulden
11.1 Risiken
Die Risiken R-001 bis R-024 stammen aus den Konsequenzen der acht ADRs. R-025 und R-026 stammen von den offenen Fragen auf dem Miro-Board zu Folge 113 (Seite 6, 10 und 11). Wahrscheinlichkeit und Auswirkung sind Team-Urteile; die Werte hier sind begründete Schätzungen. Priorität ist abgeleitet: hoch, wenn beides hoch; niedrig, wenn mindestens ein Wert niedrig ist und keiner hoch; sonst mittel. Die Tabelle ist nach Priorität sortiert.
| ID | Beschreibung | Quelle | Wahrsch. | Auswirkung | Priorität | Maßnahme |
|---|---|---|---|---|---|---|
R-022 |
Betriebsmodell offen. On-premise wegen der lokalen Kasse und 99,9 % im Web ohne Betriebsteam ziehen in verschiedene Richtungen. |
hoch |
hoch |
hoch |
Cloud-Betrieb mit EKS/EC2-SLAs und eigenem Support (QS-Z-04, Kapitel 4); ADR zum Betriebsmodell nachziehen. |
|
R-010 |
Kasse steht im Laden. Aus der Cloud muss das System die Kasse erreichen. |
hoch |
hoch |
hoch |
8.5 Fehlerfall "Kasse nicht erreichbar"; Spike zur Kassen-Schnittstelle vor der Cloud-Entscheidung. |
|
R-003 |
Feste Kopplung an diesen Webshop steht dem SaaS-Ziel entgegen; andere Läden haben andere oder keine Webshops. |
hoch |
hoch |
hoch |
Login und Kundendaten hinter einer Anti-Corruption Layer kapseln; QS-A-01 als Abnahmekriterium. |
|
R-026 |
Mandantenfähigkeit und Skalierbarkeit für SaaS sind offen ("?" auf dem Board). Ohne Mandantenfähigkeit steigen die Betriebskosten je Shop. |
Board Seite 6 |
hoch |
hoch |
hoch |
Mandantenfähigkeit im Datenmodell vorsehen; QS-A-01 (zwei Monate, 20 PT) als Grenze. |
R-035 |
Das Rechnungswesen erfährt von einer Zahlung nur, wenn Kasse, Online-Payment oder Bezahlung sie melden. Die Zuordnung Bezahlung zu Rechnungswesen ist offen (63:16). |
hoch |
hoch |
hoch |
Zuordnung entscheiden; bis dahin Zahlungen in Reparatur durchführen protokollieren (8.4 Audit). |
|
R-039 |
Erlaubt das Kassensystem keinen Zugriff aus der Cloud, kippt die Lösungsstrategie (26:14, "kaputt machen"). |
mittel |
hoch |
hoch |
Kassenanbindung vor dem ersten Inkrement klären; Kassenproxy als Option (Kapitel 7, 8.5). |
|
R-044 |
QS-Z-07 fordert höchstens 5 Minuten Datenverlust; kein Beleg, dass RDS das liefert. |
mittel |
hoch |
hoch |
RDS-Replikation und Backup-Intervall festlegen; QS-Z-07 messbar machen. |
|
R-002 |
Fällt der Webshop aus, funktionieren Login und Adressabfrage nicht. |
mittel |
hoch |
mittel |
8.5 Fehlerfall "Webshop nicht erreichbar"; Werkstatt bleibt unabhängig vom Webshop-Login. |
|
R-005 |
Umleitung vor dem Webshop: wer sie betreibt und ob das Fertigprodukt sie zulässt, ist offen. |
mittel |
hoch |
mittel |
Klärung mit dem Webshop-Anbieter vor der Umsetzung; 8.4 Monitoring der Umleitung. |
|
R-011 |
Zahlungsstatus aus zwei Quellen (Payment Service und Kasse) ohne Vorrangregel. |
mittel |
hoch |
mittel |
8.2 "Bezahlstatus nur aus dem Backend"; 8.4 Audit des Zahlungsstatus; Vorrangregel im Modul Bezahlung festlegen. |
|
R-024 |
5-Minuten-Ziel für Datenverlust setzt eine Persistenzstrategie voraus, die niemand entschieden hat. |
mittel |
hoch |
mittel |
RDS-SLAs prüfen (QS-Z-07); Replikation oder Sicherung im Minutentakt. |
|
R-004 |
JWT-Cookie erreicht das System nur in derselben Domain. Geschlossen durch ADR-002. |
niedrig |
hoch |
mittel |
8.2 Same-Origin-Policy und Pfad |
|
R-006 |
Beim SaaS-Umbau braucht jeder Laden eine eigene Umleitung unter seiner Domain. |
hoch |
mittel |
mittel |
Umleitung als konfigurierbaren Teil des Deployments planen; QS-A-01. |
|
R-009 |
Viele Schnittstellen (Payment, Kasse, Rechnungswesen, User-DB); jede ist ein Ausfallpunkt. |
hoch |
mittel |
mittel |
8.5 je Schnittstelle Retry und Fallback; 8.3 Integrationstests gegen Stubs. |
|
R-013 |
Beim SaaS-Umbau hat jeder Laden eine andere Kasse; die REST-Integration muss je Laden neu gebaut werden. |
hoch |
mittel |
mittel |
Kassen-Adapter als Anti-Corruption Layer; QS-A-01. |
|
R-008 |
Zwei Bezahlvorgänge unter einer Domain verwirren Kund:innen. |
mittel |
mittel |
mittel |
QS-U-02 und QS-U-03 als Messung; Bezahlvorgang im Reparaturbereich klar kennzeichnen. |
|
R-012 |
Fällt der Rückweg nach dem Payment-Redirect aus, bleibt eine bezahlte Reparatur unbezahlt. |
mittel |
mittel |
mittel |
8.5 Fehlerfall "Payment-Redirect bricht ab". |
|
R-014 |
Die Statusseite wirkt wie ein Fremdkörper im Webshop. |
mittel |
mittel |
mittel |
QS-U-03 (4 von 5 Punkten) als Messung; Layout an den Webshop anlehnen. |
|
R-015 |
Kund:innen suchen den Status im Kundenkonto des Webshops und finden ihn nicht. |
mittel |
mittel |
mittel |
Verweis vom Webshop auf |
|
R-018 |
Als SaaS trifft das System auf Läden mit eigenem Inventarsystem. |
mittel |
mittel |
mittel |
Materialbeschaffung als eigenes Modul halten (Kapitel 4); QS-A-01. |
|
R-023 |
Lassen sich Werkstatt- und Web-Teil nicht trennen, gilt das strengere Ziel für alles. |
mittel |
mittel |
mittel |
8.4 Metriken getrennt je Teil; Deployment-Variante prüfen (Kapitel 7). |
|
R-025 |
Rechnungswesen aus der Cloud erreichen: offene Frage auf dem Board. |
Board Seite 10, 11 |
mittel |
mittel |
mittel |
8.5 Fehlerfall "Rechnungswesen nicht erreichbar"; Schnittstelle vor der Cloud-Entscheidung klären. |
R-031 |
Terminänderungen durch Eilaufträge oder Ausfall einer Mechaniker:in müssen in Terminplanung und Reparatur durchführen konsistent ankommen. |
hoch |
mittel |
mittel |
Informationsfluss Termin festlegen (ADR-012); 8.5 Fehlerfall. |
|
R-032 |
Vier Repositories bei einem Team von drei bis vier Personen ohne IT. Pflege, Zugriffsrechte und Build-Ketten liegen bei niemandem im Shop. |
hoch |
mittel |
mittel |
Eigener Support (QS-U-07); Build-Kette automatisieren. |
|
R-034 |
Terminplanung muss bei Reparatur durchführen nachfragen, ob die Planung noch gilt (57:50). Das läuft gegen die Abhängigkeitsrichtung. |
hoch |
mittel |
mittel |
Entscheidung synchron oder Messages nachholen; 8.5. |
|
R-027 |
Das Protokoll enthält Einträge, die nicht kundensichtbar sein sollen (37:03). Ohne Filter erreichen sie die Statusseite. |
mittel |
mittel |
mittel |
Filter in Reparatur durchführen; 8.2 (T-004). |
|
R-029 |
Der Schnitt entstand leichtgewichtig entlang der Stories. Komplexe Fachlogik, die Event Storming aufdecken würde, bleibt unentdeckt. |
mittel |
mittel |
mittel |
Domänenanalyse nachholen, sobald Fachlogik wächst; 11.2. |
|
R-030 |
Wird die Terminplanung gekauft, passt das Produkt nur ungefähr (44:18). Kompromisse an der Schnittstelle zu Reparatur durchführen. |
mittel |
mittel |
mittel |
Spike vor Kaufentscheidung; QS-A-01 als Aufwandsgrenze. |
|
R-033 |
Repository-Grenzen fixieren den Modulschnitt früh. Ein falscher Schnitt kostet Umzug von Code und Historie. |
mittel |
mittel |
mittel |
Schnitt vor Anlage der Repositories prüfen (R-028). |
|
R-046 |
Rufbereitschaft rund um die Uhr für einen Shop mit drei bis vier Mitarbeitenden; Kosten ungenannt. |
hoch |
mittel |
mittel |
Kosten beziffern; nächtliches Ziel QS-Z-05 gegen Kosten prüfen. |
|
R-047 |
Rufbereitschaft ohne Entwicklerin braucht Runbooks; sonst Erreichbarkeit ohne Wiederanlauf. |
hoch |
mittel |
mittel |
Runbooks je Fehlerfall aus 8.5; Monitoring 8.4. |
|
R-040 |
Bleibt Monolith oder Microservices offen, entsteht implizit ein Monolith ohne Entscheidung. |
hoch |
mittel |
mittel |
Entscheidung mit dem ersten Inkrement treffen (ADR-014 Deferred). |
|
R-045 |
Eine gemeinsame Datenbank für vier Module unterläuft den fachlichen Schnitt. |
mittel |
mittel |
mittel |
Schema je Modul trennen; Zugriff nur über das eigene Modul (ADR-009). |
|
R-049 |
Der Kunde akzeptiert den Netzausfall nicht und verlangt den Cache-Server; Wartung vor Ort kehrt zurück. |
mittel |
mittel |
mittel |
Risiko mit dem Kunden besprechen; mobiler Router als Reserve. |
|
R-050 |
Der Low-Tech-Fallback braucht aktuelle Preise auf Papier oder in einer Tabelle; niemand ist benannt. |
mittel |
mittel |
mittel |
Verantwortliche benennen; 8.5 Fehlerfall Netzausfall. |
|
R-041 |
Die Gleichwertigkeit von Monolith und Microservices gilt nur für die vorhandenen Szenarien; Performance und Security fehlen. |
mittel |
mittel |
mittel |
Szenarien für Performance und Security ergänzen (Kapitel 10). |
|
R-001 |
Adresse liegt in der User-Datenbank des Webshops, obwohl sie fachlich Kundeninformation ist. |
mittel |
niedrig |
niedrig |
8.2 HTTPS und Zugriff nur über das Backend (T-004); Grenze Nutzerdaten/Kundendaten in Kapitel 5 benennen. |
|
R-016 |
Der Umfang wächst um eine Inventardomäne; die Verantwortung verwässert. |
mittel |
niedrig |
niedrig |
Modul Materialbeschaffung klar abgrenzen (Kapitel 5). |
|
R-019 |
Benachrichtigung landet im Spam oder wird nicht gelesen. |
mittel |
niedrig |
niedrig |
Statusseite als zweiter Weg (ADR-005); SMS vorsehen; QS-U-03. |
|
R-021 |
Benachrichtigung nicht gekapselt; SMS-Nachrüstung wird teuer. |
mittel |
niedrig |
niedrig |
Benachrichtigung als eigene Schnittstelle im Modul Reparatur durchführen. |
|
R-007 |
Geteilter Origin mit dem Webshop: eine Schwachstelle betrifft die Cookies beider Systeme. |
niedrig |
mittel |
niedrig |
8.2 HTTPS, |
|
R-017 |
Führt der Laden ein Warenwirtschaftssystem ein, entstehen zwei Bestände. |
niedrig |
mittel |
niedrig |
Bestandsführung hinter einer Schnittstelle, damit ein Abgleich nachrüstbar ist. |
|
R-020 |
E-Mail-Dienst ist ein Cloud-Dienst; on-premise braucht einen Weg ins Internet. |
niedrig |
niedrig |
niedrig |
8.5 Fehlerfall "EMail-Dienst fällt aus"; entfällt bei Cloud-Betrieb. |
|
R-028 |
Erweist sich das Domänenmodell der Materialbeschaffung als dünn, trägt das Modul den Aufwand eines eigenen Projekts ohne fachlichen Gewinn. |
mittel |
niedrig |
niedrig |
Schnitt bei Umsetzung prüfen; 11.2 Technische Schulden. |
|
R-036 |
Wer die Board-Legende liest, versteht die Pfeile als Aufrufrichtung und leitet synchrone Aufrufe ab, die nie entschieden wurden. |
mittel |
niedrig |
niedrig |
Legende in Kapitel 5 korrigiert (Informationsfluss). |
|
R-038 |
Die Wahl von AWS beruht auf der Erfahrung des Autors; ein Team ohne AWS-Erfahrung trägt Einarbeitung. |
mittel |
niedrig |
niedrig |
Einarbeitung einplanen; Managed Services bevorzugen. |
|
R-043 |
Die SLA-Ableitung stammt aus der Lektüre im März 2022; ändert AWS die Definition, gilt sie nicht mehr. |
niedrig |
mittel |
niedrig |
SLA-Texte bei Umsetzung erneut prüfen. |
|
R-048 |
Werkstatt-Szenarien gelten auch samstags; eine Entwicklerin zu Bürozeiten deckt das nicht. |
mittel |
niedrig |
niedrig |
Öffnungszeiten mit dem Support-Fenster abgleichen (QS-Z-01). |
|
R-037 |
Ein Ausfall der AWS-Region trifft alle Szenarien zugleich; kein Ausweichen auf eine zweite Region geplant. |
niedrig |
hoch |
niedrig |
Akzeptiert; Backup außerhalb der Region prüfen (ADR-016). |
|
R-042 |
Ein Ausfall der ganzen Region bleibt ungedeckt. |
niedrig |
hoch |
niedrig |
Wie R-037; Multi-Region nur bei SaaS-Wachstum. |
|
Note
|
Offen: Die Spalten Wahrscheinlichkeit und Auswirkung sind Schätzungen. Das Team bestätigt oder korrigiert sie; die Priorität folgt dann aus der Regel oben. |
11.2 Technische Schulden
|
Note
|
Offen: kein Code, keine technischen Schulden erfasst. |
Kandidaten bei der Umsetzung: Die gelbe Notiz "ggf. finanziellen Aspekt separieren?" (Board Seite 9) ist eine Entwurfsschuld an den Bausteinen Reparatur durchführen und Bezahlung, falls Preisberechnung und Rechnungselemente zunächst im Baustein Reparatur durchführen bleiben. Ein zweiter Kandidat ist die Bestandsführung im Baustein Materialbeschaffung (ADR-006), falls sie als Eigenlösung ohne Abgleichschnittstelle gebaut wird (R-017).
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.