concept event producer in category software development

This is an excerpt from Manning's book Event Processing in Action.
Many event processing applications keep the logic that processes the events separate from the event producers and consumers, as shown in figure 1.5.
An event producer could be a first-class part of a software application. By this we mean that it is a piece of application logic that explicitly generates an event object and submits it to the event processing network. This may happen as a result of a human interaction (see the next section) but sometimes events can be generated less directly. For example, a financial trading system might include a settlement application that automatically generates payment events. This application uses a programming interface to submit the event, as discussed in section 4.3.
As we have already said, the event producer definition elements that appear in an event processing network model attempt to capture only the EPN-facing interfaces of the event producers that they represent. The nature of an event producer, and its inner workings, are opaque, and all you see in the EPN model are, in effect, proxies that represent the real producers. However, the real producers do make up an important part of the event processing application, and so it is worth discussing them.
Any classification of this sort is subjective—in reality a producer may well involve a mixture of hardware, software, and human elements. Also there’s sometimes a choice about where to set the boundary of an event producer. When talking in the abstract it can be difficult to be precise about where the event producer stops, and the rest of the event processing network begins, though this rarely causes a problem when describing or designing an application in practice.