Shuffle/requirements/backlog.md
cschlaefke 56e57afd43
Some checks failed
CI / flutter (pull_request) Failing after 3m35s
CI / supabase (pull_request) Successful in 55s
CI / supabase-tests (pull_request) Failing after 1m32s
docs(requirements): add R1 backlog and story draft
Intake of the 26 R1 stories from requirements/20-r1-akzeptanzkriterien.md
into Forgejo issues #1-#26. backlog.md maps story IDs to issues, stages
R1.1-R1.4, dependencies and the 48 open questions.

Refs #1, #2, #3, #4, #5, #6, #7, #8, #9, #10, #11, #12, #13, #14, #15,
#16, #17, #18, #19, #20, #21, #22, #23, #24, #25, #26

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-02 14:52:06 +01:00

11 KiB
Raw Blame History

Backlog R1

Stand: 2026-11-02 · Pflege: requirements-analyst · Quelle: requirements/r1-story-entwurf.md (freigegeben durch Chris am 2026-11-02), Akzeptanzkriterien in requirements/20-r1-akzeptanzkriterien.md.

Repo: cschlaefke/Shuffle · Milestone: R1 (in Forgejo noch nicht angelegt, Issues aktuell ohne Milestone) · 4 Epics, 26 Stories, 26 Issues.

Akzeptanzkriterien stehen 1:1 als nummerierte Checkliste in den Issues und werden als „KTO-01 Kriterium 3“ referenziert. Die Querschnittskriterien (Datenschutz, Sicherheit, Sprachen, Barrierefreiheit, Zustände/Netz, Plattformen) gelten für jede Story.

Stories nach Umsetzungsreihenfolge

Status: offen = Issue angelegt, noch keine Spec. Clarification = Label needs-clarification gesetzt (offene Fragen als Kommentar im Issue).

Story-ID Issue Titel Epic Prio Größe Etappe Status Clarification
KTO-01 #1 Registrieren, anmelden und Passwort zurücksetzen Konto Must XL R1.1 offen ja
KAT-05 #2 Katalogdaten laden und aktuell halten Katalog Must XL R1.1 (Import), R1.2 (Admin-Pflege, Meldungen) offen ja
KAT-01 #3 Spiele suchen Katalog Must L R1.1 offen ja
KAT-02 #4 Spieldetailseite Katalog Must M R1.1 offen ja
KTO-04 #5 Privatsphäre (in R1 nur der Hinweis) Konto Must S R1.1 offen ja
SAM-01 #6 Spiel zur Sammlung hinzufügen Sammlung Must S R1.2 offen nein
SAM-02 #7 Eigene Angaben pro Spiel Sammlung Must M R1.2 offen ja
SAM-04 #8 Wunschliste mit Priorität Sammlung Must M R1.2 offen ja
SAM-05 #9 Einkaufsliste führen Sammlung Must M R1.2 offen ja
SAM-06 #10 In die Sammlung übernehmen Sammlung Must S R1.2 offen ja
SAM-03 #11 Sammlung durchsuchen, filtern und sortieren Sammlung Must L R1.2 offen ja
KAT-03 #12 Erweiterungen und Editionen Katalog Must M R1.2 offen ja
KAT-04 #13 Fehlendes Spiel melden Katalog Must L R1.2 offen ja
KTO-02 #14 Profil bearbeiten Konto Must L R1.2 offen ja
PAR-01 #15 Partie erfassen Partien Must XL R1.3 offen ja
PAR-02 #16 Mitspieler hinzufügen Partien Must M R1.3 offen ja
PAR-03 #17 Ergebnis erfassen Partien Must L R1.3 offen ja
PAR-04 #18 Wertungsbogen je Spiel Partien Must M R1.3 offen ja
PAR-05 #19 Partie bearbeiten und löschen Partien Must M R1.3 offen ja
PAR-06 #20 Partienverlauf Partien Must M R1.3 offen ja
PAR-07 #21 Persönliche Statistik Partien Must L R1.3 offen ja
PAR-08 #22 Statistik je Spiel Partien Must M R1.3 offen ja
KTO-05 #23 Konto löschen und Daten exportieren Konto Must XL R1.4 offen ja
SAM-07 #24 BGG-Konto verknüpfen Sammlung Should S R1.4 (nur mit BGG-Lizenz) offen ja
SAM-08 #25 Sammlung und Wunschliste aus BGG importieren Sammlung Should XL R1.4 (nur mit BGG-Lizenz) offen ja
SAM-09 #26 BGG-Import wiederholen und abgleichen Sammlung Should L R1.4 (nur mit BGG-Lizenz) offen ja

