Course: Domain-driven Design

$107.69 incl. vat


duration: 5 hours |

Language: English (US) |

access duration: 90 days |


In this Domain-driven course you will learn the different concepts of the Domain-driven design model. The course starts with an introduction and you will learn the main principles and components of the Domain-driven Design model. Finally you will learn about the methodologies and application architecture.

Among subjects that covered are the benefits of domain-driven design, CWRS model, factories, repositories and far more.


After completing this course you are familiar withe the main principles and components of the Domain-driven Design model.


We recommend basic knowledge of programming.

Target audience

Software Developer, Web Developer


Domain-driven Design

5 hours

Introduction to Domain-driven Design

  • start the course
  • describe the basic concept of DDD
  • describe the DDD approach
  • describe DDD, including domains and contexts
  • describe the various components of DDD
  • describe the domain model in DDD
  • describe the model-driven design map
  • describe the benefits of DDD
  • describe the business value of DDD
  • describe the drawbacks of DDD
  • describe the misconceptions of DDD
  • describe the need for knowledge crunching
  • describe best practices for conducting domain expert interviews
  • describe knowledge crunching from the developer perspective
  • describe knowledge crunching from the domain expert's perspective
  • describe the key aspects of continuous learning
  • describe the key aspects of knowledge-rich design
  • describe the uses of documents and diagrams in DDD
  • describe the key aspects of the domain model in DDD
  • describe the key role of domain experts in DDD
  • describe the purpose of the core domain
  • describe the purpose of generic subdomains
  • describe subdomains and their purpose
  • describe bounded contexts
  • describe context maps
  • recognize the various building blocks and architectures of DDD

Components of Domain-driven Design

  • start the course
  • recognize the concept of layered architecture in DDD
  • describe event-driven architecture
  • describe aspects of representational state transfer and why it's used
  • describe the CQRS model
  • describe entities in DDD
  • define the unique identity attribute
  • describe best practices for entity modeling
  • describe value objects and characteristics
  • explain how to implement value objects
  • define domain services
  • explain the domain service within application layer
  • explain services in the domain layer
  • describe domain events and when and why to use them
  • recognize the various core concepts of domain events
  • describe domain event handling
  • describe the role of modules in DDD
  • recognize the purposes and practices of using modules in DDD
  • describe the purpose of agile models in DDD
  • describe the role of model-driven design
  • describe the differences and similarities between domain-driven and model-driven design
  • describe the role of aggregates
  • describe the benefits of aggregates
  • recognize the various guidelines when using aggregates
  • demonstrate creating a root entity with aggregates
  • recognize the components of DDD

Expanding Design Patterns

  • start the course
  • recognize the roles of various layers in the DDD architecture
  • recognize the purpose of layered architecture in DDD
  • describe the use of service layers of DDD
  • describe the differences between domain experts and stakeholders
  • recognize the domain model boundaries and the effects
  • describe the use of ubiquitous language in DDD
  • describe best practices for communication in DDD
  • describe the benefits of modeling and communication in DDD
  • explain best practices for documenting communication in DDD
  • describe factories and how they're used in DDD
  • describe the benefits of factories
  • describe the interface of factories
  • explain the rationale for choosing factories
  • explain repositories and their uses
  • explain the benefits of repositories
  • explain the considerations for using relational databases
  • describe the concept of refactoring
  • explain the uses and levels of refactoring in DDD
  • explain the concept of deep models in DDD
  • explain the concept of supple design in DDD
  • explain the purpose of the discovery process in DDD
  • explain the linkages between Behavior-driven Development and Domain-driven Development
  • describe the use of event storming
  • describe the purposes of transaction scripting vs. DDD
  • recognize the concepts of various design patterns in DDD

Course options

We offer several optional training products to enhance your learning experience. If you are planning to use our training course in preperation for an official exam then whe highly recommend using these optional training products to ensure an optimal learning experience. Sometimes there is only a practice exam or/and practice lab available.

Optional practice exam (trial exam)

To supplement this training course you may add a special practice exam. This practice exam comprises a number of trial exams which are very similar to the real exam, both in terms of form and content. This is the ultimate way to test whether you are ready for the exam. 

Optional practice lab

To supplement this training course you may add a special practice lab. You perform the tasks on real hardware and/or software applicable to your Lab. The labs are fully hosted in our cloud. The only thing you need to use our practice labs is a web browser. In the LiveLab environment you will find exercises which you can start immediatelyThe lab enviromentconsist of complete networks containing for example, clients, servers,etc. This is the ultimate way to gain extensive hands-on experience. 


Via ons opleidingsconcept bespaar je tot 80% op trainingen

Start met leren wanneer je wilt. Je bepaalt zelf het gewenste tempo

Spar met medecursisten en profileer je als autoriteit in je vakgebied.

Ontvang na succesvolle afronding van je cursus het officiële certificaat van deelname van

Krijg inzicht in uitgebreide voortgangsinformatie van jezelf of je medewerkers

Kennis opdoen met interactieve e-learning en uitgebreide praktijkopdrachten door gecertificeerde docenten


Once we have processed your order and payment, we will give you access to your courses. If you still have any questions about our ordering process, please refer to the button below.

read more about the order process

What is included?

Certificate of participation Yes
Monitor Progress Yes
Award Winning E-learning Yes
Mobile ready Yes
Sharing knowledge Unlimited access to our IT professionals community
Study advice Our consultants are here for you to advice about your study career and options
Study materials Certified teachers with in depth knowledge about the subject.
Service World's best service


Na bestelling van je training krijg je toegang tot ons innovatieve leerplatform. Hier vind je al je gekochte (of gevolgde) trainingen, kan je eventueel cursisten aanmaken en krijg je toegang tot uitgebreide voortgangsinformatie.

Life Long Learning

Follow multiple courses? Read more about our Life Long Learning concept

read more

Contact us

Need training advise? Contact us!