• Teaser Home

    Clean Code Developer School

    Saubere Softwareentwicklung üben – regelmäßig, fokussiert, individuell, angeleitet

Ticket Scanner

Application Kata „Ticket Scanner“

Entwickle eine Anwendung zur elektronischen Einlasskontrolle bei Veranstaltungen. Die Besucher legen einen Barcode vor, der sie zur Teilnahme qualifiziert. Der Barcode kann auf Papier oder im Display eines Gerätes mitgebracht werden.

Die Anwendung scannt den Barcode und zeigt an, ob Einlass gewährt wird. Dabei ist natürlich Performance gefragt: schnell scannen und schnell prüfen, ob Einlass zu gewähren.

Wenn Barcode gültig, werden darin verschlüsselte Infos gezeigt, z.B. Platznummern oder Zahl der Personen, für die das Ticket gilt.

Wenn Barcode ungültig, dann wird angezeigt, warum, z.B. außerhalb des Gültigkeitszeitraums, ungültiger Barcode oder Barcode schon gescannt.

In einem Barcode sind folgende Daten zu codieren:

  • Produkt, z.B. Name des Films in einem Kino inkl. Platznummer(n) usw.
  • Transaktionsnummer für interne Weiterverarbeitung
  • Gültigkeitszeitraum, abhängig vom Event

Die Daten im Barcode sind zu verschlüsseln. Aussteller und Kontrolleur gehören dabei zur selben Partei. Es reicht also, einen geheimen Schlüssel zu benutzen, den die ausstellende Anwendung und der Ticket Scanner kennen.

Der Barcode kann als Strichcode oder QR-Code vorliegen.

Die Anwendung kann eine Desktop-Anwendung mit angeschlossenem Handscanner sein oder eine mobile Anwendung, die mit der eingebauten Kamera arbeitet.

Variation #1

Es sind mehrere Ticket-Scanner gleichzeitig im Einsatz. Die gescannten Barcodes müssen allen bekannt sein.