Le développement logiciel est employé généralement pour automatiser des processus existants ou pour fournir des solutions à des problèmes métier. Le Domain-Driven Design repose sur une idée simple : pour créer un bon logiciel, il est indispensable qu'il reflète le domaine métier pour lequel il est conçu, qu'il en incorpore les concepts, les process, les éléments et qu'il saisisse avec précision, leurs relations. A titre d'exemple, vous ne pouvez pas créer un système logiciel bancaire à moins d'avoir une bonne compréhension du secteur bancaire et de ses métiers.
Décrit par Eric Evans dans son ouvrage « Domain-Driven Design : Tackling complexity in the Heart of software », le Domain-Driven Design fournit un cadre solide et un ensemble de techniques décrivant comment modéliser le domaine du logiciel et définir une vision et un langage partagés par toutes les personnes impliquées dans la construction d'une application, afin de mieux en appréhender la complexité.
Tout au long de cette formation, vous serez à même de comprendre pourquoi le Domain-Driven Design permet ainsi de maintenir un alignement constant, pas toujours évident, entre les experts métier, les développeurs et le code afin de s'assurer que le logiciel réponde bien à ses objectifs.