ADR-002 LimitedDrop = 기존 goods 도메인 합류 (신규 도메인 미신설)
- 상태: 채택
- 날짜: 2026-07-03
- 근거: PRD Goals(기존 흐름 재사용, 신규 파이프라인 미신설) /
../도메인 경계 재설계/ADR-001·ADR-002/ TDD “도메인 바운디드 컨텍스트 경계 판단”
맥락
LimitedDrop(한정판 회차)을 새 도메인으로 분리할지, 기존 goods에 합류시킬지 확정이 필요하다. 선행 컨텍스트 맵(도메인 경계 재설계 ADR-001)상 goods는 코어(거래) 도메인이며 Product·Cart·GoodsOrder·Stock을 소유한다.
결정
LimitedDrop은 goods 도메인의 신규 Aggregate Root로 합류한다. 신규 도메인을 만들지 않는다.
Cart·GoodsOrder와 동급으로 domain/goods 하위에 LimitedDrop·LimitedDropStatus·LimitedDropRepository·DropReservationStore·LimitedDropDomainService를 배치한다.
근거
| 분리 판단 축 | 검토 | 결론 |
|---|---|---|
| 독립 데이터 소유 | LimitedDrop 대상은 goods의 Product·stocks. 자체 독립 데이터 아님 | 합류 |
| 독립 라이프사이클 | 상품 등록 → 회차 개설 → 판매. Product/Stock에 종속 | 합류 |
| 독립 변경 주기 | 재고 차감 로직(createPendingOrder) 재사용 = goods와 동일 변경 주기 | 합류 |
| 신규 도메인 비용 | 도메인 경계 재설계 ADR-002 “도메인 교차 참조 금지 · ID(Long)만”에 따라 신규 도메인은 Product/Stock를 ID 참조 + Gateway로 우회해야 함. createPendingOrder 직접 호출 불가 | 신규 도메인은 불필요한 우회 유발 |
- 도메인 간 참조 없음 —
LimitedDropDomainService는 같은 도메인의GoodsDomainService.createPendingOrder를 호출(도메인 내 협력, 교차 참조 아님). - 컨텍스트 맵 갱신 절차(도메인 경계 재설계 TDD FR-8): goods 내부 Aggregate 추가이므로 신규 도메인 분류·관계표 추가 불필요. Aggregate Root 목록에
LimitedDrop1행 추가로 족함.
대안 (미채택)
- 신규
drop/promotion도메인 분리: 독립 라이프사이클·데이터 소유·변경 주기 어느 것도 성립 안 함. Product/Stock 크로스 도메인 우회만 증가.createPendingOrder재사용(FR-3) 불가 → PRD Goals 위반.
영향
goodsAggregate Root:Product·Cart·GoodsOrder+LimitedDrop(도메인 경계 재설계 TDD의 goods 행 갱신 대상).- ADR-003(goods 제공 UseCase =
CreateMyProductUseCase) 동결 계약 무영향 — LimitedDrop은 가산.