1회차

<aside> 💡 *도메인 전문가만이 분석하여 도출한 복잡한 모델 은 구현 과정의 시행착오가 포함되지 않은 모델이므로 애플리케이션 구현에는 큰 도움이 되지 않았다.

도메인을 이해하는데 도움될 뿐만 아니라 설계의 기반이 되는 모델이 필요하다.

</aside>

도메인 주도 설계에서 필요로 하는 모델링 접근법에 대해 알아보자.

1. Model Driven Design (모델 주도 설계)

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

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

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

결과적으로 순수하게 이론에만 치우친 분석 모델은 매우 비현실적일 가능성이 높으며, 대부분의 문제들을 다시 검토하게 된다.

이처럼 분석과 설계가 분리되어 있다면 좋은 소프트웨어가 만들어질 수 없다.

누구나 도메인을 이해할 수 있도록 분석이 진행되어야 한다.

설계에서는 문제를 해결할 애플리케이션의 Component(구성요소)에 대해 기술해야 하며, 해당 Component는 프로젝트에서 사용 중인 프로그래밍 도구로 구현할 수 있어야 한다.

해당 내용들을 겸한 모델 주도 설계도메인 모델을 있는 그대로 반영하면서 설계와 모델의 대응을 분명하게 하는 설계 방법이다.