-
Notifications
You must be signed in to change notification settings - Fork 0
[TASK] reward 도메인 구조 리팩토링 #1
Copy link
Copy link
Open
Description
📌 작업 내용
was/src/main/java/kr/withrun/was/domain/reward 패키지의 구조를 리팩토링한다.
현재 reward 패키지는 기술 레이어 기준으로는 정리되어 있지만, 실제 비즈니스 관심사는 포인트, 리워드 아이템, 가챠, 드로우풀 관리로 나뉘어 있어 구조적 경계가 흐려져 있다.
🎯 목적 / 배경
- reward 패키지가 하나의 도메인처럼 보이지만 실제로는 여러 하위 관심사가 함께 존재한다.
- 서비스/DTO/컨트롤러가 서브도메인 기준으로 충분히 분리되지 않아 탐색 비용이 높다.
- 일부 서비스는 책임이 크고, 중복 로직(
resolveUserId,ensureUserExists등)도 보여 유지보수성이 떨어진다. - 테스트는 이미 하위 관심사별로 나뉘어 있어, 코드 구조도 그 경계를 더 잘 반영할 필요가 있다.
✅ 작업 항목 (To-Do)
- reward 도메인의 하위 관심사(포인트 / 아이템 / 가챠 / 드로우풀) 경계를 재정의한다.
- 패키지 구조를 하위 관심사 중심으로 재배치할지 검토하고 적용한다.
- 과도하게 큰 서비스의 책임을 분리한다.
- 컨트롤러/서비스의 중복 로직을 공통화할 수 있는지 검토한다.
- 기존 테스트가 깨지지 않도록 구조 변경 후 테스트를 정리한다.
- 필요 시 후속 리팩토링 이슈로 분리한다.
🏁 완료 조건 (Definition of Done)
- reward 도메인 구조가 하위 관심사 기준으로 더 명확하게 구분된다.
- 주요 서비스의 책임이 이전보다 작고 명확해진다.
- 중복 로직이 줄어든다.
- 기존 reward 관련 테스트가 모두 통과한다.
- 후속 작업이 필요하면 별도 이슈로 분리되어 추적 가능하다.
🔗 참고
- 대상 경로:
was/src/main/java/kr/withrun/was/domain/reward - 관련 테스트:
was/src/test/java/kr/withrun/was/domain/reward
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels