Domain-Driven Design
Le DDD est une approche de conception logicielle centrée sur le domaine métier, modélisant avec un langage omniprésent, des contextes bornés et des entités/objets valeur.
Objectif
Aligner la structure du logiciel sur le domaine métier, en gérant une logique métier complexe.
Mécanisme
Langage omniprésent : le code emploie les termes du métier. Contextes bornés : frontières du modèle. Entités (avec ID), objets valeur (sans ID), agrégats (frontières de cohérence), événements de domaine. La conception stratégique partitionne les contextes ; la conception tactique remplit les modèles.
Cas d’usage
- Modélisation métier complexe
- Frontières de microservices
- Collaboration avec les experts métier