✅ DDD (Domain Driven Design)
도메인 주도 설계란 2003년 에릭에반슨의 도서에서 처음 알려진 모델로, 도메인 설계나 개발 작업의 중심에 도메인 모델을 두고 반복적으로 변경 및 진화시켜 프로그램을 구현하는 개발 방법론이다.
✅ 비즈니스 도메인
- 기업의 주요 활동 영역을 정의
- 회사가 고객에게 제공하는 서비스
- Fedex: 배송 서비스
- Starbucks: 커피 및 음료 제공 서비스
- 기업은 여러 개의 도메인을 운영할 수도 있다.
- Amazon: 소매업과 클라우드 서비스 제공
- Uber: 차량 공유 서비스와 음식 배달, 자전거 공유 서비스 등 제공
✅ 하위 도메인
- 비즈니스 도메인의 목표 달성을 위해서는 여러가지 하위 도메인을 운영해야 한다.
- 하위 도메인은 고객에게 제공하는 서비스의 단위
- Starbucks
- 비즈니스 도메인: 커피 및 음료 제공 서비스
- 하위 도메인: 부동산 매매/임대, 직원 고용, 재정 관리 등
✅ DDD의 장단점
장점
- SW Life Cycle 동안 용이한 커뮤니케이션
- 모듈화, 캡슐화 기반 유연성 향상
- 현재 상황에 적합한 SW 개발
단점
- 도메인 전문가의 참여가 필수
- 기존 도메인의 관행을 개선하기 어려움
- 기술적으로 복잡한 프로젝트에 부적합
DDD는 직관적인 도메인 연관 관계로 명확하게 설계 및 기능 구현이 가능한 프로젝트에 적용하는 것이 좋다.
Share article