CQRS (Command Query Responsibility Segregation) is the notion that you can use a different model to update information than the model you use to read information| martinfowler.com
Capture all changes to an application state as a sequence of events.| martinfowler.com