


(For Software Quality Managers, Software Architects, Software Developers)
The increasing complexity of software solutions and the growing gap between fast-moving business requirements and their technical implementation have motivated the development of DDD. It puts the business requirements at the center and consequently the communication between business departments and development teams. Since the software ultimately reflects what developers have understood, it is crucial to establish a common understanding and a common language. The aim is to develop software solutions that not only precisely map the most complex business processes, but can also be further developed flexibly - with constant development effort over the years.
The course begins with an introduction to our end-to-end case study. First, we explore the domain using EventStorming, an interactive method that allows us to collaboratively model and understand the business domain. Next, we focus on strategic design, including the classification of sub-domains, the definition of bounded contexts and the context mapping method. We will apply what we have learned by developing and evaluating alternative bounded contexts, and on the third day we will focus on tactical design, software architecture and concrete implementation approaches. We discuss specific patterns and architectures that are essential for implementing the models in software.The course ends with a practical coding challenge in which the participants implement a complex domain model.Finally, we discuss experiences and best practices for applying DDD in projects and give an outlook on methods such as Behavior-Driven Development (BDD), Acceptance Test-Driven Development (ATDD) and Example Mapping, which have proven to be valuable additions in practice.
With our certificates, you can officially document the skills you have acquired. This provides clear proof for employers, projects, or internal qualifications. Learn more about our certification system here.

