모델
- 중요한 사실이나 사상의 일부 측면을 나타냄
- 대상을 단순화 한것
- 당면한 문제와 관련된 것을 추상화
도메인
- 사용자가 프로그램을 사용하는 대상 영역
- 컴퓨터와 거의 관련이 없음
도메인 모델
- 특정한 다이어 그램이 아니라 전달하고자 하는 아이디어
- 지식을 엄격하게 구성하고 선택적으로 추상화한 것
- 모델과 핵심 설계는 서로 영향을 주며 구체화 된다
- 모델은 모든 팀 구성원이 사용하는 언어의 중추다
- 모델은 지식의 정수만을 뽑아낸 것이다
Ubiquitous language
- 클래스, 주요 연산등의 이름
- 명시적으로 드러나는 규칙을 토론하기 위한 용어
- 도메인 모델에 적용하는 패턴의 이름
- 공통언어(도메인 전문가와 개발팀간)로서 모델과 코드에서 사용해야 한다.
- 모델, 설계, 구현 전체를 연결하는 핵심 키
도메인 모델 작성시 가장 중요하다고 생각하는 것은 추상화이다. 특히 기존 코드를 분석하여 모델을 만드는 경우 코드의 세세한 부분까지 모델에 표현하려는 욕심은 자제해야 한다.