diff --git a/22_testkonzept.md b/22_testkonzept.md new file mode 100644 index 0000000..17286c9 --- /dev/null +++ b/22_testkonzept.md @@ -0,0 +1,97 @@ +# Prompt 22 – Testfälle + +Bezug: alle Ergebnisse 01-21. Letzter Prompt der Technikphase (19-22). + +Format je Testfall: Ausgangssituation → Aktion → erwartetes Ergebnis → Fehlerfall (falls zutreffend). + +## 1. Vollständige Kontrolle (Normalfall) +- **Ausgang:** Objekt „Rucksack Handball 17", alle Positionen Soll=Ist im Bestand. +- **Aktion:** Mitarbeiter startet Kontrolle, bestätigt jede Position „passt", schließt ab. +- **Erwartet:** Kontrolle Status „abgeschlossen", keine Fehlbestände erzeugt, Kontrollnachweis mit allen Positionen gespeichert (Prompt 16). +- **Fehlerfall:** Abschluss-Versuch mit unbestätigten Positionen → 409, Liste fehlender Positionen (Prompt 21). + +## 2. Fehlbestand entsteht (keine Nachfüllung möglich) +- **Ausgang:** Soll 10, Ist im Lager tatsächlich 8. +- **Aktion:** Mitarbeiter trägt Ist=8 ein, wählt „nicht verfügbar". +- **Erwartet:** Fehlbestand-Vorgang Status „offen", Fehlmenge=2, `entstanden_am` gesetzt, Kontrolle kann trotzdem abgeschlossen werden (Prompt 03/16). + +## 3. Nachfüllung während der Kontrolle (Sofort-Nachfüllung) +- **Ausgang:** Wie Test 2, aber Ersatz im Lager vorhanden. +- **Aktion:** Mitarbeiter wählt „ja, sofort nachgefüllt". +- **Erwartet:** Fehlbestand entsteht UND wird im selben Moment auf „erledigt" gesetzt, zwei Historieneinträge mit Zeitstempel (Karte 07, Prompt 02). + +## 4. Nachfüllung nach der Kontrolle +- **Ausgang:** Offener Fehlbestand aus vorheriger, bereits abgeschlossener Kontrolle. +- **Aktion:** Verantwortlicher/Mitarbeiter erfasst Nachfüllung außerhalb einer laufenden Kontrolle, Menge = volle Fehlmenge. +- **Erwartet:** Fehlbestand Status „erledigt", `erledigt_am` gesetzt, Ist-Menge im Objekt aktualisiert (Prompt 02/03). + +## 5. Teilnachfüllung +- **Ausgang:** Fehlmenge 5. +- **Aktion:** Nachfüllung von 2 erfasst. +- **Erwartet:** Fehlbestand bleibt „offen" (bzw. „nachgefuellt_teilweise"), Fehlmenge neu 3, Historieneintrag zeigt Teilschritt (Prompt 03). + +## 6. Nicht vorhandenes Lagergut (Sonderfall) +- **Ausgang:** Fehlbestand offen, keine Verfügbarkeit im Lager absehbar. +- **Aktion:** Kein Eingriff über längeren Zeitraum. +- **Erwartet:** Fehlbestand bleibt „offen", zählt in Dashboard-Alter-Filter, kein automatischer Statuswechsel ohne echte Nachfüllung/Genehmigung (Prompt 03/12). + +## 7. Genehmigte Mindermenge +- **Ausgang:** Offener Fehlbestand, Soll 10, Ist 8. +- **Aktion:** Materialverantwortlicher genehmigt mit Begründung. +- **Erwartet:** Status-Vermerk „Mindermenge genehmigt", Ist-Menge bleibt 8, Fehlbestand bleibt fachlich offen, zählt weiterhin als offen in Kennzahlen (Prompt 04/12). +- **Fehlerfall:** Mitarbeiter versucht Genehmigung → 403 (Prompt 05/21). Genehmigung ohne Begründung → 422. + +## 8. Ablauf einer Ausnahme +- **Ausgang:** Aktive Mindermengen-Genehmigung aus Test 7. +- **Aktion:** Nächste Kontrolle desselben Objekts wird gestartet, Abweichung besteht weiterhin. +- **Erwartet:** Genehmigung automatisch Status „abgelaufen", Position erneut regulär als offene Abweichung bewertet, neue Genehmigung nötig falls gewünscht (Prompt 04, Karte 08). + +## 9. Ablauf einer Ausnahme, Abweichung ist bei nächster Kontrolle behoben +- **Ausgang:** Wie Test 8, aber zwischenzeitlich vollständig nachgefüllt. +- **Aktion:** Nächste Kontrolle bestätigt Ist=Soll. +- **Erwartet:** Fehlbestand UND Genehmigung gemeinsam auf „erledigt"/„beendet_durch_erledigung" (Prompt 04, Punkt 4). + +## 10. Ablaufdatum +- **Ausgang:** Material mit Ablaufdatum in 5 Tagen, Warnzeitraum 30 Tage. +- **Aktion:** Kontrolle öffnet Position. +- **Erwartet:** Status „bald ablaufend" angezeigt, auch wenn Menge korrekt (Prompt 14). Nach Austausch: neues Ablaufdatum erfasst, keine Fehlbestand-Erzeugung, sofern Ersatz vorhanden. +- **Fehlerfall:** kein Ersatz vorhanden → normale Abweichung/Fehlbestand (Prompt 14, Punkt 4). + +## 11. Duplizieren eines Rucksacks +- **Ausgang:** Bestehendes Objekt mit Ist-Bestand, offenen Fehlbeständen, Historie. +- **Aktion:** Administration dupliziert mit neuem Namen/Code/Standort. +- **Erwartet:** Neues Objekt mit identischer Struktur/Sollmengen, Ist-Menge=0/„nicht kontrolliert", keine offenen Fehlbestände, keine Historie übernommen, neuer eindeutiger Code (Prompt 09). +- **Fehlerfall:** Code-Kollision → 409 (Prompt 21). + +## 12. Individuelle Abweichung von Vorlage +- **Ausgang:** Vorlage definiert 10 BZ-Messtreifen. +- **Aktion:** Materialverantwortlicher setzt Override auf 15 für ein Objekt. +- **Erwartet:** Objektposition zeigt Sollmenge effektiv=15, Vorlage selbst unverändert, andere Objekte auf derselben Vorlage bleiben bei 10 (Prompt 10). + +## 13. Änderung einer Vorlage (mit individuell abweichenden Objekten) +- **Ausgang:** Vorlage wird geändert (neue Version, Sollmenge einer Position erhöht), ein Objekt hat für diese Position bereits einen Override. +- **Aktion:** Vorlagenänderung gespeichert. +- **Erwartet:** Objekte OHNE Override übernehmen neuen Wert automatisch (dynamische Referenz), Objekt MIT Override bleibt unverändert, bis Override manuell aufgehoben wird (Prompt 08/10). + +## 14. Rollenrechte (Berechtigungsmatrix) +- **Ausgang:** Vier Rollen aus Prompt 05. +- **Aktion:** Jede Rolle versucht jede kritische Aktion (Genehmigen, Sollmenge ändern, Zuständigkeit zuordnen, Benutzer verwalten). +- **Erwartet:** Nur laut Matrix erlaubte Aktionen gelingen (200er), alle anderen 403 (Prompt 05/21). + +## 15. Historie/Nachvollziehbarkeit (Beispiel-Kette) +- **Ausgang:** Wie Prompt 13, Beispiel-Kette (Soll 10, Ist 8 → Fehlbestand → Genehmigung → Nachfüllung → erledigt). +- **Aktion:** Vollständige Kette durchlaufen. +- **Erwartet:** Jeder Schritt als eigener, chronologisch korrekter Historieneintrag mit korrektem wer/wann/alt/neu, alle auf denselben Fehlbestand referenziert (Prompt 13). + +## 16. Kurzzeit-Netzausfall während Kontrolle +- **Ausgang:** Kontrolle „in Bearbeitung", Verbindung bricht nach Eingabe einer Position ab. +- **Aktion:** Eingabe wird clientseitig gepuffert, Verbindung kommt zurück. +- **Erwartet:** Position wird automatisch nachträglich übertragen (idempotenter PUT, Prompt 21), keine doppelte Erfassung, keine Datenverlust-Anzeige mehr nach erfolgreicher Übertragung (Prompt 17). + +## 17. Abgebrochene Kontrolle +- **Ausgang:** Kontrolle „in Bearbeitung", einige Positionen erfasst. +- **Aktion:** Mitarbeiter bricht ab (z. B. Einsatzalarmierung). +- **Erwartet:** Kontrolle Status „abgebrochen", KEINE Ist-Werte auf Objekt übernommen, kein Fehlbestand ausgelöst, Objekt bleibt „nicht kontrolliert seit vorherigem Datum" (Prompt 16). + +## Referenzen +Bezug: Ergebnisse 01-21 diff --git a/23_papieraloesung.md b/23_papieraloesung.md new file mode 100644 index 0000000..7c7f63d --- /dev/null +++ b/23_papieraloesung.md @@ -0,0 +1,35 @@ +# Prompt 23 – Papierlisten ablösen + +Bezug: [[01_anforderungsanalyse]], [[02_prozess_kontrolle]], [[11_kontroll_ui]], [[16_kontrollabschluss]], [[14_ablaufdaten]]. + +## 1. Ausgangssituation (heutiger Papierprozess) +Mitarbeiter nimmt Rucksack, kontrolliert Papierliste, zählt Material, tauscht abgelaufenes Material aus, trägt Abweichungen ein, unterschreibt, Papier wird abgeheftet. + +## 2. Digitale Entsprechung je Papierschritt + +| Papierprozess | Digitale Entsprechung | Prompt | +|---|---|---| +| Papierliste je Rucksack (Fach → Artikel → Sollmenge) | Beladungsvorlage + Objektpositionen, angezeigt in Kontroll-UI | 08, 11 | +| Material zählen, Häkchen setzen | Ein-Tap-Bestätigung „passt" je Position | 11 | +| Abgelaufenes Material austauschen, handschriftlich vermerken | Digitale Ablauf-Warnung + Austauscherfassung (neues Ablaufdatum) | 14 | +| Abweichung handschriftlich eintragen | Ist-Menge-Eingabe, automatische Fehlmengenberechnung, automatischer Fehlbestand-Vorgang | 02, 03 | +| Unterschrift als Nachweis „ich habe kontrolliert" | Digitaler Kontrollnachweis: Benutzer (Login-gebunden), Zeitstempel, vollständiges Ergebnis je Position, unveränderlich gespeichert | 16, 13 | +| Papier abheften/archivieren | Historie/Audit-Datenbank, dauerhaft und durchsuchbar, kein Papierarchiv nötig | 13, 20 | +| Verantwortlicher blättert Papierlisten durch, um Mängel zu finden | Verantwortlichen-Dashboard mit automatischer Fehlbestand-Übersicht | 12 | +| Mündliche/telefonische Meldung an Verantwortlichen bei Fehlbestand | Automatische E-Mail-Benachrichtigung + Dashboard-Eintrag | Karte 05 | + +## 3. Prozesse mit weiterhin denkbarem Papier-/Druck-Fallback +- **Totalausfall IT/Netz am Standort:** Kein digitaler Zugriff möglich → Papier-Notfallliste als Rückfallebene sinnvoll (gedruckte Kopie der aktuellen Vorlage, ohne Live-Ist-Werte), bewusst nicht Teil des Systems selbst, sondern organisatorische Fallback-Maßnahme außerhalb der Software. +- **Label/QR-Code-Druck:** physisches Label am Objekt (Karte 10) ist selbst „Papier"/Aufkleber – bleibt bestehen, ist aber Träger des digitalen Codes, kein Rückschritt. +- **Rechtliche/organisatorische Nachweispflicht mit Unterschrift auf Papier**, falls von übergeordneter Stelle (z. B. Kreisverband, Behörde) zwingend gefordert – zu klären außerhalb dieses Systems, ggf. digitaler Kontrollnachweis als PDF exportierbar/ausdruckbar als Ergänzung (Roadmap, Prompt 24). + +## 4. Nachvollziehbarkeit im Vergleich zu Papier +- Digital deutlich besser: durchsuchbar, keine Verlustgefahr, automatische Fehlbestandsverfolgung (auf Papier oft „vergessen", expliziter Grundsatz aus `prompts.md`: „Fehlbestände dürfen nicht vergessen werden"). +- Risiko: Akzeptanz/Schulung der Mitarbeiter beim Umstieg – organisatorische Begleitung nötig, kein technisches Thema dieses Konzepts. + +## 5. Organisatorische Anforderungen beim Umstieg +- Übergangsphase denkbar: digitale Erfassung parallel zu Papier, bis Vertrauen in System besteht (organisatorische Entscheidung, kein Systemzwang). +- Alle bestehenden Excel-Listen (Handball Rucksack, Rettungsrucksack, Rucksack PAX SEG) dienen als Datenbasis für initiale Beladungsvorlagen (Prompt 08) und Materialstamm (Prompt 07) bei Einführung. + +## Referenzen +Bezug: [[01_anforderungsanalyse]], [[02_prozess_kontrolle]], [[11_kontroll_ui]], [[16_kontrollabschluss]], [[14_ablaufdaten]]