Files
MABEA/06_datenmodell.md
T
2026-09-03 17:26:12 +02:00

6.4 KiB
Raw Blame History

Prompt 06 Erweiterbares Datenmodell

Bezug: alle Ergebnisse 01-05, Karten 04_organisationsstruktur, 10_qr_barcode, 11_systemumfang_ressourcenmanagement, 08_mindermenge_gueltigkeit.

Reine fachliche Modellierung (Entitäten/Beziehungen), noch kein DB-Schema (folgt Prompt 20).

1. Grundprinzip der Trennung

Vier klar getrennte Schichten, dürfen nicht vermischt werden:

  1. Materialstamm was für Material gibt es grundsätzlich (Prompt 07).
  2. Beladungsvorlage welches Material soll in welcher Menge in einem Objekttyp sein (Prompt 08).
  3. Konkretes Objekt ein tatsächlicher Rucksack/Fahrzeug/Ressource mit eigener ID.
  4. Ist-Bestand tatsächlicher Zustand eines konkreten Objekts zu einem Zeitpunkt.

2. Kernentitäten

Bereich (Karte 11)

  • Fachliche Domäne, z. B. „Rettungsdienst/KatS". Oberste Gliederungsebene, macht System bereichsoffen.
  • Attribute: Name, Beschreibung.

