Beispielarbeiten · Software & Web-Apps
Buchungssystem: freie Termine, Buchung, Storno, ohne Doppelbuchung
Eine kleine Termin-API mit Zeitzonen, Storno per Token und einer Datenbank, die keine zwei Buchungen auf denselben Termin zulässt, auch nicht bei gleichzeitigen Anfragen.
Musterarbeit (Demo), kein Kundenauftrag. Gebaut als Probeaufgabe mit erfundenen Beispieldaten; die Prüfzahlen unten stammen aus dem automatischen Prüflauf und sind nicht geschönt.
Was gebaut wurde
- Freie Termine je Ressource, Ausgabe in der Zeitzone des Kunden
- Buchung, Storno mit Token, Sperrfrist vor dem Termin
- Gleichzeitige Anfragen auf denselben Termin: genau eine gewinnt, die anderen bekommen eine klare Absage
Wie geprüft wurde
Automatischer Prüflauf vom 18.10.2026, aus dem Protokoll (Testdaten erfunden, Zahlen gemessen):
- 22/22 HTTP-Faelle gruen
- alle 8 ungueltigen Eingaben 422
- gleichzeitig: [201, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 409]
- 5 aktive Buchungen in der DB, Ueberlappungen: 0
Alle Prüffälle (22 von 22 grün)
- ✓ 01 Mo 26.10. (Winterzeit): 16 Slots, 09:00 = 08:00 UTC
- ✓ 02 Fr 23.10. (Sommerzeit): 09:00 = 07:00 UTC
- ✓ 03 So 25.10. (Umstellungstag, Wochenende): keine Slots
- ✓ 04 Ausgabe in New Yorker Zeit (-04:00)
- ✓ 05 Heute nur Slots nach 'jetzt' (10:00)
- ✓ 06 Buchung mit New Yorker Zeit -> 201, 10:00 Berlin
- ✓ 07 Slot danach nicht mehr frei
- ✓ 08 Gleicher Slot in Berliner Schreibweise -> 409
- ✓ 09 Ueberlappung (60 min ab 09:30) -> 409
- ✓ 10 Direkt anschliessend (10:30, 60 min) -> 201
- ✓ 11 Andere Ressource, gleicher Slot -> 201
- ✓ 12 60-min-Verfuegbarkeit beruecksichtigt Ueberlappung
- ✓ 13 Ungueltige Eingaben -> 422 (8 Arten)
- ✓ 14 12 gleichzeitige Buchungen -> genau 1x 201, 11x 409
- ✓ 15 Storno mit falschem Token -> 403
- ✓ 16 Storno mit Token -> 200, Status storniert
- ✓ 17 Slot nach Storno wieder frei, neu buchbar
- ✓ 18 Zweites Storno -> 409
- ✓ 19 Storno innerhalb 2 h -> 409
- ✓ 20 Unbekannte Buchung -> 404
- ✓ 21 Nach Server-Neustart: Buchung noch da
- ✓ 22 Datenbank: keine zwei aktiven Buchungen ueberlappen
Grenzen
Was diese Probe nicht abdeckt, steht hier, damit niemand mehr erwartet:
- eine Anbieter-Zeitzone je Installation, feste Oeffnungszeiten Mo-Fr (keine Feiertage, Pausen, Urlaub - waeren Konfiguration, nicht Teil der Probe)
- kein Zahlungsweg, keine Erinnerungs-Mails/SMS (braeuchten Versanddienst), keine Kalender-Synchronisation (Google/Outlook brauchen Zugang des Kunden)
- SQLite fuer einen Server-Prozess; mehrere Instanzen brauchen PostgreSQL (Exclusion-Constraint)
- Bedienoberflaeche nicht Teil der Probe - API per HTTP geprueft
So etwas für deinen Betrieb?
Beschreib kurz, was du brauchst. Du bekommst einen Festpreis, bevor ich anfange; ohne dein Ja passiert nichts.