meldestelle/docs/02_Guides/Event-First-Workflow.md

3.8 KiB
Raw Blame History

type status owner last_update sources
Guide ACTIVE 🧹 Curator & 🏗️ Lead Architect 2026-04-02
docs/03_Domain/01_Glossary/Ubiquitous_Language.md
Domain Workshop 2026-03-17

EventFirstWorkflow (MVP)

Ziel: Ein neuer VeranstaltungsDurchlauf wird konsequent „EventFirst“ aufgebaut. Dabei folgt der Bedienfluss strikt der DomänenHierarchie:

Veranstaltung → Turnier → Bewerbe → Abteilungen → Startliste


1. Vorbedingungen

  • Verein (→ Begriff: Veranstalter) ist im System vorhanden.
  • Grundlegende Stammdaten synchron (Reiter, Pferde, Vereine) optional für die Planung, erforderlich für Startlisten.

Querverweis: → Ubiquitous Language, Abschnitt „Hierarchie der VeranstaltungsStruktur“ und Begriffe „Veranstaltung“, „Turnier“, „Bewerb“, „Abteilung“, „Startliste“.


2. SchrittfürSchritt

  1. Veranstaltung anlegen

    • Eingaben: Titel, Datum(e), Ort, Typ (Turnier, Reitertreffen, …), Veranstalter (Vereinsnummer), interne EventID (System vergibt).
    • Output: Veranstaltung existiert, → VeranstaltungsKassa und → TeilnehmerKontoContainer werden vorbereitet.
  2. Turnier anlegen (innerhalb der Veranstaltung; mehrfach möglich)

    • Eingaben: Turniernummer (offiziell, wenn vorhanden), Sparte(n) (z. B. CDN, CSN), Kategorie (CNEU, C, …), geplanter Zeitraum.
    • Output: Turnier angelegt, → Turnierkassa eröffnet; AusschreibungsMetadaten vorbereiten.
  3. Bewerbe anlegen (pro Turnier)

    • Eingaben: fortlaufende Bewerbsnummer, Bezeichnung, Klasse/Höhe, Richtverfahren, Startberechtigungen.
    • Output: Bewerbe als Container für Abteilungen vorhanden.
  4. Abteilungen planen/anlegen (pro Bewerb, mindestens eine)

    • Eingaben: Abteilungsnummer (fortlaufend), AbteilungsTyp: SEPARATE_SIEGEREHRUNG oder ORGANISATORISCH, optional TeilnehmerkreisFilter (Lizenz, Altersklasse …).
    • Systemhinweis: Bei Überschreiten von ÖTOSchwellenwerten zeigt das System WARNUNG + Option „Override“ (→ TBA hat letztes Wort).
    • Output: Abteilungen stehen für Nennungen/Startlisten bereit.
  5. Startliste erzeugen (pro Abteilung)

    • Eingaben: Nennungen (Paar Reiter+Pferd), ReihenfolgenLogik (z. B. Zufall, Startwunsch), Kollisionen prüfen.
    • Output: Fixierte Startliste je Abteilung; Grundlage für Ergebniserfassung und Abrechnung (Sportförderbeitrag, TierwohlEuro pro Start).

3. Rollen & Verantwortungen

  • Meldestelle: Erfassung/Prüfung der Daten, Startlistenpflege, Kassenabwicklung.
  • TBA (Turnierbeauftragter): Genehmigung von AbteilungsOverrides und RegelAbweichungen (OverrideEvent wird protokolliert).
  • Veranstalter: Finanzielle Verantwortung, KassenSchluss, Freigabe der Ausschreibung.

4. Artefakte & Systemobjekte

  • Veranstaltung (Root) → VeranstaltungsKassa, TeilnehmerKontoContainer, MultiTurnierVerrechnung.
  • Turnier → Turnierkassa, Ausschreibung.
  • Bewerb → Liste von Abteilungen.
  • Abteilung → kleinste ausführbare Einheit (Nennungen, Startliste, Ergebnis, Siegerehrung nach Typ).

5. Akzeptanzkriterien (MVP)

  • Erstellung in exakt der Reihenfolge möglich; Zwischenspeichern und spätere Fortsetzung unterstützt.
  • Abteilungen mindestens 1 pro Bewerb; Typ wählbar; Warnungen bei ÖTOSchwellenwertÜberschreitung.
  • Startliste pro Abteilung generierbar; Kollisionen und Startwünsche werden berücksichtigt.
  • Abrechnung: Gebühren pro Start (Sportförderbeitrag, TierwohlEuro) werden korrekt ausgewiesen; Zahlvorgänge können turnierübergreifend auf TeilnehmerKonto verbucht werden (EventEbene).

6. Querverweise

  • Domänenbegriffe: docs/03_Domain/01_Glossary/Ubiquitous_Language.md
  • ÖTOSchwellenwerte: docs/03_Domain/02_Reference/OETO_Regelwerk/Abteilungs-Trennungs-Schwellenwerte.md