Kategorie

  • Gliedert Objekttypen/Material innerhalb eines Bereichs (z. B. „Rucksäcke", „Fahrzeuge", „Zelte").
  • Kann hierarchisch sein (Kategorie → Unterkategorie), Granularität final in Prompt 07/11 vertiefen.
  • Attribute: Name, Bereich-Referenz, übergeordnete Kategorie (optional).

Standort

  • Physischer Ort/Wache.
  • Attribute: Name, Adresse (optional).

Objekttyp / Ressourcentyp

  • Generischer Oberbegriff statt „Rucksack" fest zu verdrahten (Karte 11): Rucksack, Fahrzeug, Zelt, Feldbett, Stromerzeuger, Funkgerät, ...
  • Attribute: Name, Bereich-Referenz, Kategorie-Referenz.

Beladungsvorlage

  • Vorlage für einen Objekttyp (z. B. „Rucksack Handball Standard").
  • Enthält Liste von Vorlagenpositionen (Material + Sollmenge).
  • Versionierbar (Prompt 08 vertieft).
  • Attribute: Name, Objekttyp-Referenz, Version, gültig ab.

Vorlagenposition

  • Materialstamm-Referenz + Sollmenge innerhalb einer Vorlage.
  • Attribute: Vorlage-Referenz, Material-Referenz, Sollmenge, Kategorie/Fach (z. B. „Fach 1").

Objekt (konkreter Rucksack/Fahrzeug/Ressource)

  • Konkrete, physische Instanz.
  • Attribute: eindeutige Objekt-ID, Code-Feld für QR/Barcode (Karte 10, Code128-kompatibel), Name/Bezeichnung, Objekttyp-Referenz, Beladungsvorlage-Referenz (Basis), Standort-Referenz, Status (aktiv/außer Dienst).
  • Zuständigkeits-Zuordnung: n:m-Beziehung zu Verantwortlichen (Karte 04), nicht starr an Standort gekoppelt.

Objektposition (Ist-Soll je Objekt)

  • Individuelle Ist-Situation je Material innerhalb eines konkreten Objekts.
  • Sollmenge kann von Vorlage abweichen (individuelle Anpassung, Prompt 10) → eigenes Feld „Sollmenge-Override", sonst Vorlagenwert.
  • Attribute: Objekt-Referenz, Material-Referenz, aktuelle Sollmenge (effektiv), aktuelle Istmenge, optional Sollmenge-Override-Flag.

Materialstamm-Position (Detail in Prompt 07)

  • Stammdaten eines Materials (Name, Artikelnummer, Einheit, Materialtyp: Standard/Ablaufdatum-Charge/Gerät-mit-SN).
  • Bei Materialtyp „Gerät": eigenes Code-Feld für QR/Barcode-SN-Erkennung (Karte 10).

Kontrolle

  • Ein Kontrollvorgang zu einem Zeitpunkt an einem Objekt.
  • Attribute: Objekt-Referenz, durchgeführt von (Benutzer), Start, Ende, Status (nicht gestartet/in Bearbeitung/abgeschlossen/abgebrochen).
  • Enthält Kontrollpositionen (Snapshot je Material: Soll zum Zeitpunkt, Ist erfasst, Abweichung ja/nein).

Kontrollposition

  • Snapshot-Ergebnis je Material innerhalb einer Kontrolle (unveränderlich nach Abschluss, für Historie).

Fehlbestand (Prompt 03)

  • Eigenständiger Vorgang, entkoppelt vom Kontrollabschluss.
  • Attribute: siehe Prompt 03 (Material, Objekt, Standort, Soll, Ist, Fehlmenge, entstanden am, festgestellt von, Ursache, Verantwortlicher, erledigt am).
  • Statusmaschine wie in Prompt 03 definiert.

Nachfüllung

  • Ereignis, das Ist-Menge eines Objekts erhöht.
  • Attribute: Objekt-Referenz, Material-Referenz, Menge, wer, wann, verknüpfter Fehlbestand (falls vorhanden).

Mindermengen-Genehmigung (Prompt 04)

  • Eigene Entität, verknüpft mit Fehlbestand + auslösender Kontrolle.
  • Attribute: Fehlbestand-Referenz, genehmigt von, Begründung, Zeitstempel, gültig bis (nächste Kontrolle desselben Objekts), Status (aktiv/abgelaufen/durch Erledigung beendet).
  • NIEMALS Schreibzugriff auf Ist-Menge.

Benutzer

  • Attribute: Name, Login-Kennung, Passwort-Hash/PIN (Karte 09), Rollen (n:m, Prompt 05), aktiv/inaktiv.

Rolle

  • Mitarbeiter/Kontrollorgan, Materialverantwortlicher, Leitungsverantwortlicher, Administration (Prompt 05). Erweiterbar für Roadmap-Rollen.

Zuständigkeits-Zuordnung

  • n:m zwischen Benutzer (mit Rolle Materialverantwortlicher/Leitungsverantwortlicher) und Standort/Objekt (Karte 04), von Administration gepflegt.

Historieneintrag (Prompt 13 vertieft)

  • Generisches Audit-Log: wer, was (Entität+ID), wann, alter Wert, neuer Wert, Begründung (optional), Aktionstyp.

3. Zentrale Beziehungen (vereinfacht)

Bereich 1───n Kategorie
Bereich 1───n Objekttyp
Objekttyp 1───n Beladungsvorlage 1───n Vorlagenposition n───1 Materialstamm-Position
Objekttyp 1───n Objekt
Beladungsvorlage 1───n Objekt (Basis-Referenz)
Objekt 1───n Objektposition n───1 Materialstamm-Position
Objekt n───m Benutzer (Zuständigkeits-Zuordnung)
Objekt 1───n Kontrolle 1───n Kontrollposition
Objektposition/Kontrolle 1───n Fehlbestand
Fehlbestand 1───n Nachfüllung
Fehlbestand 1───0..n Mindermengen-Genehmigung (i.d.R. max. 1 aktive)
Benutzer n───m Rolle
Alles ───1 Historieneintrag (generisch, polymorph auf Entität+ID)

4. Erweiterbarkeit ohne Schema-Umbau (Designziel)

  • Materialtyp als eigenes Attribut in Materialstamm-Position (nicht als Tabellen-Fork) → Medikamente/Chargen/SN später als Zusatzfelder/Zusatztabellen andockbar (Prompt 07).
  • Lagerbestand (Prompt 15) als eigene Entität analog „Objekt", nur mit Lagerort statt Kontrolle/Fehlbestand-Workflow gleiche Materialstamm-Basis wiederverwendbar.
  • Prüfungen (Geräte-TÜV o. ä., Prompt 24) als eigene Entität mit Referenz auf Materialstamm-Position/Objektposition, unabhängig vom Kern-Fehlbestandsmodell.
  • Code-Feld bereits in Objekt UND Materialstamm-Position vorgesehen (Karte 10), keine Migration nötig, wenn Scan-Funktion kommt.
  • „Entstanden am" in Fehlbestand bereits vorgesehen (Karte 12) für Eskalation.

Referenzen

Arbeitskarten: 04_organisationsstruktur, 10_qr_barcode, 11_systemumfang_ressourcenmanagement, 08_mindermenge_gueltigkeit, 09_authentifizierung