Bei komplexen Softwareentwicklungen kommt oft nicht das heraus, was gewünscht war, bedingt durch Kommunikationsprobleme zwischen Fachleuten und Technikern. Wie wäre es, wenn Fachseite und Entwickler miteinander in derselben Sprache sprächen, um zu merken, ob sie dasselbe meinen?
Was Domain Driven Design bewirkt
Domain-Driven Design (DDD) gibt Ihnen diese Sprache in die Hand: Fachexperten und Entwickler modellieren dabei gemeinsam in Fachsprache – mit vordefinierten Bausteintypen und Mustern. So wird wirklich klar, wie die zukünftige Lösung aussehen soll. Das vereinfacht die Kommunikation und macht das Ergebnis eindeutig.
Was Sie im Workshop erwartet
In diesem Advanced-Level-Modul lernen Sie, wie Sie eine Domäne übersichtlich aufteilen, Fachsprachen dazu entwickeln, und die DDD-Muster einsetzen, um eine an der Domäne orientierte Anwendung zu entwerfen.
Gemeinsam üben wir an einer Beispiel-Anwendung die einzelnen Schritte hin zu einer anwendungsorientierten und qualitativ hochwertigen Architektur. Sie werden erleben, wie einfach ein Entwurf sein kann, wenn man sich auf die Fachdomäne und die architektonischen Leitplanken von Domain-Driven Design einlässt!
Durch diesen Kurs bekommen Sie nicht nur ein solides Verständnis der DDD-Konzepte, sondern (was ebenso wichtig ist) das Selbstvertrauen, das Sie brauchen, um dieses Wissen im Entwicklungsalltag wirklich anzuwenden.
Zertifizierung
Akkreditiertes Training als Vorbereitung für den iSAQB Certified Professional for Software Architecture, Advanced Level (CPSA-A®️)
Das Seminar deckt DDD, einen Baustein für die Bereiche „Methodische Kompetenz“ und „Kommunikative Kompetenz“ des CPSA-Advanced Curriculums ab und ist entsprechend beim iSAQB®️ akkreditiert. Wenn Sie die Zertifizierung zum CPSA-A anstreben, können Sie sich mit der Teilnahme 10 Credit Points methodisch und 20 Credit Points kommunikativ anrechnen lassen.
Zielgruppe
Zielgruppe sind Softwarearchitekten und Entwickler, die Systeme entwerfen und/oder weiterentwickeln. Sie sollten Erfahrungen in IT-Projekten oder in der Produktentwicklung gesammelt haben; Kenntnisse in einer bestimmten Technologie oder Programmiersprache sind zum Verständnis und zum Mitarbeiten nicht erforderlich. UML-Kenntnisse sind hilfreich, aber nicht zwingend erforderlich.
Inhalt
Domäne, Modell und Ubiquitous Language
Domäne, Domänenmodell, Ubiquitous Language, Module, Entity, Value Object, Aggregate, Service, Factory, Repository, Domain Event
Knowledge Crunching: Der Weg zum Modell
Agile und evolutionäre Modellbildung, Empowerment der Domänenexperten, Kollaborationsformen zur Modellerhebung, Werkzeuge zur Modellerhebung
Vom Modell zur Implementierung
Fachliche Klassen und technisch motivierte Bausteine, Zusammenhang zwischen Modell und Code, Sprache und Codequalität
Das Modell in der Anwendungsarchitektur
Hexagonal Architecture, Command-Query Responsibility Segregation, Layered Architecture, Dependency Injection, Behaviour Driven Development
Strategic Design 1: Modelle schneiden und voneinander abgrenzen
Subdomain, Bounded Context, Core vs supporting vs generic subdomains, Context Map
Strategic Design 2: Context Mapping
Customer/Supplier, Open Host Service, Shared Kernel, Domain Event als Kommunikationsmittel, Anticorruption-Layer, Separate Ways
Voraussetzungen
Sie sollten Erfahrungen in IT-Projekten oder in der Produktentwicklung gesammelt haben; Kenntnisse in einer bestimmten Technologie oder Programmiersprache sind zum Verständnis und zum Mitarbeiten nicht erforderlich. UML-Kenntnisse sind hilfreich, aber nicht zwingend erforderlich.
Durchführungshinweise
Über eine ausgewogene Mischung von Vortrag und praktischen Übungen lernen Sie mit meiner Anleitung in der Gruppe, wie Sie Fachleute und Entwickler zusammenbringen und ein Domänenmodell Ihrer Anwendung erstellen, in klarer, einfacher, präziser und gemeinsam verabredeter Sprache. Die maximale Teilnehmerzahl ist 12.
Online/Remote-Variante
Seit CoViD-19 aktiv ist, gebe ich die DDD-Trainings auch online, mit Zoom (oder notfalls auch Microsoft Teams) als Videoplattform sowie Miro als Online-Whiteboard. Ein voll eingerichtetes Videostudio mit professioneller Sende-Hardware habe ich dafür aufgebaut.
Hier ein paar Ergebnisse aus den Online-DDD-Trainings:
Anmeldung
Sie können das DDD-Training auf diesen Partner-Sites buchen:
- für Österreich: Albion Academy
- für Deutschland: Entwickler-Akademie
- für die Schweiz: Tectrain
Auch "in-house" ist das Training buchbar. Sprechen Sie mich in dem Fall direkt telefonisch unter +49 (170) 772 8545 oder per E-Mail unter mbohlen@mbohlen.de an.
Option: Consulting zur Einführung von DDD in Ihrem Unternehmen
Passend zu den Inhalten der Schulung habe ich ein Online-Consultingprogramm aufgelegt. Mit diesem wird es für Sie und Ihre Teams leicht, die ersten Schritte mit DDD im eigenen Unternehmen zu machen.
Das Programm finden Sie hier: