발표준비

모델과 구현의 연계 (재정리)

모델은 다양한 형태로 나타나고 여러 역할을 수행한다. 도메인 주도 설계에서는 초기 분석 단계에 도움될 뿐 아니라 설계의 기반이 되는 모델이 필요하다.

1. 모델 주도 설계

코드와 그것의 기반이 되는 모델이 긴밀하게 연결되면 코드에 의미가 부여되고 모델과 코드가 서로 대응하게 된다.

보통 개발자가 아닌 도메인 전문가가 분석 모델을 만들게 된다.

소프트웨어 시스템에서 수행할 역할에 대해서는 전혀 고려하지 않은 채 업무 도메인의 개념만을 체계화하는 분석 모델이 완성된다.

이러한 분석 모델은 설계상의 쟁점들을 염두에 두고 만들어진 것이 아니라서 모델과 설계의 연결을 분석 모델로 진행한다는 것은 매우 비현실적인 가능성이 높다.

결과적으로 순수하게 이론에만 치우친 분석 모델은 코딩이 시작되자마자 폐기되고 대부분의 문제들 다시 검토하게 된다.

분석은 도메인의 근본적인 개념을 알기 쉽고 표현력 있는 방식으로 포착해야 한다.

설계에서는 대상 배포 환경에서 효율적으로 수행되고 애플리케이션에서 다뤄야 할 문제를 올바르게 해결해줄 수 있는 구성요소를 기술해야 하며,