표준 데이터 모델은 엔터프라이즈 통합 패턴에서 서로 다른 데이터 형식을 사용하는 응용 프로그램을 통합할 때 종속성을 최소화하는 솔루션으로 정의됩니다. 즉,구성 요소(응용 프로그램 또는 서비스)는 두 구성 요소 데이터 형식 모두에 독립적인 데이터 형식을 통해 다른 구성 요소와 통신해야 합니다.
여기서 강조해야 할 두 가지. 먼저 이러한 모델은 응용 프로그램 통합 및 서비스 방향의 맥락에서 사용 되었기 때문에 구성 요소를 응용 프로그램 또는 서비스로 정의했습니다. 둘째,여기서 우리는 전송 데이터 형식으로만 사용해야 하는 개념에 대해 이야기하고 있습니다. 데이터 저장소의 내부 구조로 표준 데이터 형식을 사용해서는 안 됩니다.
이론적으로,이점은 매우 명백합니다. 정식 데이터 형식은 응용 프로그램 간의 결합을 줄이고 구성 요소 집합을 통합하기 위해 개발 될 번역 수를 줄입니다. 꽤 흥미로운 권리? 하나의 단일 데이터 모델은 전체 환경과 일련의 사람들(개발자,시스템 분석가,비즈니스 이해 관계자 등)이 이해할 수 있습니다.)누가 주어진 개념의 동일한 비전을 공유 할 수 있습니다.
실용적인 목적을 위해 이러한 모델을 구현하는 것은 거의 효율적이지 않습니다.
사람은 보험 회사의 마케팅 및 지원 부서와 동일한 개념이 아닙니다. 항공 교통 관리 시스템에 대 한 비행 파일럿에 의해 채워졌다 또는 당신의 영공 위에 지속적인 비행 하는 경우에 따라 다른 의미가 있다. 지원팀에 의해 유지되어야 하는 경우에 따라 완전히 다른 표현을 가집니다.
대부분의 컨텍스트에서 정식 데이터 모델을 설계하면 전체 선택적 속성 집합과 필수 속성(예:식별자)이 거의없는 대용량 데이터 모델이 생성됩니다. 그것은 주로 구성 요소 통합을 용이하게하기 위해 설계되었다하더라도,당신은 단지 그것을 복잡하게 할 것이다. 그 동안 모델은 고유의 복잡성(활용 및 관리 측면에서)으로 인해 사용자들 사이에 많은 좌절을 일으킬 것입니다. 또한,커플 링 문제에 관해서는,당신은 단지 그것을 다른 곳으로 옮기고 있습니다. 대신 하나의 구성 요소 데이터 형식에 결합되는,당신은 긴밀하게 매우 자주 변경 될 전체 가로 및 주제에 의해 사용되는 하나의 공통 데이터 형식에 결합된다.
간단히 말해서,대부분의 상황에서 표준 데이터 모델은 반 패턴으로 간주되어야합니다. 여전히 데이터를 교환하는 두 구성 요소 간의 종속성을 최소화 할 것을 고려하는 것보다 다른 옵션은 무엇입니까?
도메인 기반 디자인은 경계 컨텍스트의 개념을 도입하는 것이 좋습니다. 경계 컨텍스트는 단순히 모델이 다른 경계 컨텍스트와 명확한 경계를 사용하여 적용되는 명시 적 컨텍스트입니다. 조직에 따라 제한된 컨텍스트는 개체가 사용되는 기능 도메인을 참조 할 수 있으며 개체 상태 자체를 참조 할 수 있습니다.