<aside> 💡 도메인(Domain)은 소프트웨어 엔지니어링에서 사용되는 용어로써, 프로그래밍으로 해결하고자 하는 주제에 대한 영역과 핵심 비즈니스 요구사항을 의미하는 단어다. 도메인은 다시 하위 도메인으로 나뉘어질 수도 있다.
</aside>
예를 들어 우리가 '온라인 쇼핑몰' 을 개발한다면 이를 도메인이라고 부를 수 있다. 그리고 '온라인 쇼핑몰' 도메인은 또 다시 '상품', '회원', '주문' 이라는 하위 도메인으로 나누어질 수 있다.
더 나누어 본다면 '상품'은 '상품명', '가격' 이라는 하위 도메인으로, '회원'은 '성함', '주소지' 라는 하위 도메인으로, '주문'은 '주문 상품', '결제 정보' 등의 하위 도메인으로 나누어질 수 있을 것 이다.
<aside> 💡 도메인 모델은 도메인에 대한 지식을 선택적으로 단순화하고 의식적으로 구조화한 형태이다. 도메인 모델은 반드시 실재적인 무언가로 표현되지 않아도 존재한다.
</aside>