DDD Europe 2019 was a BLAST!!
“Domain-Driven Design is a Set of Guiding Principles and Heuristics.” – Eric Evans
This was my first Domain-Driven Design conference, and let me tell you, what an experience! In these two days I met new people, I learned new topics, refreshed others, and brought back new ones to research.
The organisers of the Conference did a fantastic job. The venue was perfect, it had plenty of space for people to talk, the auditorium was beautiful, and great rooms for the hands-on. The talks and hands-on were outstanding, with great content and experiences that provided valuable learnings (more on that later).
Day 1 - Talks & Hands-on sessions.
Opening Keynote - Eric Evans
The conference started with Eric Evans, entitled “Language in Context".
He started by explaining some basic concepts sub-domains, context map, bounded context and introduced some new concepts to me bubble context, quaint context, patch on patch context, and the exposed legacy asset. At this point I was astonished and was questioning myself how did I miss all those concepts?
People often misunderstood what DDD is and Eric clarified this at the end of his presentation:
“Domain-Driven Design is a Set of Guiding Principles and Heuristics!” – Eric Evans
Collaborative Modelling in Practice – Marijn Huizendveld
We’re split in small groups and after Marijn explained us what our goal was. It was to map the domain of a Car renting business. The business wanted to solve their problem of when they had to request a car to be serviced. After that he gave us nine ordered tasks to do. Each task brought new insights about the Business needs, it represented a conversation with certain people from the Business or Domain Experts.
Overall it was a funny and challenging exercise. It was fun in the way we had to do it. We had 9 tasks, and every single task had new insights about the Product and represented a conversation with certain people from the business. The challenging part was the fact that communicating with people you don’t know, that have different backgrounds, expertises, experiences and do not speak the same native language makes it very difficult to understand things that would be easy in a different scenario.
Crunching ‘real-life stories’ with DDD EventStorming and combining it with BDD techniques - Hands-on by Kenny Baas-Schwegler & João Rosa
Before this hands-on, I have had one experiment doing it at Teamleader. It was an incredible experience, in half a day we were able to map an entire process and discover so many things about the domain.
My expectation for this hands-on was high. It started by Kenny and João explaining the basic concepts of EventStorming, what was the exercise goal, requirements and constraints, and after that they introduced the first post-it™ colour and its meaning.
We started writing our domain events in the past tense and sticking the orange sticky notes in the plotter paper in a chronological fashion that the events happened. When the right time came Kenny and {{ joao }} introduced another colour and so forth.After that they introduced Example Mapping. A technique to discover business rules and to visualise them. The reason they introduced it was to make sure we discover all business rules as much as possible by looking at it in a different perspective/technique.
Day 2 - Talks & Hands-on sessions.
Breaking Illusions with Testing - Maaret Pyhäjärvi
Testers don’t break the code, they break the illusions about the code – Maaret Pyhäjärvi
Maaret’ve broken some Illusions by telling us some truths about things we often avoid to speak of or we don’t want to acknowledge. For example, the product/code that is being built it’s doing what is supposed/needed to do. This most of the times is not true, the product/code can have bugs and users might have found workarounds for the limitations of your product and thus figuring out of using it in a different way that you intended it to be used.
She also mentioned how important is to Learn about your product/system/environment because things can look different from different perspectives. She exposed some of her learnings and the lessons she took from them.
Lost in transaction? Strategies to manage consistency across boundaries – Bernd Ruecker
I had a lot of expectations for this talk. Mainly because it’s about a topic I’m aware of its complexity. Transactions across boundaries are hard and to be honest if I can avoid it I will!
Driving DDD with User Story Mapping - Hands-on by Dion Stewart
Dion started by explaining the concepts of User Story Mapping and as long as he was explainning them he would give us an exercise
Wrap Up
This was my DDD Conference and I cannot describe the impact it had in me. I consolidated some knowledge I already had, got introduced to new topics I was not aware of, added more tools to my toolset, and I come back eager to continue learning and put in practice what I’ve learned.
I’m grateful to Teamleader, the company I work for, for giving me the opportunity to came and to all Speakers and Organisers for such an amazing conference. I hope to be back in 2020!