„It’s all about Domain Honey“ mit Henning Schwentner

Am 31.08.2017 war Henning Schwentner zu Gast beim Microservices Meetup in Frankfurt, das diesmal von codecentric ausgerichtet wurde.


Der Titel des Vortrags war „It’s all about Domain Honey – DDD als Basis für Microservices“.
Los ging es direkt mit einer Warnung, dass die Frequenz des Folienwechsel recht hoch sein wird. Das war nicht zu viel versprochen. :-) Gerade zu Beginn des Vortrags hatte ich den Eindruck, dass jeder Nebensatz eine eigene Folie hatte. Interessanter Stil (The Lessig Method). Hat mir gefallen und habe ich in der Form noch nicht gesehen.
Nachdem er sich und seinen Arbeitgeber WPS auf 40 Folien in 2-3 Minuten kurz vorgestellt hat, ging es mit der Geschichte von DDD etwas langsamer, aber in den gleichen Stil weiter. ;-)
Was ist DDD überhaupt? Wann ist es entstanden und wer sind die Personen, die das Thema DDD mit Veröffentlichungen massgeblich vorangetrieben und beeinflusst haben?
Um DDD weiter zu erklären, hatte der Hamburger Henning die Domäne Schifffahrt gewählt.
Also Container, Containerschiffe, Hamburger Hafen, Elbe, Containerbrücken, die nautische Zentrale am Hafen, Pläne mit Tiefenzahlen und Wasserstandsberechnung unter Einbeziehung des Tidenhubs.
Nachdem er uns die Ubiquitous Language der Domäne durch eine Geschichte (Storytelling?) näher gebracht hatte, ging es mit einer Problemstellung weiter. Die Aufgabe, die WPS hatte, war eine Software zu entwickeln, die es ermöglicht, die Containerschiffe „einfach“ in den Hafen zu navigieren.
Dafür musste die passende Technologie ausgewählt werden und die Realität soweit abstrahiert werden, dass sie sich durch Software modellieren lässt. Außerdem musste man die Domäne mit Hilfe eines Domänen Experten verstehen und die Domänen mussten abgegrenzt werden (Boundary Context). Mit einen Context Mapping kommt man dann zu einem Domain Model. Wobei darauf zu achten ist, dass Begriffe aus der Ubiquitous Language in zwei Bounded Contexts unterschiedliche Bedeutungen haben können.

Eine weitere Sache, die Bedacht werden muss, ist das Tactical Design. Dabei werden die Building Blocks unter anderem die Entities, Aggregates und Value Objects identifiziert. Diese lassen sich anschließend beispielsweise mit Hilfe von Services verwaltet.


Mir hat der Vortrag sehr gut gefallen. Obwohl ich schon mehrere Vorträge zu dem Thema gesehen habe, ist es immer wieder so, dass ich Kleinigkeiten mitnehme und Dinge besser verstehe.

Vielen Dank an Henning für den Vortrag!

Anmerken kann man noch, dass inzwischen das Entwickler-Tutorial von Henning zu dem Thema DDD erschienen ist.

Kommentare sind abgeschaltet.