Eventmodeling & Eventsourcing Podcasts

Eventmodeling & Eventsourcing Podcast mit Adam Dymitruk

Episode 1

Starting the podcast. Breaking the Aggregate - with Dynamic Consistency Boundary.

In der ersten Episode unseres Podcasts haben wir verschiedene Themen angesprochen und möchten künftige Folgen kompakt und praxisnah halten – ideal für den Weg zur Arbeit oder zwischendurch. Ein spannendes Thema für die nächste Episode ist das Design von „Given-When-Then“ für Automatisierung, ein Bereich, der zuletzt intensiv in unserem Discord diskutiert wurde. Wir werden beleuchten, ob und wann Read-Models notwendig sind und wie man Testfälle für automatisierte Workflows effizient und wiederholbar gestaltet. Falls ihr Themenvorschläge habt, schreibt sie gerne in unseren Discord. Je nach Aktivität richten wir einen eigenen Kanal ein oder markieren relevante Diskussionen. Zukünftig könnten auch Interviews mit Gästen folgen – bleibt also dran!

  • Kompakte Episoden: Der Podcast soll kurz und praxisnah sein, ideal für den Weg zur Arbeit.
  • Thema der nächsten Folge: „Given-When-Then“ für Automatisierung – eine aktuelle Diskussion aus dem Discord.
  • Herausforderungen: Braucht man Read-Models? Wie gestaltet man Testfälle effizient und wiederholbar?
  • Community-Beteiligung: Themenvorschläge können im Discord eingereicht werden.
  • Zukunftsausblick: Mögliche Interviews mit Experten in späteren Episoden.

Episode 2

Privacy and Eventsourcing. Given / When / Thens. How Vertical Slice Architectures help.

In dieser Podcast-Episode diskutieren die Hosts die Vor- und Nachteile von Event Modeling, Event Sourcing und traditionellen Git-Entwicklungspraktiken. Sie vergleichen trunk-basierte Entwicklung mit Feature-basierter Entwicklung und erläutern, wie Event Sourcing Entwickler dabei unterstützt, Konflikte zu minimieren und die Qualität des Codes zu wahren. Es wird auch auf die Bedeutung von isolierten "Slices" eingegangen, die es Teams ermöglichen, parallel und effizient zu arbeiten, ohne sich gegenseitig zu behindern.

  • Event Sourcing und Event Modeling bieten eine strukturierte Möglichkeit, Konflikte zu vermeiden, indem Entwickler in isolierten "Slices" arbeiten.
  • Trunk-basierte Entwicklung kann zu Problemen führen, insbesondere bei der Verwendung von Feature-Toggles und unvollständigem Code in Produktion.
  • Git-Branches und Feature-Branches sind nach wie vor wichtig für die Qualitätssicherung und verhindern, dass Änderungen unerwünschte Auswirkungen haben.
  • Event Modeling und Event Sourcing bieten eine flexible Möglichkeit, Feature-Toggles durch Subscription-basierte Implementierungen zu ersetzen, was die Codequalität verbessert.
  • Event Modeling fördert eine einheitliche Entwicklungskultur und reduziert Konflikte, indem es klare Richtlinien für die Systemstruktur vorgibt.
  • Trunk-based Entwicklung kann als ineffizient angesehen werden, da es Code in Produktion gibt, der noch nicht fertig ist. Event Sourcing bietet eine bessere Möglichkeit, dies zu handhaben.

Episode 3

AI Integration. New timeline in Given / When / Thens. Security and Eventsourcing.

In dieser Podcast-Episode wird das Thema Event Modeling aus praktischer Sicht behandelt. Der Gastgeber erklärt, wie Event Modeling erfolgreich in verschiedenen Bereichen wie Tests, UI-Design und Security angewendet werden kann. Besonders wird auf die Bedeutung von Sicherheitsmodellen, wie Role-Based Access Control (RBAC), eingegangen, die gut mit Event Sourcing kombiniert werden können, um Transparenz und Nachvollziehbarkeit zu gewährleisten. Zudem wird erörtert, wie man Event Modeling in Sicherheitsfragen gezielt einsetzen kann, um die Kommunikation zwischen Technik- und Business-Teams zu verbessern.

  • Event Modeling ist effektiv zur Generierung von Templates für Tests und UI-Mock-ups.
  • Modellierung von Security sollte sich auf geschäftsrelevante Elemente konzentrieren und technische Rollen vermeiden.
  • Event Sourcing bietet eine hervorragende Grundlage für die Nachvollziehbarkeit von Sicherheitsereignissen wie Zugriffskontrollen.
  • Transparenz und Zusammenarbeit zwischen Business und Technik wird durch Event Modeling in Sicherheitsfragen gefördert.

