The business delegate pattern
This pattern is used to hide the complexity of accessing business services or a business layer from the client or presentation layer by providing a single point of access with a well-defined and simple(r) interface. It can be reasoned to some degree as a variant or evolution of the proxies and decorator patterns that we saw in Chapter 2, Software Design Principles and Patterns, but applied at a larger logical scale between architectural layers. It usually involves at least the following entities:
- A business delegate entity, which acts as the single point of entry for the client to all the available services
- A business lookup or router entity whose function is to route the execution of the incoming request to the appropriate service
- The business services that expose a common interface (directly or via a proxy pattern) with the provided function
The pattern can be represented for our purposes in the following diagram:
...