범위
- [Part 1] 전략적 설계 - 01장: 비즈니스 도메인 분석하기
개념 정리
- 비즈니스 도메인: 회사가 고객에게 제공하는 서비스, 기업의 주요 활동 영역
- 하위 도메인(subdomain): 비즈니스 활동의 세분화된 영역
- 핵심 하위 도메인(core subdomain): 회사가 경쟁업체과 다르게 수행하고 있는 것
- 일반 하위 도메인(generic subdomain): 모든 회사가 같은 방식으로 수행하는 비즈니스 활동
- 지원 하위 도메인(supporting subdomain): 회사의 비즈니스를 지원하는 활동
- 도메인 전문가(domain expert): 비즈니스의 모든 복잡성을 알고 있는 주제 전문가. 즉, 소프트웨어의 비즈니스 도메인에 대한 권위자.
책에서 기억하고 싶은 내용
비즈니스 도메인이란?
하위 도메인이란?
- 하위 도메인은 고객에게 제공하는 서비스 단위로 비즈니스 도메인을 만든다.
하위 도메인의 유형
- 도메인 주도 설계에서 하위도메인은 핵심, 일반, 지원의 세 가지 유형으로 구분한다.
하위 도메인 비교
- 경쟁 우위
- 핵심 하위 도메인만이 회사의 경쟁 우위를 제공한다.
- 복잡성
- 지원 하위 도메인의 비즈니스 로직은 간단하다.
- 일반 하위 도메인은 훨씬 더 복잡하다.
- 핵심 하위 도메인은 복잡하다.
- 일반적인 솔루션이 존재하는 경우 그 기능을 자체 구현하기보다는 일반적인 솔루션을 연동하는 편이 더 간단하거나 저렴하다면 일반 하위 도메인이 된다. 반대로 자체 구현이 더 간단하고 저렴하다면 지원 하위 도메인이 된다.
- 변동성
- 핵심 하위 도메인은 자주 변경될 수 있다.
- 지원 하위 도메인은 자주 변경되지 않는다.
- 솔루션 전략
- 핵심 하위 도메인은 사내에서 구현되어야 한다.
- 일반 하위 도메인은 사내에서 구현하는 데 시간과 노력을 투자하는 것보다 이미 만들어진 제품을 구입하거나 오픈소스 솔루션을 채택하는 것이 비용면에서 더 효율적이다.
- 지원 하위 도메인은 구현하지 않는 것이 합리적이다. 하지만 일반 하위 도메인과 달리 지원 하위 도메인은 기존에 만들어진 솔루션이 없는 경우가 있다. 이런 경우 기업에서 지원 하위 도메인을 자체 구현할 수 밖에 없다. 지원 하위 도메인 구현은 비즈니스 로직이 단순하고 변경의 빈도가 적기 때문에 원칙을 생략하고 적당히 진행하기 쉽다.
하위 도메인 경계 식별
- 하위 도메인과 그 유형은 기업의 비즈니스 전략에 따라 정의되며, 이는 동일한 분야에서 다른 회사와 경쟁하기 위해 자신을 차별화하는 방법이다.
도메인 분석 예제
Gigmaster
BusVNext
도메인 전문가는 어떤 사람인가?
- 도메인 전문가는 비즈니스를 대표한다.
결론
- 핵심 하위 도메인: 흥미로운 문제들. 기업이 경쟁자로부터 차별화하고 경쟁 우위를 얻는 얻는 활동이다.
- 일반 하위 도메인: 해결된 문제들. 이것은 모든 회사가 같은 방식으로 하고 있는 일이다. 여기에는 혁신이 필요하지 않다. 사내 솔루션을 개발하는 것보다 기존 솔루션을 사용하는 것이 더 비용 효과적인다.
- 지원 하위 도메인: 분명한 해결책이 있는 문제들. 사내에서 구현해야 할 활동이지만 경쟁 우위를 제공하지는 않는다.
- 도메인 전문가: 비즈니스의 주제 전문가. 회사의 비즈니스 도메인 또는 하나 이상의 하위 도메인에 대한 심층적인 지식을 가지고 있으며 프로젝트 성공에 매우 중요한 역할을 한다.
요약
- 1장에서는 소프트웨어 엔지니어링 프로젝트의 맥락(비즈니스 도메인, 비즈니스 도메인의 목적, 이를 지원하기 위한 소프트웨어의 구현 전략)을 정의 한다.
- 비즈니스 도메인은 기업의 주요 활동 영역을 정의한다. 일반적으로 말하자면 회사가 고객에게 제공하는 서비스를 말한다.
- 도메인 주도 설계에서 하위도메인은 핵심, 일반, 지원의 세 가지 유형으로 구분한다.
- 핵심 하위 도메인: 흥미로운 문제들. 기업이 경쟁자로부터 차별화하고 경쟁 우위를 얻는 얻는 활동이다.
- 일반 하위 도메인: 해결된 문제들. 이것은 모든 회사가 같은 방식으로 하고 있는 일이다. 여기에는 혁신이 필요하지 않다. 사내 솔루션을 개발하는 것보다 기존 솔루션을 사용하는 것이 더 비용 효과적인다.
- 지원 하위 도메인: 분명한 해결책이 있는 문제들. 사내에서 구현해야 할 활동이지만 경쟁 우위를 제공하지는 않는다.
- 도메인 전문가: 비즈니스의 주제 전문가. 회사의 비즈니스 도메인 또는 하나 이상의 하위 도메인에 대한 심층적인 지식을 가지고 있으며 프로젝트 성공에 매우 중요한 역할을 한다.