Das Herz vieler Geschäftsanwendungen bildet ein objektorientiertes Domänenmodell. Zur Modellierung und Implementierung eines solchen Domänenmodells existiert eine Vielzahl von Möglichkeiten. Eine dieser Alternativen ist die explizite Modellierung aller Zustandsübergänge in Form von Events. Dieser Ansatz bietet unter anderem folgende Vorteile:
- Vereinfachter Support durch vollständigen Audit Log
- Einfache Integration von Drittsystemen
- Leichtere Skalierbarkeit
Die wesentlichen Patterns im Zusammenhang mit dieser Form der Modellierung sind "Event Sourcing" und "Command-Query-Responsibility-Segregation" (CQRS). Die dargestellten Konzepte werden durch Beispiele aus dem Projekteinsatz mit Groovy/Grails illustriert.
16. Herausforderungen
● Aggregat-Modellierung
● Eventual Consistency
● Versionierung von Events
● Einbindung in bestehende Systeme
(Bounded Contexts und Anti Corruption Layer)
17. Nächster SoCraMOB Open Space
Samstag, 29. November
Bielefeld
Anmeldung:
https://www.softwerkskammer.org/activities/
socramob-2014-4
18. Links
● Greg Young: Unleash Your Domain
http://www.infoq.com/presentations/greg-young-unshackle-qcon08
● Martin Fowler: Event Sourcing
http://martinfowler.com/eaaDev/EventSourcing.html
● Martin Fowler: CQRS
http://martinfowler.com/bliki/CQRS.html
● Philip Jander: Persistenz mit Event Sourcing
http://heise.de/-1974051
● Marco Heimeshoff, Philip Jander: CQRS – neues Architekturprinzip zur Trennung
von Befehlen und Abfragen
http://www.heise.de/-1797489.html
● DDD/CQRS Mailing Liste
https://groups.google.com/group/dddcqrs
● Greg Youngs Event Store
http://geteventstore.com/
● Axon Framework
http://www.axonframework.org/