(Domain) Commands
The 2nd stop on my fact-driven journey
- Business Rules
- (Domain) Commands
- Aggregates and Sagas are Processes
- The Distributed Execution of Processes
In my first post about business rules I mentioned that I have three truly “essential” ingredients when modeling software along a timeline: 1) Domain events, 2) Commands and 3) Business rules. As I started this journey with number three, business rules, I guess I move on to number two … commands!
However, this post is not so much about EventStorming, but dives more into architectural stuff. In case you are interested you need to read a bit today! :-o
Again, I want to write about a small semantical “shift” that happens to my “mental software meta model”. :-) But this shift regarding commands happens so slowly and gradually, that I believe now: I myself did not conciously see it happening for quite some time! Maybe I can start to express it today: I think that commands (and similar: queries) can and should, if needed and appropriate, be modeled as domain relevant facts … from point of view of the command (or: query) client.
Commands as “facts”?
Maybe some of you will think now: “of course”! But maybe some others will think that this…