Semaphores
It is common for data to arrive through the bus or board ports, in some predefined messages and addresses, and must be reproduced to the bus or board in the form of other predefined messages and addresses.
In such situations, the designer simply uses the defined interface for his application. However, the discussion above is relevant when one tries to build an implementation that will use the appropriate interfaces but will also be easy to maintain, modify, and ported to various other environments, usually unknown at design time.