DDDNL meetup #3: OV-Chipkaart

Infi hostte de derde meetup van DDDNL. Net als de vorige meetup was het onderwerp OV-chipkaart, een complex domein waar we allemaal enigszins ervaring mee hebben, toch?

Het doel van de meetup was om tot een ‘werkende’ implementatie te komen van een klein deel van het domein, namelijk het in- en uitchecken en reishistorie van de OV-chipkaart.

'Reiziger is ingecheckt'

In vijf groepen van ongeveer acht man gingen we aan de slag om het model voor ons domein te bepalen. We begonnen met de events te bedenken, bijvoorbeeld: ‘Reiziger is ingecheckt’ met de parameters ‘kaartnummer’, ’tijd’ en ’locatie’. In zeer korte tijd moest je het met je team eens worden over het complete model van je domein. Dit zorgde voor de nodige discussie en voor je het wist, ging de kookwekker alweer voor het einde van de ‘sprint’.

Contracten implementeren

Daarna werden de groepen in twee afzonderlijke ‘bedrijven’ gesplitst en kregen ze allebei een eigen taak. De ene subgroep bepaalde het contract voor het in- en uitchecken van de reiziger en de andere subgroep het contract voor het aanleveren van de informatie om hier een overzicht van te kunnen maken.

Deze contracten werden daarna geïmplementeerd aan beide kanten en de communicatie daartussen verliep via RabbitMQ. Omdat tijd nog steeds schaars was, verliep alles een beetje hectisch; verwacht bij een JSON schema oplezen dus niet dat het daarna direct goed werkt ;).

Failliet verklaard

Toen dit allemaal enigszins functioneel was, gingen de aanleverenden partijen failliet en werden deze een groep opgeschoven. Zo moest je opeens je contracten met een ander ‘bedrijf’ vergelijken en proberen te conformeren aan elkaar. Sommige groepen hadden geluk en hoefden maar een paar variabelen aan te passen, andere groepen konden eigenlijk beter opnieuw beginnen.
We eindigden met een korte presentatie van enkele teams die succesvol met hun nieuwe partner konden 'praten', waarbij een team zelfs nog een simpele html dashboard van de reishistorie in elkaar had gehackt.

Sourcing-messaging-dddworkshop

De derde DDDNL meetup over de OV-chipkaart was misschien niet een puur DDD workshop, maar meer een combinatie van event storming-scrum (er was zelfs een heuse microretro)-event en sourcing-messaging-dddworkshop. Desalniettemin was het zeker de moeite waard!

Wil je meer leren over DDD? Ga dan ook naar de volgende meetup van DDDNL of kom eens naar een van onze Infi meetups.

[Corné is ontwikkelaar bij Infi]

Wil je iets waarmaken met Infi?

Wil jij een eigen webapplicatie of mobiele app waarmee jij het bij anderen maakt?

Waargemaakt door de nerds van Infi.
Nerds met liefde voor softwareontwikkeling en die kunnen communiceren. En heel belangrijk: wat we doen, doen we met veel lol!

Wij willen het fixen. Laat jij van je horen?

Voor wie heb je een vraag?