ga('send', 'pageview');
Categories
Metod Teknik

Tre tips från DDDx 2015

Årets DDD-konferens i London bjöd på tal som passade både nyfikna och sedan länge frälsta. Även om du missade flyget och möjligheten att diskutera frågorna med några av de ledande DDD-experterna i världen så finns det inspiration kvar att hämta. Vill du bekvämt kolla in talen i efterhand kan du skaffa ett medlemskap på skillsmatter.com helt utan kostnad. Vi på Citerus tipsar om de presentationer vi fastnade mest för och vill tipsa dig att kolla in.

Årets DDD-konferens i London bjöd på tal som passade både nyfikna och sedan länge frälsta. Även om du missade flyget och möjligheten att diskutera frågorna med några av de ledande DDD-experterna i världen så finns det inspiration kvar att hämta. Vill du bekvämt kolla in talen i efterhand kan du skaffa ett medlemskap på skillsmatter.com helt utan kostnad. Vi på Citerus tipsar om de presentationer vi fastnade mest för, som du kan kolla in i efterhand.

Cyrille Martraire presentation “When DDD meets documentation”

Mest uppskattat var presentationen om dokumentation av Cyrille Martraire. Konkret, fylld av energi och kul i en bitvis trött samling talare. Cyrille pratade om olika sätt att dokumentera sitt arbete som INTE innebär att underhålla separata textdokument / wikisidor. Patrik Fredriksson som är en fantastiskt uppskattad lärare inom DDD och mjukvaruarkitektur tipsar om att kolla in presentationen:

– Dokumentation är något jag ofta får frågor om när jag håller kurs i DDD. Även om DDD inte föreskriver något speciellt vad gäller dokumentation brukar mitt råd vara att hålla det så minimalt som möjligt. Jag har ännu inte sett något projekt som orkar hålla separat dokumentation vid liv i någon större omfattning. Cyrille tar detta ytterligare ett steg genom att propagera för att i stort sett ingen dokumentation ska underhållas som separata artefakter, utan istället ska generaras ur den faktiska koden; på så sätt är den alltid aktuell och uppdaterad, säger Patrik.

Johan Östling som med sin breda mjukvarukompetens och nyväckt intresse för DDD fortsätter och berättar att Cyrille bland annat tipsade om att skapa DDD-specifika annotationer. Ett exempel att se över är @AggregateRoot (med tillhörande javadoc) och annotera klasser med det, vilket både ger direkt stöd i IDE (popup med förklaring av vad aggregatroten innebär) och möjlighet att automatgenerera en ordlista för domänen.

– Jag tyckte han i talet lyckades med konststycket att göra det lockande att dokumentera, genom att omvandla det separata “skriv dokumentation”-steget till en del av själva kodknackandet, säger Johan.

Kolla vidare på videon från konferensen eller Cyrilles bokprojekt.

Eric Evans presentation “DDD and Microservices: At last, some boundaries!”

Pia Börlin fick upp ögonen för DDD efter att hon började på Citerus för ett par år sedan och tipsar om Eric Evans tal där han beskriver fördelarna med microservices småskaliga, isolerande natur (Bounded Context).

– Microservices arkitekturen har en isolerande natur som gör det lättare att begränsa dåligt implementerad kod (Big Ball Of Mud). I talet förklarar Eric att isoleringen av respektive service underlättas när man separerar språket som används för att kommunicera mellan olika kontext (Interchange language). Därutöver nämner Eric fördelarna med Context mapping som ett sätt att resonera kring systemdesignen då det synliggör kopplingen mellan respektive service och deras Bounded context. Trots fördelarna med microservices arkitekturen man ska heller inte glömma att man i stora komplexa system kommer att få tampas med precis samma problem oavsett om de är monolitiska eller inte. Mycket av problematiken handlar om icke tekniska saker så som teamsamarbeten och organisation vilket i sin tur resulterar i tekniska konsekvenser för systemet, säger Pia.

Kolla vidare på Evans keynote om microservices JAX 2015 eller videon från konferensen.

Konstantin Kudryashovs presentation “Modelling by Example”

Markus Lindgren som redan innan han började på Citerus gick under namnet “DDD-doktorn” hittade inspiration för att utveckla sina tankar vidare i det tal som Konstantin Kudryashov höll, där han jämförde DDD och BDD.

– Konstantin har funderat en hel på liknande saker som jag själv: relationen mellan DDD och BDD. Kortfattat menar Kudryashovs att det språk som används i BDD-scenarier ofta skiljer sig från ubiquitous language vilket leder till att man tappar kopplingen till domänmodellen och därmed också missar DDD-bitarna när man använder sig av BDD. Lösningen är att använda ubiquitous language i scenarier vilket också möjliggör att samma scenario kan testa både applikationslagret och gränssnittet, säger Markus.

Kolla vidare på Kudryashovs blogg eller videon från konferensen.

Scott Wlaschin presentation “Domain Driven Design with the F# type system”

Presentationen från Scott Wlaschin dök upp som en kul kontrast till Patriks presentation DDD in a Functional Programming Language från 2011.

– Även om både F# och Clojure räknas som funktionella språk är de ganska olika. Det har även hänt en del de senaste åren som gjorde presentationerna kul att jämföra, säger Patrik.

Kolla videon från presentationen av Scott Wlaschin 2015 och talet om “DDD in a Functional Programming Language” av Patrik Fredriksson 2011.

 

Så här hemma från en inspirerande dag på ett ämne vi brinner starkt för känner vi extra lust att fortsätta arbeta för att stärka samarbete mellan teknik och affär. Vi vill väva samman BDD och DDD, jobba vidare på att undersöka möjligheterna att automatgenerera dokumentation i kundprojekt liksom att gräva ytterligare i hur kontext och aggregat hanteras i [micro]servicearkitekturer.

 

Vill du också fördjupa dig mer inom DDD? Anmäl dig till något av våra seminarier eller kurser inom DDD och CQRS!

 

Till Citerus event och DDD-seminarier >

Leave a Reply

Your email address will not be published. Required fields are marked *