Are you interested creating deeper models to increase your enterprise business agility? Join Alberto Brandolini for this intensive 3 day DDD workshop to learn how to deliver value for large scale software development with domain driven design by finding the sweet spot between strategy and implementation. You will discover new ways to collaborate with stakeholders and how to develop software and best practices to design performing and robust architectures.
Large scale software development projects often fail to deliver the expected value. Release after release, the resulting stack becomes unsafe and harder to change. Even worse, the fragility of the existing system pollutes the ecosystem: relevant business requests might be procrastinated due to lack of safety, while good developers might be tempted to leave. Domain-Driven Design attacks these problems from the source, by promoting a tighter alignment between business stakeholders and software practitioners, and a different approach for critical software development.
Join DDD expert and event-storming wizard Alberto Brandolini on this intense and interactive three days and learn how to find the sweet spot between strategy and implementation. You will discover new ways to collaborate with stakeholders and how to develop software and best practices to design performing and robust architectures.
Learn how to:
- Choose if, when and where to apply Domain-Driven Design in your own development scenarios
- Correctly structure your domain models
- Safeguard large-scale software developments from becoming fragile
- Choose the most suitable implementation strategies for the different problems at hand
What the community says
""Alberto's teaching style of no Powerpoint presentations and just writing on a Flipchart, whiteboard was a breath of fresh air and is a massive help to keep the audience engaged in the content and also allow better memory recall as you remember the explanation and visuals and could physically point at things. Alberto's ability to merge the questions being asked directly into the course content as if it was all part of the plan provides a really good and collaborative learning environment.""Attendee on 25th Feb 2019
"Alberto is an experienced and skilled coach."Attendee on 24th Oct 2018
"Great, he [Alberto Brandolini] exceeded my expectations."Henrik, Ajour System on 24th Oct 2018
"Best orchestrated learning experience I've had so far!"Julian, Ajour System on 24th Oct 2018
"Amazing!"James, James King Consulting Ltd on 24th Oct 2018
- Domain Driven Design at the state of the art. What matters now and why.
- A different approach to software development: a new mindset makes DDD a perfect match for critical projects.
- Exploring large and complex domain with Big Picture EventStorming. See and touch how different subdomains cooperate and how a business-driven structure for the software infrastructure spontaneously emerges from stakeholder collaboration.
- Strategic DDD: the big picture. Where and when we should approach a complex software development process withDomain-Driven Design. Core Domain, Supporting Generic Subdomains. Strategic Distillation.
- Core Domain Strategies: managing collaboration between developers and other key stakeholders. Debunking mythsabout the Domain Expert. DDD as an approach to software development process: ubiquitous language and Whirlpool model.How DDD meets Agile, Lean and Theory of Constraints.
- Discovery of the system’s behavioural model. Using Design-Level EventStorming to model critical processes and understand stakeholders needs and motivation.
- Conceptual CQRS: how to ask the right questions and understand the most suitable architecture for the domain under investigation.
- Aggregate emersion. Evolution of different implementation strategies since 2004. Which are the best strategies given our current technology stack?
- Which architectures for DDD? Different implementation approaches: DDD by the book, Hexagonal (AKA ports and adapters), Event Sourcing and CQRS. How does it match with current software architecture paradigms?
- Managing Bounded Contexts: how to make multiple models co-evolve and cooperate, without trade-offs that we’ll one day regret.
- Brownfield Context Mapping: how to quickly read the implementation scenario, and how to choose the best strategies to lead implementation. Context Mapping Patterns. Reading organisations structures and limitations.
- Greenfield Context Mapping: strategies to manage models of growing complexity. Why, when and how to split our models. The three archetypes and their implementing patterns.
- Event Driven Modelling: modelling a complex architecture outside-in. Patterns for discovery and modelling of a Domain Events based system.
- Modelling our way out of the legacy: how common flaws in past approaches to modelling paved the way to repeatablestrategies for large system refractoriness in the sweet spot.
- Aggregates: boundaries and implementation strategies. Polyglot persistence.
- Q # A: topic marketplace on the hottest topics, managed in a Kanban fashion.
If you are a Programmer, Software Developer, Tester, Business Analyst or Software Architect that wants to learn the foundations of DDD then this course is for you!