Skip to content

용어사전

규칙 문서와 설계 검증은 이 문서의 용어와 의미를 기준으로 한다. 같은 개념은 항상 같은 용어로 쓴다.

용어 영문 정의
도메인 Domain 소프트웨어가 해결하려는 업무 영역 전체.
서브도메인 Subdomain 도메인을 업무 관심사에 따라 나눈 하위 영역. 핵심·지원·일반 서브도메인으로 구분한다.
핵심 서브도메인 Core Subdomain 비즈니스 경쟁력의 원천이 되는 서브도메인. 설계 역량을 가장 많이 투입한다.
지원 서브도메인 Supporting Subdomain 핵심 서브도메인을 돕지만 차별화 요소는 아닌, 업무에 특화된 서브도메인.
일반 서브도메인 Generic Subdomain 여러 업무에 공통으로 필요한 서브도메인(인증, 결제 등). 기성 솔루션을 우선 검토한다.
유비쿼터스 언어 Ubiquitous Language 도메인 전문가와 개발자가 하나의 바운디드 컨텍스트 안에서 대화·문서·코드에 공통으로 쓰는 언어.
맥락 Context 단어나 문장이 놓여 그 의미를 결정하는 환경. 같은 단어도 맥락에 따라 의미가 달라진다(예: “상품”은 판매에서는 가격·재고를, 배송에서는 무게·크기를 뜻한다). “컨텍스트”와 같은 말이다.
바운디드 컨텍스트 Bounded Context 하나의 모델과 유비쿼터스 언어가 일관된 의미를 갖는 명시적인 경계.
경계 진 맥락 Bounded Context 바운디드 컨텍스트의 다른 번역어로, 같은 개념이다. 규칙 문서에서는 “바운디드 컨텍스트”로 쓴다.
컨텍스트 맵 Context Map 바운디드 컨텍스트들과 그 사이의 관계를 나타낸 그림 또는 문서.
용어 영문 정의
공유 커널 Shared Kernel 두 컨텍스트가 모델의 일부를 공유하고 함께 관리하는 관계.
고객-공급자 Customer-Supplier 하류(고객)의 요구를 상류(공급자)가 계획에 반영해 주는 관계.
순응자 Conformist 하류가 상류의 모델을 변환 없이 그대로 따르는 관계.
부패 방지 계층 Anticorruption Layer (ACL) 하류가 상류의 모델을 자기 모델로 변환해, 상류 모델이 자기 모델을 오염시키지 않게 하는 계층.
오픈 호스트 서비스 Open Host Service (OHS) 상류가 여러 하류를 위해 공개한 표준화된 프로토콜이나 API.
공표된 언어 Published Language (PL) 컨텍스트 간 통신에 쓰는, 문서화된 공용 데이터 형식.
분리된 길 Separate Ways 통합하지 않고 각 컨텍스트가 독립적으로 해결하는 관계.
용어 영문 정의
엔티티 Entity 속성이 바뀌어도 고유한 식별자로 동일성이 유지되는 도메인 객체.
값 객체 Value Object 식별자 없이 속성 값으로만 동등성을 판단하는 불변 도메인 객체.
애그리거트 Aggregate 하나의 일관성 단위로 함께 변경되는 엔티티와 값 객체의 묶음.
애그리거트 루트 Aggregate Root 애그리거트의 유일한 진입점인 엔티티. 외부는 루트를 통해서만 애그리거트를 참조·변경한다.
불변식 Invariant 애그리거트가 어떤 변경 후에도 항상 만족해야 하는 업무 규칙.
도메인 서비스 Domain Service 특정 엔티티나 값 객체에 자연스럽게 속하지 않는 도메인 로직을 담는 상태 없는 객체.
애플리케이션 서비스 Application Service 유스케이스 흐름을 조율하는 계층. 트랜잭션·권한 등을 다루고 도메인 로직은 도메인 객체에 위임한다.
리포지토리 Repository 애그리거트 단위로 저장·조회를 제공하는 컬렉션 형태의 추상화.
팩토리 Factory 생성 과정이 복잡한 애그리거트나 객체를 불변식을 만족하는 상태로 만들어 내는 책임을 가진 객체·메서드.
도메인 이벤트 Domain Event 도메인에서 일어난, 업무적으로 의미 있는 사건을 과거형으로 표현한 객체(예: OrderPlaced).
모듈 Module 관련된 도메인 개념을 응집도 있게 묶은 단위(패키지·네임스페이스).
용어 영문 정의
도메인 계층 Domain Layer 엔티티·값 객체·도메인 서비스 등 업무 규칙을 담는 계층. 다른 계층에 의존하지 않는다.
애플리케이션 계층 Application Layer 애플리케이션 서비스가 위치하며 유스케이스를 조율하는 계층.
인프라스트럭처 계층 Infrastructure Layer 데이터베이스·메시징·외부 API 등 기술 구현을 담는 계층.
표현 계층 Presentation Layer 사용자 인터페이스나 외부 요청(API)을 받아 애플리케이션 계층에 전달하는 계층.