Application Kata "Ticket Scanner"

Develop an application for electronic admission control at events. Visitors present a barcode that qualifies them for entry. The barcode can be brought along on paper or on the display of a device.

The application scans the barcode and indicates whether admission is granted. Of course, performance is required here: scan quickly and check quickly whether admission is to be granted.

If the barcode is valid, it displays encrypted information, e.g. seat numbers or the number of people for whom the ticket is valid.

If the barcode is invalid, the reason is displayed, e.g. outside the validity period, invalid barcode or barcode already scanned.

The following data must be encoded in a barcode:

  • Product, e.g. name of the movie in a cinema incl. seat number(s) etc.
  • Transaction number for internal processing
  • Validity period, depending on the event

The data in the barcode must be encrypted. Issuer and controller belong to the same party. It is therefore sufficient to use a shared secret key that is known to the issuing application and the ticket scanner.

The barcode can be in the form of a barcode or QR code.

The application can be a desktop application with a connected handheld scanner or a mobile application that works with the built-in camera.

Variation #1

Several ticket scanners are in use at the same time. The scanned barcodes must be known to everyone.

en_USEnglish