Domain Driven Design

Die Akkreditierung bei der iSAQB wird zur Zeit vorbereitet und ist noch nicht erfolgt!

Revolutioniere deine Softwareentwicklung mit Domain Driven Design! Tauche ein in die Welt der domänengesteuerten Architektur und lerne, wie du komplexe Geschäftsprobleme elegant lösen kannst. Unser Kurs vermittelt dir die essenziellen Konzepte und praktischen Werkzeuge, um Software zu entwickeln, die die Bedürfnisse deiner Kunden perfekt abbildet. Sei bereit, deine Entwicklungspraxis auf das nächste Level zu bringen und melde dich jetzt an für unseren Domain Driven Design Kurs!

Ziele

Domain-Driven Design ist ein Ansatz zur Softwareentwicklung, der sich auf die Komplexität von Softwareprojekten konzentriert, indem er das Hauptaugenmerk auf das Kerngeschäft und dessen Logik legt. Die Teilnehmenden lernen die grundlegenden Konzepte und Bausteine von DDD kennen, einschliesslich Ubiquitous Language (allgegenwärtige Sprache), Domains, Subdomains, Bounded Contexts und Context Maps. Das Training vermittelt, wie man komplexe Geschäftsdomänen effektiv modelliert und wie man Geschäftsprozesse in Software abbildet. Bei strategischem Design lernen wir die Aufteilung einer Systemlandschaft in Bounded Contexts und der Entwicklung einer effektiven Kommunikation und Integration zwischen diesen Kontexten. Des weiteren befassen wir uns mit taktischen Mustern, wie Aggregates, Entities, Value Objects, Repositories und Services. Diese nutzen wir, um eine saubere, modulare und wartbare Codebasis zu erstellen. In allen Lerneinheiten stellen wir natürlich den Praxisbezug her.

Zielgruppe

Das Training ist für alle geeignet, die in der Konzeption, Entwicklung und dem Management von Softwareprodukten involviert sind und die Bedeutung der Geschäftsdomäne in der Softwareentwicklung verstehen möchten. Das sind in der Regel Softwareentwickler und Programmierer, Softwarearchitekten, Unternehmensarchitekten, Projekt- und IT-Manager, Business Analysten und Produktmanager, Qualitätssicherungsteams, UX/UI-Designer und IT-Manager.

Dauer

  • 3 zusammenhängende Tage vor Ort oder online

Ein Prüfung findet nach dem Training nicht statt. Das Training ist noch nicht geeignet, um Credit Points für die Prüfung zum Certified Professional for Software Architecture Advanced Level (CPSA-A) zu erwerben.

Voraussetzungen

Die Teilnehmenden müssen «nicht» Certified Professional for Software Architecture Foundation Level (CPSA-F) zertifiziert sein!

Teilnehmerinnen und Teilnehmer sollten folgende Kenntnisse und/oder Erfahrung mitbringen:

  • Grundlagen und weiterführende Konzepte der objektorientierten Softwareentwicklung
  • Erfahrungen bei der Modellierung von objektorientierten Architekturen Hilfreich für das Verständnis einiger Konzepte sind darüber hinaus:
  • Wissen über agile Methoden der Softwareentwicklung, wie z. B. Scrum, Kanban, XP, etc.
  • Erfahrung bei der Zusammenarbeit von Fachbereich und Softwareentwickler:innen.

Unterrichtsmaterial & Medienunterstützung

  • Vorabinformationen
  • Foliensatz
  • Vlad Khononov "Einführung in Domain-Driven Design: Von der Buisness-Strategie zum technischen Design" 2022, ISBN 978-3960091950
  • Vorbereitetes Miro Board (kommt vorwiegend beim Online-Training zum Einsatz)
  • Kahoot Quizze
  • Übungsblätter mit Auszügen aus Fallstudien

Module und Inhalt

Eine kurze Einführung in das Training

  1. Vorstellungsrunde
  2. Trainingsinhalte und Organisatorisches
  3. Das iSAQB® Ausbildungs- & Zertifizierungsprogramm

A. Grundprinzipien und Philosophie

  1. Cognitive Team (over) Load & DDD
  2. Die zentrale Bedeutung der Fachdomäne im DDD
  3. Andere wichtige Konzepte im DDD

B. Strategisches Design: Holistische Sicht schaffen und Abgrenzen

  1. Der Fokus beim Strategischen Design
  2. Collaborative Modelling: Fachwissen sammeln und strukturieren
  3. Bounded Contexts: Spezifische Bereiche der Geschäftsdomäne
  4. Context Mapping: Integrationsstrategien für Bounded Contexts
  5. Weitere Methoden und Techniken zum Erwerb von Fachwissen

C. Taktisches Design: Geschäftslogik und Domänenmodelle implementieren

  1. Der Fokus beim Taktischen Design
  2. Die Schlüsselelemente des taktischen Designs
  3. Architekturstile im Kontext von DDD

D. Domain Driven Design in der Praxis

  1. Das Optimieren von Refactoring mit DDD
  2. Werkzeuge & Hilfsmittel zur technische Umsetzung
  3. DDD in der eigenen Organisation etablieren