Episode 4

Keeping things simple

In dieser Podcast-Episode diskutieren Adam und Martin die praktischen Anwendungen von Event Modeling und Event Sourcing. Sie erläutern, wie Event Modeling als Kommunikationsbrücke zwischen technischen und nicht-technischen Teams fungiert, und teilen Einblicke, wie man mit bestehenden Systemen und Technologien, wie z.B. Sagas, umgehen kann. Die Episode betont, dass der Erfolg oft in der Einfachheit der Modelle und deren flexibler Anpassung an die Kundenanforderungen liegt.

  • Event Modeling funktioniert als Brücke zwischen technischen und nicht-technischen Teams, da es keine Implementierungsdetails enthält.
  • Es ist möglich, bestehende Technologien wie Sagas zu integrieren, ohne die grundlegenden Prinzipien von Event Modeling zu gefährden.
  • Die einfache Kommunikation von Systemprozessen ohne technische Jargon ist entscheidend für das Verständnis der Geschäftsseite.
  • Erfahrene Teams können durch Zusammenarbeit und Unterstützung von Experten Fehler vermeiden und schneller Lösungen implementieren.
  • Die Event-Sourcing-Technologie und -Methoden bieten eine gute Grundlage, um auch bei bereits etablierten Systemen effizient zu arbeiten.

Episode 5

A case against Upcasters

In dieser Episode diskutieren Adam und Martin spannende Erkenntnisse aus einem Event-Sourcing-Workshop. Sie gehen auf die Herausforderungen der Versionierung von Events ein, insbesondere wie man mit veralteten Events umgeht und welche Vor- und Nachteile Upcasters mit sich bringen. Ein besonderer Fokus liegt auf der Flexibilität, die Event Systeme komplett umschreiben zu müssen. Zudem teilen sie ihre persönlichen Erfahrungen und Einsichten, wie man alte und neue Event-Versionen in einem Event-Sourcing-Setup sinnvoll behandelt.

  • Verwendung von Upcasters: Sie ermöglichen es, alte Events in neue Versionen zu konvertieren, ohne dass die gesamte Logik für ältere Events angepasst werden muss.
  • Flexibilität von Event-Sourcing: Das System ermöglicht es, alte Events weiter zu verwenden, ohne große Refaktorisierungen vorzunehmen.
  • Verantwortung für historische Daten: Event-Sourcing hilft, die Historie von Ereignissen transparent und nachvollziehbar zu halten, ohne diese zu verbergen oder zu entfernen.
  • Offenheit für neue Erkenntnisse: Auch nach jahrelanger Erfahrung in Event-Sourcing gibt es immer noch Raum für Verbesserung und Weiterentwicklung der Methoden.
  • Vermeidung von unnötiger Komplexität: Durch das Offenhalten alter Event-Versionen in der Systemlogik kann die Komplexität minimiert werden, ohne wichtige Geschäftsinformationen zu verlieren.

Episode 6

Event Modeling Scope and more

In dieser Episode von Adam & Martin's Podcast geht es um die Bedeutung der Vermeidung unnötigen Couplings in Softwarearchitekturen. Sie diskutieren, wie durch sorgfältige Modellierung und die Schaffung klarer, entkoppelter Komponenten das Wachstum und die Wartbarkeit von Systemen langfristig gesichert werden können. Der Fokus liegt darauf, wie Teams durch richtig strukturierte, unabhängige Datenstrukturen und Prozesse die Komplexität reduzieren und teure Fehler vermeiden können. Ein Muss für alle, die Event Modeling und Event Sourcing effektiv einsetzen wollen.

  • Unnötiges Coupling vermeiden – Verbindungen zwischen Komponenten sollten vermieden werden, da sie zu langfristig höheren Kosten und Wartungsaufwand führen.
  • Grüne Boxen für klare Abgrenzungen – Durch die Verwendung unabhängiger Komponenten (grüne Boxen) kann die Komplexität reduziert und das System flexibler gestaltet werden.
  • Schnelle Anpassung durch klare Slices – Arbeitsbereiche sollten klar definiert und abgegrenzt werden, um schnelle und zielgerichtete Änderungen zu ermöglichen.
  • Die rote Pille der Architektur – Wer einmal die Vorteile von klar strukturierten, entkoppelten Systemen erlebt hat, möchte nie wieder zurück zu komplexen, miteinander verknüpften Systemen.

Episode 7

Pure Command Handlers and Sparse Timelines

In dieser Episode des Event Modeling Podcasts sprechen Adam und Martin über die Kernaspekte und die Herausforderungen der Implementierung von Event Modeling und Event Sourcing in Unternehmen. Sie erläutern praxisnahe Ansätze, wie diese Methoden zur Verbesserung von Systemen und Prozessen eingesetzt werden können, und beleuchten häufige Stolpersteine, die in der Praxis auftreten. Wenn du mehr über Event Modeling lernen und erfahren möchtest, wie du es in deinem Unternehmen erfolgreich umsetzen kannst, ist diese Episode genau das Richtige für dich.

  • Event Modeling ist eine Methode zur Modellierung von Geschäftsprozessen, die speziell für verteilte Systeme geeignet ist.
  • Wichtig für die Implementierung von Event Sourcing ist die Kenntnis über die **Komplexität und die zugrunde liegende Architektur**.
  • Die Wahl der richtigen **Tools und Frameworks** spielt eine entscheidende Rolle für den Erfolg.
  • **Fehlerbehandlung und -protokollierung** sind in verteilten Systemen besonders wichtig.
  • Erfolgreiche Integration von Event Sourcing erfordert eine enge Zusammenarbeit zwischen **Technik und Business**.

Episode 8

Event Sourcing Frameworks and more

In dieser Episode sprechen Adam und Martin über die praktischen Anwendungen von Event Sourcing und der Slice-Methode, und wie diese Techniken dabei helfen, effiziente und skalierbare Systeme zu bauen. Sie teilen Erfahrungen aus der Praxis und zeigen, wie man mit Hilfe von Fake Events und der Event-Sourcing-Technologie schnell funktionsfähige Systeme aufbauen kann, selbst wenn noch nicht alle Teile des Systems vollständig implementiert sind. Es geht auch darum, wie die Kombination von Event Sourcing und der Slice-Methode die Entwicklungsarbeit vereinfacht und die Zusammenarbeit zwischen Teams verbessert.

  • Fake Events ermöglichen es, Teile eines Systems unabhängig zu entwickeln und zu testen, auch wenn andere Teile noch nicht fertig sind.
  • Die Verwendung von Slices fördert eine klare Trennung der Systemfunktionen und sorgt für eine einfache Nachvollziehbarkeit von Zustand und Daten.
  • Event Sourcing bietet eine klare Dokumentation der Systemhistorie, was die Entwicklung und Wartung von Software erheblich vereinfacht.
  • Durch die Kombination von Event Sourcing und der Slice-Methode entsteht ein flexibles, skalierbares System, das Entwicklern hilft, fokussiert zu bleiben und schnell Ergebnisse zu erzielen.
  • Die Podcast-Episode betont, dass Event Sourcing auch für Einsteiger zugänglich sein kann, ohne dass tiefgehende Erfahrung notwendig ist.

Episode 9

Maintaining Event Models and more

Im Podcast von Adam & Martin wird die rasante Entwicklung der Event Modeling Community thematisiert, die sich immer mehr selbst organisiert. Die zweite Ausgabe der Veranstaltung, die dieses Jahr in München stattfinden soll, wird eine hervorragende Gelegenheit bieten, sich mit Praktikern auszutauschen und die Fortschritte im Bereich Event Modeling zu feiern. Die Bedeutung der Community und die zunehmende Unabhängigkeit von Event Modeling wurden besonders hervorgehoben. 2025 verspricht ein spannendes Jahr mit einer Vielzahl an Podcasts, die mehr Einblicke in diese dynamische Bewegung bieten.

  • Event Modeling entwickelt sich zunehmend selbstständig und wird nicht mehr nur von wenigen vorangetrieben.
  • Die zweite Event Modeling Veranstaltung in München wird eine wichtige Gelegenheit zum Austausch für Praktiker sein.
  • 2025 wird ein Jahr mit vielen neuen Podcasts sein, die die Community weiter stärken.
  • Die Unterstützung durch Experten wie Alexander und andere ist entscheidend für den Erfolg der Community.
  • Die Veranstaltung bietet auch eine Plattform für das Wachstum der Event Modeling Bewegung in Deutschland.

