Software Architecture : Domain Driven Design

  • Number of students: 5424
  • User Rating 4.2  
  • Price: Free for guests

+ Course/Exam/Training Description

Domain Driven Design 

If you are a software developer and want to become an Enterprise Architect or Solution Architect or Technical Architect. Then DDD or Domain Driven Design will help you to lead towards this path. Every Organization looking for better Software which is expandable and maintainable should start using Domain Driven Design. Which is followed by various Software Designs like Hexagon Architecture, Port and Adapter and Clean Architecture which are based on Domain Driven Design. In these series around 15 modules overall we are covering entire Domain Driven Design Concepts.

  • There in total 13 Modules. 

Syllabus

 

1. Introduction: Module-1 : Domain Driven Design

If you are a software developer and want to become an Enterprise Architect or Solution Architect or Technical Architect. Then DDD or Domain Driven Design will help you to lead towards this path. Every Organization looking for better Software which is expandable and maintainable should start using Domain Driven Design. Which is followed by various Software Designs like Hexagon Architecture, Port and Adapter and Clean Architecture which are based on Domain Driven Design. In these series around 15 modules overall we are covering entire Domain Driven Design Concepts.

 

2. Introduction: Module-2 : Domain Driven Design

  • Domain
  • Domain Expert
  • Business Complexity and Technical Complexity
  • Core Domain - Model
  • Cost Center v/s Profit Center or Economic of no design
  • Design v/s Technology - Business Logic

3. Introduction: Module-3 : Domain Driven Design

  • Domain Driven Design Artifacts
  • Strategic Design - Tactical Tools
  • Understanding Problem Space and Solution Space

4. Introduction: Module-4 : Domain Driven Design

  • Strategic Design
  • What is Strategic Design?
  • Ubiquitous Language
  • Bounded Context
  • Context Map

5. Introduction: Module-5 : Domain Driven Design

  • Strategic Design
  • What is Strategic Design?
  • Ubiquitous Language

6. Introduction: Module-6 : Domain Driven Design

  • Domain Driven Design Artifacts
  • Strategic Design
  • Context Mapping

7. Introduction: Module-7 : Domain Driven Design

  • Strategic Design - Anti Corruption Layer

8. Introduction: Module-8 : Domain Driven Design

  • Domain Driven Design Artifacts - Tactical Design
    • Domain Activities
      • Commands
      • Events
      • Queries

9. Introduction: Module-9 : Domain Driven Design

  • Tactical Design
    • Domain Objects
      • Entities
      • Value Objects
      • Aggregate Roots

10. Introduction: Module-10 : Domain Driven Design

  • Domain Driven Design Artifacts
    • Tactical Design : Domain Abstractions
      • Repositories
      • Factories
      • Services

11. Introduction: Module-11 : Domain Driven Design

  • Tactical Design : Domain Abstraction - Factories

12. Introduction: Module-12 : Domain Driven Design

  • Tactical Design : Domain Abstraction - Repositories

13. Introduction: Module-13 : Domain Driven Design

Implementation of Domain Driven Design : Event Storming

Event Storming

Please note Event Sourcing & CQRS and Event Storming are different things. In Old Days Software Architect/Developer and Domain Expert talk about domain using Activity Diagram or Use Case Diagram, sometime Sequence diagram as well or ER Diagram. While discussing with Domain Expert these are not a good approach. If you want to fetch much more information from Domain Expert than use Event Storming. Event storming is an Exercise for creating Domain Models for strategic design. Domain à Sub Domains à Domain Model for each sub-domain. Run Event Storming as a Workshop in presence of Facilitator, so he can guide both Domain Expert and Developer/Architect.

 

Domain Driven Design 

If you are a software developer and want to become an Enterprise Architect or Solution Architect or Technical Architect. Then DDD or Domain Driven Design will help you to lead towards this path. Every Organization looking for better Software which is expandable and maintainable should start using Domain Driven Design. Which is followed by various Software Designs like Hexagon Architecture, Port and Adapter and Clean Architecture which are based on Domain Driven Design. In these series around 15 modules overall we are covering entire Domain Driven Design Concepts.

  • There in total 13 Modules. 

Syllabus

 

1. Introduction: Module-1 : Domain Driven Design

If you are a software developer and want to become an Enterprise Architect or Solution Architect or Technical Architect. Then DDD or Domain Driven Design will help you to lead towards this path. Every Organization looking for better Software which is expandable and maintainable should start using Domain Driven Design. Which is followed by various Software Designs like Hexagon Architecture, Port and Adapter and Clean Architecture which are based on Domain Driven Design. In these series around 15 modules overall we are covering entire Domain Driven Design Concepts.

 

2. Introduction: Module-2 : Domain Driven Design

  • Domain
  • Domain Expert
  • Business Complexity and Technical Complexity
  • Core Domain - Model
  • Cost Center v/s Profit Center or Economic of no design
  • Design v/s Technology - Business Logic

3. Introduction: Module-3 : Domain Driven Design

  • Domain Driven Design Artifacts
  • Strategic Design - Tactical Tools
  • Understanding Problem Space and Solution Space

4. Introduction: Module-4 : Domain Driven Design

  • Strategic Design
  • What is Strategic Design?
  • Ubiquitous Language
  • Bounded Context
  • Context Map

5. Introduction: Module-5 : Domain Driven Design

  • Strategic Design
  • What is Strategic Design?
  • Ubiquitous Language

6. Introduction: Module-6 : Domain Driven Design

  • Domain Driven Design Artifacts
  • Strategic Design
  • Context Mapping

7. Introduction: Module-7 : Domain Driven Design

  • Strategic Design - Anti Corruption Layer

8. Introduction: Module-8 : Domain Driven Design

  • Domain Driven Design Artifacts - Tactical Design
    • Domain Activities
      • Commands
      • Events
      • Queries

9. Introduction: Module-9 : Domain Driven Design

  • Tactical Design
    • Domain Objects
      • Entities
      • Value Objects
      • Aggregate Roots

10. Introduction: Module-10 : Domain Driven Design

  • Domain Driven Design Artifacts
    • Tactical Design : Domain Abstractions
      • Repositories
      • Factories
      • Services

11. Introduction: Module-11 : Domain Driven Design

  • Tactical Design : Domain Abstraction - Factories

12. Introduction: Module-12 : Domain Driven Design

  • Tactical Design : Domain Abstraction - Repositories

13. Introduction: Module-13 : Domain Driven Design

Implementation of Domain Driven Design : Event Storming

Event Storming

Please note Event Sourcing & CQRS and Event Storming are different things. In Old Days Software Architect/Developer and Domain Expert talk about domain using Activity Diagram or Use Case Diagram, sometime Sequence diagram as well or ER Diagram. While discussing with Domain Expert these are not a good approach. If you want to fetch much more information from Domain Expert than use Event Storming. Event storming is an Exercise for creating Domain Models for strategic design. Domain à Sub Domains à Domain Model for each sub-domain. Run Event Storming as a Workshop in presence of Facilitator, so he can guide both Domain Expert and Developer/Architect.

 

This course is FREE!

Other Popular Courses