The Mediator pattern promotes loose coupling by defining an object that encapsulates interactions between other objects. It defines an intermediary object that decouples classes that might otherwise be tightly coupled. The Mediator pattern allows for many-to-many relationships between interacting peers to be promoted to full object status. A mediator design example shows how a mediator class can be used to send messages between worker objects without tight coupling.