• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    해결됨

애그리거트 추출 질문드립니다.

23.03.10 15:49 작성 23.03.10 15:59 수정 조회수 409

0

안녕하세요 선생님,

자세한 도메인 기술은 어렵다고 생각해서 간략하게 상황을 가정하겠습니다.

기존에 있던 애그리거트는 한 뭉탱이로 돌아다녔는데

기획이 변경되어 스토밍으로 추출했던 기존 애그리거트 루트와 VO 객체가 서로 생명주기가 다른 상황이 되었습니다.

루트가 VO를 리스트로 가지고 있으며 루트가 생성되고 특정 이벤트 후에 VO가 생성되어 루트에 추가되고 일정시간이 지나면 VO를 업데이트 해야 하는 상황입니다.

VO가 불변객체라 리스트에서 새로운 객체로 갈아치우 것도 아닌 거 같아서,, 현재 억지로 갈아치우게끔 만들어 놓긴 했습니다,,

또, 아무리봐도 서로 생명주기가 달라 VO를 다른 애그리거트로 전환하려고 하는데

제가 애그리거트들을 수정하는데 있어 근거가 부족하거나, 놓치는 부분이 있을까요?

답변 1

답변을 작성해보세요.

0

움 안녕하세요.

문맥으로만 살펴보면 원래 생명주기가 같았던 어그리거트의 vo가 생명주기 달라진것 같은데요.

생명주기가 틀려지면 어그리거트 도출의 주요 대상이 되긴 합니다. 그리고 어그리거트로 분리된다는 것은 더이상 vo가 아니라 엔티티로 변경된다는 것을 의미합니다.

업무를 제가 잘 모르기 때문에 더 이상 의견드리기는 힘들 것 같고요 ^ ^;

그렇지만 모델링에 왕도는 없다고 생각합니다. DDD의 전술적 설계 가이드를 정석으로 따라가는 것도 좋지만 너무 과할 필요는 없다고 생각도 들더라고요.

왜냐하면 가이드에 충실하게 너무 잘게 쪼개 놓으면 나중에 또 가독하기가 어렵더라구요. 도메인 모델의 장점이 가독성인데 그런 의미에서 우리팀이 쉽게 이해가능하냐, 관리가능한 모델인가도 판단해 보시면 좋을 것 같습니다.

 

아효님의 프로필

아효

질문자

2023.03.10

답변 감사합니다!