The pattern defines a provider (also known as a subject or an observable) and zero, one, or more observers.
It's suitable for any scenario that requires push-based notification.
The observer design pattern enables a subscriber to register with and receive notifications from a provider.