현재노트

[도메인주도개발 - DDD] 도메인이란? 본문

도메인주도개발(DDD)/도메인 모델 시작하기

[도메인주도개발 - DDD] 도메인이란?

현재노트 2022. 10. 21. 14:22

일상 생활에서 온라인 서점을 이용할 때 서적 검색, 리뷰 검색, 장바구니 및 결제 등등 다양한 기능들이 제공된다.

개발자 입장에서 바라보면 온라인 서점은 구현해야할 소프트웨어의 대상이 된다.

상품 조회, 구매, 결제, 배송 추적 등의 기능들을 제공해야 하며, 이때 온라인 서점은 소프트웨어로 해결하고자 하는 문제 영역, 즉 도메인(domain)에 해당 된다.

 

 

한 도메인은 다시 하위 도메인으로 나눌 수 있다.

예를 들어, 온라인 서점 도메인은 위의 사진과 같이 몇 개의 하위 도메인으로 나뉜다.

카탈로그 도메인 : 고객에게 구매할 수 있는 상품 목록

주문 도메인 : 고객의 주문을 처리

혜택 도메인 : 쿠폰이나 특별 할인과 같은 서비스 제공

배송 도메인 : 고객에게 구매한 상품을 전달하는 일련의 과정

이렇게 한 하위 도메인은 다른 하위 도메인과 연동하여 완전한 기능을 제공한다.

예를 들어 고객이 물건을 구매하면 주문, 결제, 배송, 혜택 하위 도메인의 기능이 엮이게 된다.

 

하위 도메인을 어떻게 구성할지 여부는 상황에 따라 달라지며, 프로젝트 진행 시 도메인을 어떻게 나눌 것이며 각각의 도메인의 역할과 책임을 부여 해야 한다.

Comments