RECQ Payload Design
Now that we have the domain and all the functional requirements we can design our Payloads.
To design a RECQ architecture we need to define the four main payloads that describe actions and data.
To do this we need to follow the RECQ Communication Pattern that forces us to describe our system's interactions in terms of distinguished message classes: Commands, Events, Queries and Views.
By analysing each requirement and given the domain we can define these payloads:
As a user, I want to create a to-do list to fill it with todos.
TodoListCreateCommand
TodoListCreatedEvent
As a user, I want to delete a to-do list that does not contain checked todos because now is useless.
TodoListDeleteCommand
TodoListDeleteEvent
As a user, I want to add a to-do inside a to-do list to check it later.
TodoListAddTodoCommand
TodoListTodoAddedEvent
As a user, I want to remove a todo from a todo list because it will never be checked.
TodoListRemoveTodoCommand
TodoListTosoRemovedEvent
As a user, I want to check a to-do inside a to-do list to mark it as done.
TodoListCheckTodoCommand
TodoListTodoCheckedEvent
As a user, I want to get a list of all the Todo Lists in the systems to explore them.
TodoListListItemViewFindAllQuery
TodoListListItemView
As a user, I want to get the details of a to-do list to know every to-do status.
TodoListViewFindByIdentifierQuery
TodoListView
Last updated