Our first model

Now let's try to practice and do an imaginary EventStorming session for our sample application domain. It is not easy to imagine how it would go since the most crucial aspect of any EventStorming workshop is the people and how they behave. We definitely cannot reproduce it here in writing but could imagine some discussions that can take place and the event flow that is produced.

We will be going through a fictitious EventStorming session, where the classified ads application will be discussed. A facilitator, let's call her Ann, has invited the following people to the workshop:

  • John, the company owner. He believes that the system will be the market leader due to its simplicity and unique features
  • Mary is the UX (user experience) designer, and she was doing some research on existing systems and talked to some potential users
  • Nick and Eve are full-stack developers
  • Ian is executing the back-office, dealing with finances and ensuring that the company is doing well

It is time for the planned session, and people stream into the meeting room, trying to locate chairs but there are none. There are two smaller tables in the room - on one they found some fruits and drinks; on the other one lies a bunch of sticky notes of different colors and a lot of marker pens, enough for a crowd double in size. Two walls are decorated with a long sheet of paper, about seven meters in total. There is also a flipchart and a whiteboard. People look a bit puzzled, and now it is time to bring some clarity.

"Welcome to our first but hopefully not last EventStorming workshop," says Ann, "we will be exploring how our company would like the business to run, and by the end of this session everyone in this room should get the shared understanding on what we want to do."

To do this, we will describe what happens on our side when customers use our services, continues Ann, and we will be using sticky notes for that. To start with we will just put statements of facts, also known as domain events, to the wall. Imagine how stuff flows through the business and something happens, write a couple of words in past tense on a sticky note and put the stickies on the wall.

Ann writes the word "Legend" on the flip chart and puts the orange sticky note with the words "something happened - domain event" in the middle. Then she draws a horizontal arrow on top of the paper sheet on the wall and writes "Time" underneath. "Since another fact follows one fact, they form sequences, or processes, which happen not simultaneously, but in some order, one after another. Therefore, we try to arrange these events on a timeline," she explains.

People in the room seem to get it, and Ann gives everyone a pile of sticky notes and a pen. Still, everyone seems reluctant to do anything and instead look at each other and feel a bit uncomfortable and nervous like they are afraid of doing something wrong. Then John says, "Well, the best place to start is the start. What would be the first thing that happened, maybe when a customer registers with us?" Such uncertainty triggers a discussion, which goes nowhere. There is still not a single sticky note placed on the wall. Noticing this, Ann writes "Classified Ad Published" and puts the first stickie somewhere in the middle.

A single sticky note on the wall already sparkles a discussion on how the primary element in the system should be called - would this be a classified ad or just an ad or something else. People start putting things that seem to happen before an ad is published - like "Ad created" and "Ad updated" as Nick has suggested. After a glimpse, Mary expresses her skepticism about these terms since ads aren't being updated. There are multiple independent properties of the ad, which change differently. For example, uploading a picture is done separately then updating the ad title. Changing the ad category can be restricted and updating the price could trigger some exciting behaviors like informing people who subscribed to a feed of classified ads for which price recently decreased.

At the same time, John starts to discuss some advanced features like seller and buyer ratings, and eventually, they find out that in the other part of the wall, there are no buyers or sellers, but all happens about users. This term seems to have a meaning when talking about authentication and profiles but does not help during the selling and buying process.

At this moment the wall looks like this:

First model

Some work is done, and people need a little break to consume all the goodies that Ann has prepared for them, and to reflect on what was just discussed and discovered.

After the break, they continue.

Eve and John start to discuss the approval process, which was completely missing before. It seems like there is a large percentage of potentially fraudulent and generally malicious classified ads that are placed on competitor's sites and all of them have some prevention mechanisms. Those who didn't bother doing any reviewing at all, quickly lost their credibility and trust and were pushed out of business. But our company has no personnel to keep up with reviewing all ads manually, so the discussion keeps going in circles. Ann notices this and puts a bright pink sticky note on the wall, which says "Malicious ads detection." "We seem to need this, but we aren't sure how," she says. "Let's just put it here to remember and get back to it later when we have discussed the rest." The discussion on this topic then stops and constructively continues towards evolving the process before and after the detection took place by some magic box.

At this point, the third element is added to the notation:

Final notation for the Big Picture workshop

Ian wasn't very active in a discussion and was walking around nodding and sometimes making a grimace of dissent. When Ann asked him what is wrong, Ian impatiently replies, "no one even thought how are we going to earn any money." "Without earning anything we will not survive, we don't have that much investment, and we better get some revenue as soon as we can." This sends a small shockwave to the team, and people start thinking where and how have they forgot to bring the money aspect to the picture. Then, John explains the original idea that the essential service is free but some additional services like placing an ad to the top of the search results, showing larger pictures and so on, will be offered for a small fee. He also explains that the free service is only available for private individuals and if a company wants to sell something via the website, they need to have an exclusive agreement. Plus, he continues, selling cars and real estate should be an entirely different thing, since it requires advanced integrations and some safety measures, but these services will never be free.

This new information sparks discussions and after a short while everyone agrees that for the first version they need to target the largest audience and most straightforward possible service. This means that they will only be offering free ads with a couple of options, which should create the primary revenue stream.

Here comes the end of the workshop and the wall is full of sticky notes. Here is what they were able to produce:

Final big picture model

As we can see, the whole session uncovered several points, which were either unknown or may be assumed by others, but was never made clear. Here are some examples:

  • There is no such thing as ad updated, but rather a picture uploaded and price decreased and so on, which are more precise and trigger different logic.
  • There are different contexts, where a person is known as a user and at the same time as a seller or buyer. The link between those contexts isn't stable, which might be an indication that these are at least different entities.
  • The MVP (minimal viable product) shrank to the bare minimum of free ads with small paid additions. Everything else will come later on.
  • Features like seller and buyer ratings and smart suggestions are nice to have but do not bring immediate value to the users.
  • There will be, however, a strong need for some malicious content detection system, since manual review will work for an insufficient period, considering expectations about the number of ads being published per day.

Developers got a much better understanding of what the business expect the system to do, and how their UX expert expect it to look like. They made many adjustments in original plans, and everyone seems to be on the same page. The ignorance level is much lower than before, and the risk of developers being busy solving the wrong problem is significantly mitigated.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
13.59.79.176