- some people interpret that the Consumer is whose consuming information;
- some other people interpret that the Consumer is whose consuming the service;
- Scenario 1
- Here we have an Consumer application that gets information of a specific customer, hence that’s true, it’s consuming the customer information, and for this the application has to consume the Service function Get Customer Data to get what needs;
- Scenario 2
- Here, an Consumer application needs to store a new customer. In order to make this happen, the Consumer application needs to consume the Service function Add New Customer, providing the information of the Customer to be saved. Although we have an answer of the Status of what happened in this transaction of insert a new customer, consuming the Status information, is not exactly the main objective of the Consumer. This request could even be done in a one-way communication (asynchronously), it all depends on the business context.
In both scenarios we have cleared who is the Consumer, even though in the second scenario the Consumer is providing information to the Provider, the Consumer is still consuming the Provider Service function.
Conclusion: in order to get a better communication regarding who is the Consumer and who is the Provider before starts discussing services design solutions, take into consideration the perspective of function being realized. That being said, the consumer is whose interested to execute a service function, does not matter if it is sending or receiving the information.