Domain Driven Design (DDD) is a software development approach that focuses on modeling a domain into conceptual objects and relationships. Key concepts include ubiquitous language to describe the domain, domain models to represent concepts, and bounded contexts to define model boundaries. DDD aims to build software that closely matches how an organization perceives its domain.