Webdevelopment

The Padellers

Snelst groeiende sport in Nederland vraagt om geavanceerd reserveringssysteem

Binnen zeer korte tijd de belangrijkste elementen van het nieuwe reserveringssysteem draaiend op een volledig laravel ecosysteem.

padel

Hoe het allemaal begon

Met een reserveringssysteem dat niet voldeed aan de wensen en dat daarnaast veel extra support (telefoon en mail) veroorzaakte, werd er gezocht naar iets nieuws. Een systeem dat in elk geval maatwerk zou bevatten voor het zeer complexe reserveringssysteem. Om op die manier een gebruiksvriendelijk systeem te worden voor de nu vaak ontevreden gebruikers én dat een slim systeem wou worden voor clubeigenaren.

Discovery Phase

Er lag dus een vrij duidelijke wens die we verder hebben uitgewerkt in een discovery phase. Met als eindresultaat een concrete lijst van wensen die daadwerkelijk te realiseren zouden zijn in slechts een aantal maanden tijd én binnen het beschikbare budget.

Wat we hebben gerealiseerd 

Een MVP! En voor de Padellers is dat MVP een webapp waar momenteel voor zes verschillende banen sportievelingen naar hartelust kunnen reserveren. En waar baanbeheerders middels een adminportal alles kunnen overzien en waar ze eenvoudig wijzigingen in kunnen aanbrengen.

Eenvoudig reserveren is mogelijk dankzij complexe planningstool

Het reserveringssysteem voor een Padelbaan moet net zo snel en wendbaar zijn als de sporters. En zo eenvoudig als het aan de voorkant lijkt, des te groter is de complexiteit aan de achterkant.

Waar we allemaal rekening mee hebben gehouden;

  • Er is een verschil tussen het boeken van een les en een losse baan
  • En onder bepaalde voorwaarden kan een baan reservering weer worden omgezet in een proefles met instructeur
  • Er is een minimum van 60 minuten vrij tussen twee verschillende boekingen
  • Bij iedere boeking wordt alle informatie over de hele dag opgehaald, zoals openingstijden, sluitingstijden en de hierboven genoemde gaten van max 60 minuten.
  • Er is een reservelijst optie. Dus als de baan en het tijdslot van voorkeur geboekt zijn, maar worden gecanceld dan krijg je daar een melding van.
  • Je kunt meerdere banen in één keer boeken, bij grote groepen bijvoorbeeld.
  • Boekingen in een reeks is ook mogelijk. Bijvoorbeeld meerdere weken achter elkaar op dinsdag om elf uur.
  • Daarnaast kun je ook nog producten koppelen aan je boeking, zoals een racket of zelf een drankje.
  • Banen hebben in piek en daluren en op verschillende locaties andere prijzen
  • Er kunnen kortingscodes worden ingevoerd. Bij het aanmaken van die codes wordt rekening gehouden met allerlei variabelen, zoals hoogte van kortingen, variabelen op basis waarvan de korting kan worden aangeboden en kortingen toegepast op de verschillende bij te boeken producten.
  • En, en, en…

Monitoring maakt dit systeem echt robuust

Om er zeker van te zijn dat het systeem correct blijft functioneren maken we gebruik van integratietests en end-to-end tests. Dat automatisch testen is voor ons, in alle projecten die we doen, een cruciaal onderdeel. Bij iedere nieuwe feature of kleine aanpassing die we live willen zetten, voeren we een reeks aan automatische tests uit om te voorkomen dat iets nieuws, iets bestaands kapot maakt.

Daarnaast hebben we voor een solide basis constante monitoring ingericht. Monitoring om de bezetting/beschikbaarheid van banen bijvoorbeeld altijd te controleren. Dit om te voorkomen dat er bijvoorbeeld een dubbele boeking kan worden gedaan. Deze monitoring heeft er overigens ook voor gezorgd dat een aantal onvoorziene scenario’s werd ontdekt en opgelost voordat het een klant kon ‘overkomen’.

Admin omgeving voor baanbeheerders

De admin omgeving is in eerste instantie gebouwd met Laravel Nova. Dankzij Nova hebben we in korte tijd een volledige admin omgeving kunnen ontwikkelen. We hebben daarnaast ook custom componenten toegevoegd die de bezetting van locaties goed inzichtelijk maakt.

Kijktip

Onlangs namen we een uitzending van Enrise Business Talks op waarin een van de betrokken developers ingaat op het reserveringssysteem. Zie het fragment hieronder: 

In de volledige uitzending duiken we dieper in op Laravel en waarom onze developers dit open-source PHP web framework zo graag gebruiken. Je kunt de uitzending hier bekijken.

The Padellers Tech Stack

  • Laravel
  • Laravel Nova
  • Laravel Forge
  • PHP
  • Vue JS
  • Tailwind CSS
  • Adyen, met per locatie een eigen kostenplaats

Over The Padellers

Padel is de snelst groeiende sport in Nederland. De mix tussen squash en tennis en het snelle, dynamische spel maken dit zo’n populaire nieuwe sport. De banen en clubs schieten als paddestoelen uit de lucht, en zo ook The Padellers. Het aantal banen groeit snel, door het hele land. Maar wat deze club anders maakt is het feit dat je geen lidmaatschap hoeft af te sluiten. Je kunt de baan, het racket, de ballen én het drankje achteraf allemaal reserveren. Of je dat dus eenmalig wilt of wel voor het komende jaar op je dinsdagavond.

Specs

Live sinds
juni 2022
Doorlooptijd
+/- 6 mnd
Automatische tests
1100