밀접하게 연관된 애플리케이션을 대사응로 작업 중인 팀 간의 협력이 조율되지 않는다면 잠시 동안은 작업을 진행할 수 있겠지만 각 팀이 만들어낸 결과물을 함께 조합하기는 쉽지 않을 것이다.
결국 처음부터 CONTINUOUS INTEGRATION
을 적용했을 때보다 더 많은 시간을 번역 계층을 개발하고 구조를 개선하는 데 허비하게 될 것이며, 동시에 공통 UBIQUITOUS LANGUAGE
를 구축하는 작업이 중복되고 UBIQUITOU LANGUAGE
로 얻을 수 있는 이점을 잃어버릴 것이다.
두 팀간에 공유하기로 한 도메인 모델의 부분 집합을 명시해야 한다.
모델 요소와 연관된 코드나 데이터베이스 설계의 부분 집합까지도 포함된다.
명시적으로 공유하는 부분들은 특별한 상태를 가지며, 다른 팀과의 협의 없이는 변경할 수 없다.
SHARED KERNEL
CORE DOMAIN
이거나 GENERIC SUBDOMAIN
의 일부 또는 양쪽인 경우가 대부분이지만 두 팀에 모두 필요한 부분이라면 모델의 어떤 부분이라도 SHARED KERNEL
이 될 수 있다.
목표는 중복을 줄이고 두 하위 시스템 간의 통합을 비교적 용이하게 만드는 것이다.