Meetup: Domain Driven Design Nederland workshop
Voor sommige zal het geen verrassing zijn, maar bij Infi zijn we graag de host voor een Meetup of workshop. Op woensdag 22 maart hebben we onze deuren geopend voor Domain Driven Design Nederland.
Aan de slag
Marijn (organisator van de meetup) had voor de avond een workshop georganiseerd om het domeinmodel van het car-sharing bedrijf Cary Cars te modelleren. Bij binnenkomst stond er een goede maaltijd klaar en was er een korte introductie om vervolgens in groepjes aan de slag te gaan.
Het domein van het fictieve Car-Sharing bedrijf flink uitbreiden was de opdracht. Vanuit een simpel “Pay-as-you-go” model kwam er al snel feedback van de domeinexperts, dat de reserveringstijd en maximum afstand niet voldoende was. Om verder de échte autoliefhebbers aan te trekken moesten er andere pakketten komen waarbij er een grotere afstand en langere tijdsduur mogelijk was.
Maar voordat we begonnen met de code gaf Marijn de tip om op zoek te gaan naar de domeinconcepten zoals deze verstopt zaten in de beschrijvingen. Gewapend met markers gingen we individueel op zoek naar deze concepten, om vervolgens samen te komen en te overleggen welke concepten er gevonden waren.
En nu dan echt aan de slag met code
Na deze oefening was het dan echt tijd voor code. Het ging om uitbouwen van het domeinmodel: het toevoegen van een falende (rode) test en vervolgens zorgen dat die test groen werd, terwijl alle andere tests ook groen bleven. Marijn gaf ons nog de tip mee om de eerder gevonden concepten een representatie in de code te geven. Met de overtuiging dat als het echte domein concepten waren ze vanzelf als een magneet gaan werken en business logica zouden aantrekken. Lege entiteiten of value objects die overblijven kunnen later altijd gemakkelijk weg.
Een leuke oefening waarbij ik samen met twee andere bezoekers in aanraking kwam met Kotlin. Voor mij de eerste keer! Erg leuk om mee te werken en goed te begrijpen zonder uitgebreide kennis.
Na twee uurtje sleutelen aan het domein was er nog een afsluitende centrale sessie waarin resultaten en ervaringen van de avond gedeeld werden. Als afsluiting van de avond en om onze focus en aandacht te belonen, was na het “officiële” gedeelte nog tijd om wat te socializen onder het genot van een blikje frisdrank of een biertje.
Toekomstige meetups?
Wil jij ook een keer een Meetup gehost (of georganiseerd) door Infi bijwonen? Houd dan onze Twitter feed in de gaten, of join onze Infi Developers Meetup. Of ben jij organisator van een Meetup groep met een focus op software-ontwikkeling en ben je op zoek naar een nieuwe locatie? Neem dan ook gerust contact op!