As an example of how we might organize the components of our application, and how the previous concepts might work in practice, we present the following simple example.
The use case is that there is an application for delivering food, and this application has a specific service for tracking the status of each delivery at its different stages. We are going to focus only on this particular service, regardless of how the rest of the application might appear. The service has to be really simple—a REST API that, when asked about the status of a particular order, will return a JSON response with a descriptive message.
We are going to assume that the information about each particular order is stored in a database, but this detail should not matter at all.
Our service has two main concerns for now: getting the information about a particular order (from wherever this might...