Episode 10

Avoiding the Pattern Soup

In dieser Episode des Podcasts diskutieren Adam & Martin, wie Event Modeling hilft, Teams durch konkrete Beispiele und praxisorientierte Ansätze zu vereinen. Sie heben hervor, wie wichtig es ist, klare, greifbare Konzepte zu schaffen, die eine enge Zusammenarbeit fördern und Missverständnisse vermeiden. Besonders wird betont, dass Event Modeling als zentralisierte Praxis viele gängige Herausforderungen löst, die sonst durch verstreute Tools und Prozesse entstehen würden.

  • Event Modeling fördert die Zusammenarbeit und sorgt dafür, dass alle Teammitglieder aktiv am Prozess beteiligt sind.
  • Es wird empfohlen, Beispiele statt abstrakte Diagramme zu verwenden, um komplexe Prozesse verständlich zu machen.
  • Ein zentralisierter Ansatz (wie Event Modeling) spart Zeit und reduziert die Notwendigkeit für verschiedene Tools.
  • Der Wert von Workshops wird hervorgehoben, da sie komprimiertes Wissen und praxisnahe Erfahrung bieten.
  • Event Modeling hilft dabei, ein gemeinsames Verständnis für geschäftliche Prozesse zu entwickeln und zu sichern.

Episode 11

No Code Reviews

In dieser Episode von Adam & Martin geht es um zentrale Themen im Bereich Domain-Driven Design (DDD) und Event Sourcing. Es wird diskutiert, wie Aggregates richtig verwendet werden sollten, um Konsistenz zu gewährleisten und warum Code-Wiederverwendung mit Vorsicht betrachtet werden sollte, besonders in komplexen Systemen. Die Episode beleuchtet auch, wie das Verständnis von DDD im Laufe der Zeit gewachsen ist und wie aktuelle Technologien wie Event Sourcing den Ansatz verändern. Wenn du dich für sauberen Code, DDD und Event Sourcing interessierst, ist diese Folge genau das Richtige für dich.

  • Aggregates: Aggregates sollten nur zur Validierung und Ausführung von Kommandos verwendet werden und nicht zur Anzeige von Informationen.
  • Strategisches vs. Taktisches DDD: Viele Diskussionen drehen sich um das strategische DDD, da das taktische DDD oft missverstanden wird und unklar bleibt.
  • Code-Wiederverwendung: Code-Wiederverwendung sollte mit Vorsicht gehandhabt werden, insbesondere in Bereichen, die keine Konsistenzgrenzen definieren, um unnötige Kopplung zu vermeiden.
  • Abstrakte Basisklassen: Die Verwendung von abstrakten Basisklassen sollte vermieden werden, da sie zu starker Kopplung führen und Probleme im realen Projektalltag verursachen.
  • Event Sourcing: Event Sourcing wird immer relevanter und bietet mehr Möglichkeiten, insbesondere mit günstigeren Datenhaltungsmöglichkeiten und neuen Technologien.

Episode 12

Slice, Slice Baby

In dieser Folge diskutieren Adam & Martin über den Umgang mit Fehlern in Event Sourcing-Systemen und wann Fehler als Events persistiert werden sollten. Sie betonen die Bedeutung von Audit-Logs und Nachvollziehbarkeit, weisen aber auch auf Risiken wie Denial-of-Service-Angriffe hin. Zudem gibt es Einblicke in Webinare und die Community rund um Event Sourcing. Abschließend kündigen sie das nächste Webinar an, das sich mit Prozessen und Automatisierung beschäftigen wird.

  • Fehler als Event oder nicht? – Nur wenn ein Fehler eine Nachverfolgbarkeit erfordert (z. B. für Audits), sollte er als Event gespeichert werden.
  • Denial-of-Service-Risiken – Event Sourcing-Systeme müssen sich vor unkontrollierten Eingaben schützen, um Speicherüberlauf zu vermeiden.
  • Webinare & Community – Martin veranstaltet monatliche Webinare zu Event Sourcing, die über LinkedIn angekündigt werden.
  • Nächstes Thema: Prozesse & Automatisierung – Das nächste Webinar wird sich intensiv mit Prozessen und Automatisierungen beschäftigen.

