Strategic Domain-Driven Design

Learn the design and strategy principles of DDD
Chris Simon

Strategic Domain-Driven Design

No dates are scheduled for this workshop. Let us know if you think we should organize it near you, or if you'd like to book it on premise in your organisation.


Design loosely-coupled, domain-aligned software architectures and organisational structures by learning the principles and practices of Strategic Domain-Driven Design.

This workshop has been fully designed for a remote audience using the online modelling tool Miro. The course contents will teach Strategic DDD concepts and techniques for attendees who work in remote teams or physically co-located teams.

Workshop Summary

One of the biggest challenges of DDD and architecture in general is breaking a large system down into loosely-coupled subsystems.

Working in the setting of a complex domain, you will learn the essential theory of Strategic DDD and Bounded Contexts, and then put it into practice. Using visualisation tools, you will learn how to decompose large problem domains into cohesive, autonomous, domain-aligned bounded contexts which become the blueprint for your software architecture and your organisation structure. The theory and techniques you’ll learn in the workshop will also help you to evolve your architecture over the course of its lifetime.

On your journey, you will be guided by the Domain-Driven Design starter modelling process, providing you with a structured process for exploring and identifying bounded contexts and teaching you the essential questions to ask in order to find a good design, and challenge it to find even better ones. The process will also help you to practise just enough design up-front.

Learning Objectives

  • What Strategic Domain-Driven Design is
  • Applying heuristics for designing bounded contexts
  • Designing contracts between bounded contexts
  • Defining communication patterns between teams
  • Finding where to invest by defining the strategic importance of subdomains

Agenda

Session 1

  • Part 1: Alignment with the business
  • Part 2: Domain discovery with temporal modelling

Session 2

  • Part 3: Designing Bounded contexts
  • Part 4: Bounded context interactions with design level modelling

Session 3

  • Part 5: Context mapping
  • Part 6: Bounded context canvas

Session 4

  • Part 7: Strategic classification
  • Part 8: Open Space

Who Should Attend?

Anybody who works in software teams or with software teams will be able to fully participate in this workshop and take away concrete skills they can apply in real working situations. The following is a selection of the types of people who may want to attend:

  • Software Engineers of all levels
  • Architects
  • Testers
  • Product Managers / Owners
  • Business Analysts
  • Delivery Managers

This workshop is highly practical and interactive, broken down into a series of lectures, group activities, and discussions. Active participation is required, as attendees should be willing to work in small groups with other attendees and contribute to remote modelling activities on a virtual whiteboard.

Requirements and Skill Level

  • Zoom (or access to the Zoom client in your browser)
  • Miro (or access to the Miro client in your browser)
  • You don't need knowledge of Strategic Domain-Driven Design, any particular programming language or technology.

What participants say about this workshop

"Short term it will help me to increase my team productivity with a clear process on how to think about complex problems. It's also a milestone on my long term goal to master DDD which I believe is the most important technical skill to master this decade."

"This workshop was a great introduction to techniques and practices for tackling a complex domain. I gained greater insight on how to approach all of these techniques and patterns. I had heard of all of these before, but this was a great way to get a better understanding on all of them."

Chris Simon

About Chris Simon

Chris is a Startup CTO Coach helping startups realise their vision and new CTOs flourish in their roles. He also supports executives & boards with strategic technology advice, and engineering teams with training, mentoring and consulting in architecture, quality, domain-driven design and test-driven development.

To support teams using Domain-Driven Design, he recently launched https://contextive.tech and co-founded the DDD Australia meetup.

He is the technical co-founder of https://www.inloop.com.au, home of Australian Fintech success stories https://www.flexischools.com.au and https://www.lanternpay.com (Recently acquired by NAB).

All workshops by Chris Simon
@ChrisSimonAu

No dates are scheduled for this workshop. Let us know if you think we should organize it near you, or if you'd like to book it on premise in your organisation.


Also check out