Event Sourcing

Capture all changes to an application state as a sequence of events.