Episode 13

Stop, Collaborate and listen

In dieser Episode sprechen Adam und Martin über die Herausforderungen bei der Modellierung von optionalen Feldern und der Verwendung von mehreren Ereignissen für ein einziges Kommando, insbesondere in Szenarien wie einer Buchung mit einer optionalen Raucherzimmer-Option. Sie diskutieren, wie man solche Szenarien mit Event Modeling und Event Sourcing modellieren kann, und welche Überlegungen dabei eine Rolle spielen. Das Thema wird vertieft, indem sie den Einsatz von Künstlicher Intelligenz (KI) in der Code-Generierung und der Ereignismodellierung erkunden, wobei sie betonen, dass ein präzises und detailliertes Modellieren für geschäftsspezifische Anforderungen unerlässlich ist.

  • Optionalfelder und mehrere Ereignisse: Es ist möglich, ein Kommando zu verwenden, das mehrere Ereignisse erzeugt, aber es hängt vom Fall ab, ob dies sinnvoll ist.
  • Komplexität bei Transaktionen: Wenn eine Option (wie das Raucherzimmer) fehlschlägt, stellt sich die Frage, ob die Buchung weiterhin bestehen bleibt oder auch rückgängig gemacht wird.
  • Einfachheit bevorzugen: Bei der Modellierung sollte man immer auf einfache Lösungen setzen und nicht unnötig komplexe Muster wie Sagas einführen.
  • AI in der Code-Generierung: KI kann helfen, das Ereignismodell und den Code zu generieren, wobei eine präzise Modellierung notwendig ist, um ein genaues System zu erstellen.
  • Wichtigkeit von temporalen Daten: KI funktioniert besonders gut bei der Modellierung von zeitlich geordneten Ereignissen, da sie eine lineare Erzählstruktur benötigt.

Episode 14

AI Nightmares and Expert Help

In dieser Episode teilen Adam und Martin ihre Einsichten zu Event Modeling und Event Sourcing, wobei sie besonders auf die Bedeutung dieser Methoden in einer sich schnell verändernden Branche eingehen. Sie sprechen über die Herausforderungen, denen Unternehmen gegenüberstehen, und wie Event Sourcing als eine Art „Sicherheitsnetz“ dienen kann, um die Entwicklung in turbulenten Zeiten zu unterstützen. Zudem werden Themen wie der Einfluss von Künstlicher Intelligenz und die Notwendigkeit von Expertenrat behandelt. Hören Sie rein, wenn Sie lernen möchten, wie Sie mit Event Modeling und Event Sourcing den Überblick behalten und Ihre Projekte effektiv vorantreiben können.

  • Event Modeling und Event Sourcing bieten Unternehmen ein robustes Set an "Schutzmaßnahmen" in unsicheren Zeiten.
  • Der Einfluss von Künstlicher Intelligenz wird zunehmend spürbar, und Unternehmen sollten sich nicht von den Veränderungen lähmen lassen.
  • Expertenrat ist entscheidend, um in der turbulenten, sich schnell verändernden Technologiebranche nicht den Anschluss zu verlieren.
  • Experten helfen dabei, Event Modeling und Event Sourcing effektiv zu implementieren und dabei die Komplexität zu beherrschen.
  • Verlässliche Methoden wie Event Sourcing bieten Orientierung und eine klare Struktur für Softwareentwicklungsteams.

Working Draft Podcast 606

Dev, Business, Design & Marketing effektiv vereint

Martin identifiziert das Ermitteln und Kommunizieren von Requirements als das größte Problem im Software-Engineering und stellt seinen Event-Modelling-Ansatz als Lösungsvorschlag vor. Mit uns spielt er einen entsprechenden Workshop durch, der alle Stakeholder an einen Tisch holt und die umzusetzende Software als eventgetriebenes System planen lässt. Von der Philosophie des Ansatzes über Parallelen zu Domain Driven Design (siehe Revision 556) bis hin zur Weiterentwicklung des Modells über die Zeit wird keine Plaungsphase außer acht gelassen.

Zum Podcast

Event Modeling praktisch lernen - nutze meinen Onlinekurs "Implementing Eventsourcing"
Inklusive Miro Eventmodeling Lizenz