Давайте рассмотрим ещё один термин предметно-ориентированного проектирования, связанный с предметными областями, который мы будем часто использовать в следующих главах: эксперт предметной области (domain expert). Эксперты предметной области — это специалисты области, знающие все детали бизнеса, который мы собираемся моделировать и реализовывать в коде. Другими словами, эксперты предметной области — это авторитеты в области знаний в сфере применения этого программного обеспечения.
Эксперты предметной области не являются аналитиками, собирающими требования или инженерами, разрабатывающими систему. Они представляют сам бизнес. Это те люди, которые обычно и обнаруживают какую-либо бизнес-проблему и которые обладают первичными, обширными или по крайней мере глубокими знаниями в рассматриваемой сфере бизнеса. Системные аналитики и инженеры просто преобразуют их модели предметных областей в требования к программному обеспечению и исходный код.
Как правило, эксперты предметной области — это или авторы первичных требований или конечные пользователями программного обеспечения. Программное обеспечение должно решать их проблемы.
Экспертность может иметь разные направленности. Некоторые предметные эксперты имеют подробное понимание того, как работает вся сфера, в то время как другие специализируются в конкретных предметных подобластях. Например, в агентстве онлайн-рекламы эксперты предметной области могут быть менеджерами кампаний, медиа-байерами, аналитиками и другими участниками бизнес-процесса.