Epics

Epic Label Stories (Issues)
KTO Konto & Profil epic/konto KTO-01 (#1), KTO-02 (#14), KTO-04 (#5), KTO-05 (#23)
KAT Spielekatalog epic/katalog KAT-01 (#3), KAT-02 (#4), KAT-03 (#12), KAT-04 (#13), KAT-05 (#2)
SAM Sammlung & Listen epic/sammlung SAM-01 (#6), SAM-02 (#7), SAM-03 (#11), SAM-04 (#8), SAM-05 (#9), SAM-06 (#10), SAM-07 (#24), SAM-08 (#25), SAM-09 (#26)
PAR Partien & Statistik epic/partien PAR-01 (#15), PAR-02 (#16), PAR-03 (#17), PAR-04 (#18), PAR-05 (#19), PAR-06 (#20), PAR-07 (#21), PAR-08 (#22)

Etappen (im Milestone R1)

Etappe Issues
R1.1 Fundament #1, #2 (Import), #3, #4, #5
R1.2 Sammlung #6, #7, #8, #9, #10, #11, #12, #13, #2 (Admin-Pflege, Meldungen), #14
R1.3 Partien #15, #16, #17, #18, #19, #20, #21, #22
R1.4 Abschluss #23, #24, #25, #26 (BGG-Block nur mit Lizenz, S1)

XL-Stories

Nicht geteilt (Entscheidung Chris, Label size/xl). Die Schnittvorschläge stehen im Issue unter „Mögliche Schnitte für die Spec“ und werden in der Spec (architect) entschieden: KTO-01 (#1), KTO-05 (#23), KAT-05 (#2), SAM-08 (#25), PAR-01 (#15).

Abhängigkeiten

In Forgejo als blockierende Abhängigkeiten gesetzt (Issue hängt ab von …):

Issue hängt ab von
#3 KAT-01 #2
#4 KAT-02 #3
#5 KTO-04 #1
#6 SAM-01 #1, #3, #4
#7 SAM-02 #6
#8 SAM-04 #1, #4
#9 SAM-05 #1, #4
#10 SAM-06 #6, #8, #9
#11 SAM-03 #6, #7
#12 KAT-03 #4, #6
#13 KAT-04 #1, #2, #3
#14 KTO-02 #1, #3
#15 PAR-01 #1, #3, #6
#16 PAR-02 #15
#17 PAR-03 #16
#18 PAR-04 #17
#19 PAR-05 #15, #16, #17, #18
#20 PAR-06 #15, #16, #17
#21 PAR-07 #17, #20
#22 PAR-08 #4, #17
#23 KTO-05 #1
#24 SAM-07 #1
#25 SAM-08 #2, #6, #8, #13, #24
#26 SAM-09 #7, #25

Nur im Issue-Text vermerkt (kriterienbezogene Rückverweise, die als blockierende Abhängigkeit Zyklen erzeugen würden):

  • KAT-01 (#3) Kriterium 6 → KAT-04 (#13)
  • KAT-02 (#4) Kriterien 3–4 → SAM-01 (#6), SAM-04 (#8), SAM-05 (#9); Kriterium 6 → PAR-08 (#22)
  • SAM-05 (#9) Kriterium 3 → SAM-06 (#10)
  • KTO-05 (#23) inhaltlich → alle Daten-Stories (u. a. #6–#11, #13, #14, #15–#18)
  • Externe Voraussetzung BGG-Lizenz (S1) für #24, #25, #26; Admin-Rolle für #2 und #13

Offene Fragen

Nummerierung wie in requirements/r1-story-entwurf.md § 5. Der Wortlaut steht als Kommentar im jeweiligen Issue.

A. Widersprüche zwischen Akzeptanzkriterien und Datenmodell/Migrationen

Nr Thema Issues
1 Spiel gleichzeitig in Sammlung, Wunsch- und Einkaufsliste? (unique (owner_id, game_id)) #8, #10, #25
2 Felder für SAM-02/04/05 fehlen im Datenmodell #7, #8, #9
3 Deutscher und englischer Titel (alternative Titel) #3
4 Verlagsfeld fehlt #3, #4
5 Beziehung Erweiterung ↔ Basisspiel fehlt #12
6 Tabelle für Meldungen fehlt #13
7 Ausblenden, manuell gepflegte Felder, Erlaubnis je Quelle #2
8 Profil-Genres fehlen, gleiche Liste wie Katalog? #14
9 Stadt im Profil vs. „alles privat“ #5
10 Löschumfang Partien, private Katalogeinträge, Meldungen #23
11 Ort, Gästeliste, kooperativ/Teams fehlen im Modell #15, #16, #17, #20
12 BGG-Import: „nicht gefunden“ vs. automatische private Einträge #25

B. Unklare oder nicht testbare Kriterien

Nr Thema Issues
13 KAT-01 Kriterium 8 unvollständig, Filterumfang #3
14 „Normale Verbindung“ für 2 s #3
15 Wann ist ein Eintrag „sehr ähnlich“? #13
16 „Flüssig“ bei 1000 Spielen – Zielwert #11
17 „Einige Sekunden“ für Rückgängig #8, #9, #10
18 Drosselung, Gültigkeit Reset- und Bestätigungslink #1
19 KTO-04 Kriterium 2 in R1 nicht testbar #5
20 Löschfrist, Exportformat und -umfang, Benachrichtigung, Neuregistrierung #23
21 Datenschutzerklärung/AGB, Prüfung Mindestalter, optionale Dienste #1

C. Fachliche Lücken je Story

Nr Thema Issues
22 Regeln Anzeigename bei Registrierung, Abmelden/E-Mail/Passwort ändern #1
23 Vorläufige Spiele als Lieblingsspiele, Reihenfolge ändern #14
24 Zugelassene Datenquellen ohne BGG-Lizenz (kritisch für R1) #2, #4
25 Admin-Bereich in der App oder internes Werkzeug, wer ist Admin #2
26 Rückmeldung zu Meldungen, Ablehnung ohne Zieleintrag #13
27 Moderation und Spam-Limit für Meldungen #13
28 Edition Pflicht/optional, auch für Listen und Partien #12
29 Werte der Zustandsliste, Verwaltung von Tags/Standorten #7
30 Suche/Filter auch für Wunsch- und Einkaufsliste, Leerzustand ohne Lizenz #11
31 Summe der Einkaufsliste, Verhalten bei abgelehnter Übernahme #9
32 Umgang mit Listen-Notiz bei vorhandener Sammlungsnotiz #10
33 Eine BGG-Verknüpfung je Konto, mehrfach verknüpfter BGG-Name #24
34 Zählende BGG-Status, Prioritätsabbildung, Erweiterungen #25
35 „In Shuffle selbst hinzugefügt“, Dauer der Hervorhebung #26
36 Datum/Uhrzeit, wählbare Spiele, Offline-Konflikte, Offline im Web #15, #19
37 Selbst entfernen, Namensvergleich, Gäste löschen, Längenbegrenzung #16
38 Kooperativer Sieg in Siegquote, Teampunkte, niedrigste Punktzahl gewinnt #17, #21
39 Mehrere Wertungsbögen, Kategorien löschen, Minus-Kategorien #18
40 Siegquote ohne eigene Teilnahme, Diagrammzeitraum, Spielzeit #21
41 Definition Bestwert, Gäste als häufigste Mitspieler #22

D. Querschnitt und fehlende Stories

Nr Thema Issues
42 Startseite/Dashboard (F18) – keine Story keinem Issue zugeordnet, Entscheidung Chris offen
43 Einstellungsbereich (Sprachwechsel, Abmelden, Hinweis, Konto löschen) – keine Story keinem Issue zugeordnet, Entscheidung Chris offen
44 Admin-Rolle (QUE-07) und Admin-Bereich (QUE-08) – keine Story, von KAT-04/KAT-05 vorausgesetzt keinem Issue zugeordnet, Entscheidung Chris offen
45 E-Mails in R1, Sprache der Mails #1, #13, #23
46 Diagramme für Screenreader #21
47 Selbstbestätigung Mindestalter 16 ausreichend? #1
48 Kennzeichnung fremdsprachiger Katalogtexte #4