One-to-many relationship between objects so that when one object, the subject, changes, the rest, the observers, are notified.
Observers are registered with the subject.
Notifications can be push or pull.
Model-View-Controller
model