Get in Touch
 Duration 21 hours

Course Outline

Introduction

  • Understanding Domain-Driven Design (DDD) and its advantages
  • Comparing DDD with other development approaches
  • Overview of DDD concepts and project architecture

Tactical Domain-Driven Design

  • Components of a domain model
  • Implementation of entities, value objects, aggregates, repositories, and domain services
  • Application of factories, specifications, CQRS, and event sourcing

Strategic Domain-Driven Design

  • Context map patterns
  • Modeling domains using event storming and domain storytelling
  • Identification and classification of subdomains
  • Defining boundaries and relationships using bounded contexts and other patterns

DDD & Legacy Workshop

  • Navigating challenges and opportunities in legacy systems
  • Analyzing legacy systems using tools like NDepend
  • Refactoring and modernizing legacy code using techniques such as the strangler pattern

Product, Domain & Team-oriented Architecture

  • Advantages and challenges of product, domain, and team-oriented architectures
  • Design and implementation using patterns like microservices
  • Team organization and collaboration strategies
  • Maintaining quality and consistency through automated testing and continuous integration

Data Mesh – Domain-Oriented Data

  • Limitations of traditional data platforms
  • Overview of the data mesh paradigm
  • Building a domain-oriented data platform for discovery, access, and governance
  • Integration of technologies such as Apache Kafka, Apache Spark, and GraphQL within data mesh

Summary and Future Steps

Requirements

  • Familiarity with object-oriented programming and design patterns
  • Proficiency in C# and .NET Core
  • Foundational knowledge of databases and SQL

Intended Audience

  • Developers
  • Architects
  • Analysts

Number of participants


Price per participant (excl. VAT)

Testimonials (1)

Upcoming Courses

Related Categories