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
"Gien provided deep insights into properly implementing Strategic Domain-Driven Design, and I really appreciated her guiding approach. At Telenet, I see Strategic DDD as our next major focus, especially given the gap following our start with Tactical DDD."
— Ief Cuynen, Tech Lead, Telenet - workshop participant 2024
"Great remote facilitation with lots of preparation effort. I loved the context mapping patterns part and the bounded context canvas feels good to use. I would love to build upon our early results."
— Sven Winkler - workshop participant 2023
"This workshop was a great introduction to techniques and practices for tackling a complex domain. I gained a greater insight into how to approach all of these techniques and patterns. These topics were familiar to me before but this was a great way to understand them in more detail."
- workshop participant 2022