Users

Most of the time, commands in our system are executed by people who use the system - by users. When designing the model, we often need to understand who is running which command, just because not all commands are allowed to be executed by everyone. We might define different user roles, like "administrator," "manager", "reviewer," and so on, and somehow visualize them, along with their ability to execute specific commands. You might also find useful to identify personas and use them in addition to, or instead of roles. It is particularly helpful if you expect one person to play different roles in the system or when you are modeling an existing system where you know specific people with their particular duties and using their names directly in the model will bring clarity and understanding to everyone involved.

Visually, we can use smaller sticky notes with a person figure, drawn as UML "actor" symbol. You might call your users "actors" too, but in UML actors aren’t necessary users, but in EventStorming we want to have users to be visualized differently, so we use larger pale magenta sticky notes to show external systems, as we discussed in the previous chapter.

Let's put some users into our model:

I used a different read model, which can be used by two different types of users. Here, the Classified Ad owner can mark it as sold. But both the owner and someone who has the role "reviewer" can deactivate the ad.

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

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