1. Analyzing Business Domains – What Is Domain-Driven Design? [Book]

Who Are Domain Experts?

Let’s take a look at another DDD term related to business domains that we are going to use often in the next chapters: domain experts. Domain experts are subject matter experts that know all the intricacies of the business that we are going to model and implement in code. In other words, domain experts are knowledge authorities in the software’s business domain.

The domain experts are neither the analysts that gather requirements nor the engineers designing the system. Domain experts represent the business. They are the people that identified the business problem in the first place, and all business knowledge originates from the domain experts. Systems analysts and engineers are just transforming their mental models of the business domain into software requirements and source code.

As a rule of thumb, domain experts are either the people coming up with requirements or the software’s end users. The software is supposed to solve their problems.

The domain experts’ expertise can have different scopes. Some subject matter experts will have a detailed understanding of how the whole business domain operates, while others will specialize in particular subdomains. For example, in an online advertising agency the domain experts would be campaign managers, media buyers, analysts, and other business stakeholders.