아키텍처는 크게 4개의 영역으로 구분되는 계층구조로 이루어졌다. o 표현계층: 사용자의 요청을 응용 영역에 전달, 응용 영역의 처리 결과를 다시 사용자에게 보여주는 역할. Json Object) o 응용계층: 사용자에게 제공할 기능 구현. 직접 구현보다는 도메인 모델에 로직 수행을 위임. o 도메인계층: 도메인의 핵심 로직을 구현. ex. 주문 도메인의 '결제 완료', '주문 총액 계산', '배송지 변경' 같은 로직 o 인프라스트럭쳐계층: 상세한 구현 기술을 다룸. ex. DB연동, HTTP Client, Kafka ... 위 아키텍처는 상위 -> 하위계층으로만 의존을 하도록 되어있는데, 이 경우에 두가지 문제점이 발생한다. (1) 테스트의 어려움 - 상위 계층을 테스트하기 위해서는 하위 계층이 구현되어..