Model a business domain into clear entities, value objects, aggregates, and bounded contexts using a shared ubiquitous language; use when starting a new system, untangling a tangled model, defining service boundaries, or when domain terms are ambiguous, overloaded, or inconsistent across code, docs, and conversations.