Verslag 3-daagse workshop Domain Driven Design

01 juni 2015

Bij Toomba moest erom geloot worden wie als gelukkige naar de 3-daagse workshop Domain Driven Design (DDD) mochten. Er waren maar een aantal plekken beschikbaar voor deze zeer interessante workshop en er moest snel een besluit genomen worden. Kop of munt? Tomasz Zajac en Alexander Linke sprongen een gat in de lucht toen zij hoorden dat zij naar deze exclusieve workshop mochten. Deze 2 ervaren developers zijn heel enthousiast geraakt na deze intensieve maar o zo boeiende en leerzame workshop, gegeven door Vaughn Vernon een ervaren software specialist. Beide heren hebben hun enthousiasme weten over te brengen op de andere developers binnen Toomba door het geven van een kennis sessie. Iedereen is overtuigd; Domain Driven Design is de toekomst en Toomba is er klaar voor om dit te gaan toepassen! Tomasz aan het woord: Wat is Domain Driven Design? “Kort gezegd, legt Tomasz uit, is Domain Driven Design een principe die een taal ontwikkeld tussen de klant en de developers waardoor deze elkaar begrijpen en er geen misverstanden meer ontstaan. Hierdoor verlopen processen efficiënter en sneller, zonder strubbelingen”. Welke oplossing biedt Domain Driven Design? Tomasz zegt: “een van de grote uitdagingen bij het ontwikkelen van grote applicaties is dat het eigenlijk nooit af is. Het project groeit er komen wijzigingen en nieuwe features in en vaak gaat dat hand in hand met code technische uitdagingen”. Hoe kan DDD hier een oplossing voor bieden? “het is een set aan programmeer principes die er voor zorgen dat de code klaar is voor mogelijke aanpassingen in de toekomst en zorgt er ook meteen voor dat je code veel overzichtelijker wordt en geautomatiseerd getest kan worden”, aldus de gedreven developer. Welke voordelen biedt Domain Driven Design? “Een voordeel en een sterk punt van DDD is, zegt Tomasz, dat je een taal ontwikkeld tussen de klant en de developers, een zogeheten "ubiquitous language". Er is namelijk een taal barrière tussen de klant en de ontwikkelaars, een ontwikkelaar praat namelijk vaak over hoe de code in elkaar zit en de klant hoe zijn business dat doet. Door gebruik te maken van DDD ga je ook leren hoe je over hetzelfde kan hebben. Een eigen terminologie ontwikkelen waardoor de business logica van de klant weerspiegeld wordt in je code. Dit zorgt er voor dat de ontwikkelaars veel beter beeld hebben van hoe de business in elkaar zit en de klant wat zijn applicatie wel en niet kan. Op deze manier voorkom je miscommunicatie en is er meer begrip van beide kanten”, zegt Tomasz met een smile. Heb je Domain Driven Design al zelf toegepast? “Wij hebben dit principe toegepast bij Nationale Nederlanden Investment Partners. Het is een langlopend project waarbij de applicatie met meerdere platformen communiceert en nog constant blijft groeien. Wat wij gemerkt hebben met het overstappen naar DDD dat het in het begin leek alsof het ontwikkelen meer tijd kostte. Al snel merkten we dat het ontwikkelen in ons "domain" uiteindelijk een stuk sneller ging. Nieuwe features konden we opeens sneller opleveren en de test effort verkleinen omdat de code geautomatiseerd getest kan worden. Kortom DDD is een heel efficiënte manier om mee te werken en we zijn heel blij dat dit is geïmplementeerd!” Gaan jullie Domain Driven Design ook bij Toomba inzetten? Tomasz vervolgd: “uiteraard willen we dit ook gaan inzetten voor al onze projecten bij Toomba echter gaat dit niet zomaar van de een op de andere dag. Hier gaat een heel traject aan vooraf en als je eenmaal bent begonnen aan DDD dan is het ook zaak dat je dit blijft toepassen anders is het zonde van de tijd en energie die je erin hebt gestoken. Het voordeel is dat ik dit binnen het project van Nationale Nederlanden Investment Partners al heb toegepast. De lessen die we daar hebben geleerd kan ik, samen met mijn collega Alexander Linke, overbrengen binnen Toomba, zodat dit toegepast kan worden op de andere projecten. Ik ben ervan overtuigd dat DDD de toekomst is. We leven in een dynamische en snel veranderende wereld waarin applicaties complexer worden en de technologie alsmaar veranderd. Voor Toomba een must om hierin mee te gaan en daarom ben ik ook blij dat ik intern draagvlak heb kunnen creëren om DDD toe te passen. Want, sluit Tomasz tevreden af, wij als team moeten er allemaal achter staan om dit principe te gaan toepassen want pas dan gaat het werken en kun je de vruchten ervan plukken”.

Kom met ons in contact