Domain-driven Design Renaissance & Event Storming with Christoph Baudson
Our first Java User Group Thüringen Meetup in Ilmenau took place on 18th October 2017 in the Softwarepark near the Technical University. We had around 20 guests interested in the topic, a lot of them for the first time.
We started with a short welcome and our JUG introduction presented by Benjamin Nothdurft and Carsten Zeitz.
Our speaker for the evening was Christoph Baudson from REWE Digital. He is the founder of the new Domain Driven Design Köln/Bonn Meetup and organizer of the Bonn Agile Meetup.
Domain Driven Design Renaissance
We started with the origins of Domain Driven Design in the 1960–90s and the relationship between domain experts and software experts. Then we came to Eric Evans and his standard reference „Domain-Driven Design: Tackling Complexity in the Heart of Software“. Christoph also talked about agile methods and practices and how they fit into the big picture.
In the next part the focus was on the most important concepts of DDD:
Domain, Domain Model, Bounded Context and Ubiquitous Language.
Based on a practical example Christoph explained these concepts and the relation between them.
Finally he demonstrated how REWE Digital has build its organization and architecture based on the DDD and Conway’s law. Additionally we learned techniques like Event Sourcing and CQRS (Command Query Responsibility Segregation) which match perfectly to DDD.
Event storming
After a short break an Event Storming workshop followed. The chosen topic was „How to organize a Meetup“. We start to collect business events related to the given topic. Everyone writes PostIts with events and sticks them to the wall along the timeline.
After this, small groups tried to consolidate the events and to find headlines for describing these parts of the organization process. Despite the small amount of time we could figure out some clusters of events. Christoph finished the workshop with a short summary and described how the results can be used for further refinement.
Thanks to Christoph Baudson for the interesting talk, the practical insights and sharing the slides.
Special thanks to Stefan Riehmer for the photos.