The premise of DDD is as follows:
- Placing the project's primary focus on the core domain and domain logic
- Basing complex designs on a model of the domain
- Initiating a creative collaboration between technical and domain experts to iteratively refine a conceptual model that addresses particular domain problems.