Design loosely-coupled, domain-aligned software architectures and organisational structures by learning the principles and practices of Strategic Domain-Driven Design guided by the Bounded Context Canvas.
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.
One of the biggest challenges of DDD and architecture in general is breaking a large system down into loosely-coupled sub-systems. Using the Bounded Context Canvas 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.
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 by modelling the domain as a series of loosely-coupled, highly-cohesive bounded contexts aligned with natural contours in the business domain.
As you model the large domain, you will learn how to make business model-guided modelling choices by identifying the highest value parts of a system - the core domains - as well as generic and supporting capabilities.
You will work iteratively, refining your designs to accommodate technical considerations like legacy constraints and you’ll learn how to shape the organisation that will build and deliver the bounded contexts, rounding out your sociotechnical design skills.
On your journey, you will be guided by the Bounded Context Canvas, 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 canvas will also help you to practice just enough design up-front.
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
- Product Managers / Owners
- Business Analysts
- Delivery Managers
- Engineering Managers & Directors
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.
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. (Anonymous post-workshop feedback)