DDD : Domain-Driven Design Avancé
Dernière mise à jour : 20/08/2025
M'inscrire à la formation
Type : Stage pratique
Description
Dans la plupart des projets, il est fréquent de se précipiter sur les choix de solutions (frameworks, stacks techniques, data stores) avant même d'avoir pleinement compris les besoins. Pourtant, le logiciel est avant tout un outil destiné à résoudre efficacement les problèmes métiers. Ceux et celles qui ont déjà expérimenté des techniques de découverte métier, comme l'Event Storming, se demandent rapidement comment faire la transition entre les post-its et le code.
La conception pilotée par le domaine (Domain-Driven Design, ou DDD) est une approche méthodologique de la conception logicielle qui met l'accent sur la modélisation des systèmes en fonction de la complexité des domaines métiers. Cette méthode est particulièrement adaptée aux projets de développement de logiciels complexes.
Au cours de cette formation de deux jours, nous aborderons l'essentiel du Domain-Driven Design, en couvrant à la fois les concepts fondamentaux et l'ensemble du cycle de développement logiciel. Au cours de cette formation de deux jours, nous aborderons l'essentiel du Domain-Driven Design, en couvrant à la fois les concepts fondamentaux et l'ensemble du cycle de développement logiciel.
Objectifs de la formation
- Expliquer l'Event Storming Software Design
- Expliquer l'intérêt du TDD Outside/In
- Définir l'intérêt du Supple vis à vis Deep Modeling
- Déterminer l'architecture hexagonale
Public visé
- Expert métier
- Développeur
- Leader technique
- Architecte technique
- Chef de projet en développement
Prérequis
- Connaissance en Java (JDK 18 ou +) et C# pour les profils développeurs (.NET 8 ou +)
- Savoir coder en Java ou en C# est un impératif
- Il est recommandé d'avoir suivi la formation "DDD : Domain-Driven Design" (DDD01) au préalable
Modalités pédagogiques
Profil du / des Formateur(s)
Cette formation est dispensée par un·e ou plusieurs consultant·es d'OCTO Technology ou de son réseau de partenaires, expert·es reconnus des sujets traités.
Le processus de sélection de nos formateurs et formatrices est exigeant et repose sur une évaluation rigoureuse leurs capacités techniques, de leur expérience professionnelle et de leurs compétences pédagogiques.
Modalités d'évaluation et de suivi
Programme
Jour 1 - Espace du problème
OUVERTURE DE SESSION
Accueil des stagiaires et tour de table des attentes
Présentation du déroulé des deux journées de formation
INTRODUCTION
Tour d'horizon du Domain-Driven-Design
Introduction au contexte métier
DÉCOUVERTE DU MÉTIER
EventStorming Big Picture
- Motivations métier pour notre cas pratique
EventStorming Process Flow
- Découverte du workflow métier à travers les Domain Events
EventStorming Software Design
- Émergence des premiers contextes (Bounded Contexts)
Core Domain Chart
- Priorisation des domains visant à soutenir les objectifs stratégiques
Context Mapping
- Modélisation et cartographie des modèles et de leurs relations
Jour 2 - Espace de la solution
PLONGER AU COEUR DU DOMAINE
EventStorming Software Design
Exemple Mapping sur l'agrégat
CRC Card sur l’agrégat
Context Mapping
INTRODUCTION AU MODEL-DRIVEN DESIGN
Présentation et motivation
Patterns de design tactique
Building blocks
Supple Design
Deep Modeling
COLLABORER ET PRODUIRE LE CODE COEUR
Mise en pratique - “TDD outside / in”
Mise en pratique : “Supple Design”
Mise en pratique : “Deep Modeling”
Mise en pratique : “Architecture Hexagonale”
CLÔTURE DE SESSION
Revue des concepts clés abordés durant les deux journées
Temps d’échange autour des questions et réponses additionnelles
Pour aller plus loin
- Ouvrage « Domain-Driven Design: Tackling Complexity in the Heart of Software » - d’Eric Evans
- Ouvrage « DDD Reference» - d’Eric Evans
- Ouvrage « Introducing EventStorming » - d’Alberto Brandolini https://leanpub.com/introducing_eventstorming
- Article blog OCTO : “Core Domain Chart - Une pratique socio-technique à découvrir à travers un atelier et une étude de cas”