A couple of months ago I tried to use Ziobrando’s event storming with some co-workers and a couple of friends who were trying to do DDD for the first time. This is my report of the experience and how everything went, nothing fancy.
The first time I tried Alberto’s event storming, I was impressed on how easy he was able to let the discussion emerge about the details of the sample application to be designed and how easy was for the newbies to start doing DDD in minutes.
In our workshop, after I briefly explained the sample application to be developed (I was playing the Domain Expert) and the concepts behind Domain Events, the developers started to ask questions and cooperate as a team naturally.
I can confirm what Alberto suggest about writing the first post-it. I perceived some kind of shyness/low confidence on writing it, so I wrote the first one and the rest came in as a nice flow in relation to the questions and relative answers.
The session evolved from the commands implementation to drawing the first aggregates. People also started to talk about subdomains, bounded contexts and ACLs.
The nice thing is that you start with enough to just write events, and only after the people got their hands dirty a more complete explanation arrives. This, in my opinion, has allowed a better understanding of the concepts explained.
The other nice thing, that I really appreciated, was that the participants did not realized, at first, that they designed a complex application without first thinking about database tables. And it is a lot of value in my opinion.
We did this on a Monday evening at 7 pm, but the two hours and half of the session literally flown by.
Also in the last part, where we talked about what we learned, many questions still arose and, with a lot of probability, they won’t have in a more classic passive session.
During the dinner the feedbacks I got was quite in line with mine impressions:
- The fog cleared a lot on some DDD’s concepts;
- Getting the hands dirty from the beginning allowed to understand better the topics;
- You are forced to do the things the right way;
Obviously, a key ingredient was the people with their enthusiasm and will to learn.
I think event storming is a really powerful tool and should be used often. In my company, I will use it for sure for the next big project I will have to work on. Thanks Ziobrando 🙂