ADR-002 LimitedDrop = 기존 goods 도메인 합류 (신규 도메인 미신설)

  • 상태: 채택
  • 날짜: 2026-07-03
  • 근거: PRD Goals(기존 흐름 재사용, 신규 파이프라인 미신설) / ../도메인 경계 재설계/ADR-001·ADR-002 / TDD “도메인 바운디드 컨텍스트 경계 판단”

맥락

LimitedDrop(한정판 회차)을 새 도메인으로 분리할지, 기존 goods에 합류시킬지 확정이 필요하다. 선행 컨텍스트 맵(도메인 경계 재설계 ADR-001)상 goods는 코어(거래) 도메인이며 Product·Cart·GoodsOrder·Stock을 소유한다.

결정

LimitedDropgoods 도메인의 신규 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 목록에 LimitedDrop 1행 추가로 족함.

대안 (미채택)

  • 신규 drop/promotion 도메인 분리: 독립 라이프사이클·데이터 소유·변경 주기 어느 것도 성립 안 함. Product/Stock 크로스 도메인 우회만 증가. createPendingOrder 재사용(FR-3) 불가 → PRD Goals 위반.

영향

  • goods Aggregate Root: Product·Cart·GoodsOrder + LimitedDrop (도메인 경계 재설계 TDD의 goods 행 갱신 대상).
  • ADR-003(goods 제공 UseCase = CreateMyProductUseCase) 동결 계약 무영향 — LimitedDrop은 가산.