Duration: 20 hours
DescriptionThis training covers the basic concepts of DDD (Domain Driven Design) and related topics like OOP and OOD. During the course, participants will learn how DDD helps software developers build complex enterprise systems and they will analyze both Strategic (Bounded Contexts) and Tactical tools (primary focus here is on correct design of Aggregates). In addition we will also examine several types of software architecture which can be used with DDD.
The course is based on real world examples and practical assignments, which help participants strengthen their theoretical knowledge and exercise their strategic and tactical modeling skills.
RoadmapModule 1 – DDD Overview. Includes Ubiquitous Language.
Module 2 – DDD Prerequisites. Includes:
- OOP, OOD principles
- Architectural Business Logic Patterns
- Domains, Subdomains
- Bounded Contexts
- Context Maps
- Practice Session #1 – Applying Strategic Design
- Layered Architecture
- Hexagonal (ports and adapters) Architecture
- Event Driven Architecture
- Event Sourcing
- Practice Session #2 – DDD Architectural View
- Value Objects
- Domain Events
- Understand how DDD helps developing enterprise systems
- Know how to apply Strategic thinking when building enterprise systems
- Know how to apply Tactical Modeling skills within a Bounded Context
- Know how to design Aggregates effectively
- Understand the importance of Domain Events and how these can be used to integrate Bounded Contexts