Domain-Driven Design
Business Process Modeling
User Story Mapping
Domain Storytelling
Event Storming
Domain Specific Languages
Fact-Driven Architecture

Trainings & Workshops

DDD Fundamentals
DDD Fundamentals

DDD Fundamentals

Domain-driven design (DDD) is an approach to developing software for complex needs by deeply connecting the implementation to an evolving model of core business concepts. Its premise are: 1) Place the project’s primary focus on the core domain 2) Base complex designs on a model 3) Initiate a creative collaboration between technical and domain experts to iteratively cut ever closer to the conceptual heart of the problem.

  • 1 day in-house or flexible 7 hours remote
  • Teamwork and varied hands-on sessions
  • Extensive PDF handout for your reference
  • Up to 12 participants
  • Prerequisites: none

What to expect

The above mentioned premise of Domain-Driven Design seems to be fairly simple, but pulling it off in the messy real world is hard. It calls for new skills and discipline, and a systematic approach. Domain-driven design is not a technology or a methodology. DDD provides a structure of practices and terminology for making design decisions that focus and accelerate software projects dealing with complicated domains. In this training you’ll get introduced to DDD core principles and fundamentals in such a way that you’ll know where to move next.

  • Get introduced to DDD, in particular as an antithesis to “enterprise wide modeling”
  • Learn about the relevance of language in business and business software development
  • Learn about the strategic ideas of “ubiquitous language” and “bounded contexts”
  • Learn about central aspects of Strategic DDD, Collaborative Modeling & Modeling in Code
  • Learn how DDD relates to the idea of highly autonomous teams and (micro)services
  • Exercise context mapping and learn about core, supporting and generic domains
  • Exercise collaborative modeling techniques such as Domain Storytelling or similar
  • Learn how DDD relates to message-driven architectures
  • Learn about classical and modern patterns for modeling in code

Is this for me?

Are you confronted with analyzing or designing customer journeys, workflows or business processes, with a relation to business software development? Are you a domain or business expert in your company required to collaborate with software people? Are you a product owner, a business analyst, a software architect or a lead/senior software developer? Are you looking for lightweight methods to succeed with software design?

If one of these questions applies, this training is for you!