SlideShare a Scribd company logo
도메인 주도 설계
Domain-Driven Design

17장 전략의 종합

ohyecloudy http://ohyecloudy.com
아꿈사 http://cafe.naver.com/architect1
2011.10.01
전략적 설계의 세 가지 기본 원칙이 어떻게
상호작용을 하는지 아주 간단하게 살펴본다.

그리고 지침들이 가득
좀 지루해요
대규모 구조와 BOUNDED CONTEXT 결합
대규모 구조와 디스틸레이션 결합
평가 먼저
누가 전략을 세우는가? – p524, 525
전략적 설계 결정을 위한 6가지 필수 요소
기술 프레임워크도 마찬가지다
종합계획을 조심하라
컨텍스트
CONTEXT MAP
BOUNDED
CONTEXT
조직화 기준으로 활용

UBIQUITOUS
LANGUAGE

CORE DOMAIN

디스틸레이션

EVOLVING
ORDER

대규모 구조
컨텍스트
CONTEXT MAP
BOUNDED
CONTEXT
조직화 기준으로 활용

컨텍스트, 디스틸레이션, 대규모 구조는
서로 대체 가능하지 않다.
UBIQUITOUS
LANGUAGE

서로 보안하며 상호작용
CORE DOMAIN

디스틸레이션

EVOLVING
ORDER

대규모 구조
컨텍스트
CONTEXT MAP
BOUNDED
CONTEXT

대규모 구조는
하나의 BOUNDED CONTEXT에서만
존재

조직화 기준으로 활용

UBIQUITOUS
or
LANGUAGE

여러 BOUNDED CONTEXT에
영향을 주면서
CONTEXT MAP을 구성
CORE DOMAIN

디스틸레이션

EVOLVING
ORDER

대규모 구조
대규모 구조와 BOUNDED CONTEXT 결합
대규모 구조와 디스틸레이션 결합
평가 먼저
누가 전략을 세우는가? – p524, 525
전략적 설계 결정을 위한 6가지 필수 요소
기술 프레임워크도 마찬가지다
종합계획을 조심하라
컨텍스트
CONTEXT MAP
BOUNDED
CONTEXT

UBIQUITOUS
LANGUAGE

CORE DOMAIN

개념을 추가

EVOLVING
ORDER

조직화 기준으로 활용

디스틸레이션

대규모 구조
컨텍스트
CONTEXT MAP
BOUNDED
대규모 구조는
CONTEXT

CORE DOMAIN 안의 각종 관계와
여러 GENERIC SUBDOMAIN 사이의
UBIQUITOUS
관계를 설명하는데 도움
LANGUAGE

CORE DOMAIN

개념을 추가

EVOLVING
ORDER

조직화 기준으로 활용

디스틸레이션

대규모 구조
대규모 구조와 BOUNDED CONTEXT 결합
대규모 구조와 디스틸레이션 결합
평가 먼저
누가 전략을 세우는가? – p524, 525
전략적 설계 결정을 위한 6가지 필수 요소
기술 프레임워크도 마찬가지다
종합계획을 조심하라
CONTEXT MAP을 그려라.
일관된 CONTEXT MAP을 그릴 수 있는가?
그렇지 않다면 모호한 상황이 있는가?
프로젝트상의 언어를 쓰는 데 힘써라.
UBIQUITOUS LANGUAGE가 있는가?
UBIQUITOUS LANGUAGE가
개발에 도움을 줄 만큼 풍부한가?
무엇이 중요한지 이해하라.
CORE DOMAIN을 식별했는가?
DOMAIN VISION STATEMENT가 있는가?
DOMAIN VISION STATEMENT를
작성할 수 있는가?
프로젝트에 사용하는 기술이
MODEL-DRIVEN DESIGN에
유리한가, 불리한가?
팀 내 개발자가 필요한
기술 역량을 갖췄는가?
개발자들이 도메인을 잘 알고 있는가?
개발자들이 도메인에 관심은 있는가?
완벽한 답 못 찾겠지?
하지만 이런 질문은 견실한 출발점을 마련해 줌
구체적인 답을 마련할 때
가장 먼저 뭘 해야 할지에 대한 통찰력이 생길 때
대규모 구조와 BOUNDED CONTEXT 결합
대규모 구조와 디스틸레이션 결합
평가 먼저
누가 전략을 세우는가? – p524, 525
전략적 설계 결정을 위한 6가지 필수 요소
기술 프레임워크도 마찬가지다
종합계획을 조심하라
1

의사결정은 팀 전체에 퍼져야 한다.
의사소통이 중요
2

의사결정 프로세스는
피드백을 흡수해야 한다
디스틸레이션을 만드려면 깊이 있는 지식이 필요
애플리케이션 개발팀이 가지고 있지
아키텍처 팀 구성원과 피드백 고리가 필요
3

계획은 발전을 감안해야 한다
혁신은 장애물을 만나거나
예상치 못한 기회를 발견했을 때 나타난다.
4

아키텍처 팀에서 가장 뛰어나고
똑똑한 사람들을 모두 데려가서는 안된다
훌륭한 애플리케이션에는 설계 솜씨가 필요.
훌륭한 전략적 설계를 만들었다고 해도
애플리케이션 팀에서 못 따라가면 캐망
5

전략적 설계에는 최소주의와 겸손이 필요
필요 이상의 아키텍처를 주의
6

객체는 전문가,
개발자는 다방면에 지식이 풍부한 사람
지나친 전문화는
도메인 주도 설계의 활력을 앗아간다.
대규모 구조와 BOUNDED CONTEXT 결합
대규모 구조와 디스틸레이션 결합
평가 먼저
누가 전략을 세우는가? – p524, 525
전략적 설계 결정을 위한 6가지 필수 요소
기술 프레임워크도 마찬가지다
종합계획을 조심하라
기술 프레임워크는 인프라스트럭처 계층 제공
도메인을 다른 관심사에서 격리되게 도와줌
애플리케이션 개발 속도를 대폭 향상
하지만 표현력 있는 구현과 손쉬운 변경 방해
프레임워크 설계자가
도메인 계층이나 애플리케이션 계층에
뛰어들 의도가 전혀 없을 때도 생긴다.
멍청이들을 위한 프레임워크를 작성하지 마라
설계를 할 만큼 똑똑하지 않다면
소프트웨어를 개발하는 부서에
배정해서는 안 된다
대규모 구조와 BOUNDED CONTEXT 결합
대규모 구조와 디스틸레이션 결합
평가 먼저
누가 전략을 세우는가? – p524, 525
전략적 설계 결정을 위한 6가지 필수 요소
기술 프레임워크도 마찬가지다
종합계획을 조심하라
실제로 종합계획은 실패한다.
그 이유는 종합계획이 유기적 질서가 아닌
전체주의적인 질서를 만들어내기 때문이다.
자연스럽고 예측 불가능한 변화에
적응하지 못한다.
- 오레곤 실험 p16~28
대규모 구조와 BOUNDED CONTEXT 결합
대규모 구조와 디스틸레이션 결합
평가 먼저
누가 전략을 세우는가? – p524, 525
전략적 설계 결정을 위한 6가지 필수 요소
기술 프레임워크도 마찬가지다
종합계획을 조심하라
[Domain driven design] 17장 전략의 종합
[Domain driven design] 17장 전략의 종합

More Related Content

PDF
도메인 주도 설계의 본질
PDF
BrightonSEO 2016 - Domain Strategies for International Success
PDF
[GEG1] 3.volumetric representation of virtual environments
PDF
중국시장 대응 홈페이지 구축 및 SEO 전략 (시도우 김도연)
PDF
2011 아꿈사 오전반 포스트모템
PDF
[프로젝트가 서쪽으로 간 까닭은] chap 17, 18, 26, 33, 81
PDF
내가 본 미드 이야기
PDF
[TAOCP] 2.2.3 연결된 할당 - 위상정렬
도메인 주도 설계의 본질
BrightonSEO 2016 - Domain Strategies for International Success
[GEG1] 3.volumetric representation of virtual environments
중국시장 대응 홈페이지 구축 및 SEO 전략 (시도우 김도연)
2011 아꿈사 오전반 포스트모템
[프로젝트가 서쪽으로 간 까닭은] chap 17, 18, 26, 33, 81
내가 본 미드 이야기
[TAOCP] 2.2.3 연결된 할당 - 위상정렬

Viewers also liked (15)

PDF
[Windows via c/c++] 4장 프로세스
PDF
비트 경제와 공짜
PDF
페리 수열(Farey sequence)
PDF
Intrusive data structure 소개
PPTX
Domain Driven Design
PDF
LevelDB 간단한 소개
PDF
트위터 봇 개발 후기
PDF
DDD 산책
PDF
검색엔진 랭킹 상위 - scs(seo curation suite) 서비스 넥스트티
PDF
넘쳐나는 정보 소화 노하우
PDF
적당한 스터디 발표자료 만들기 2.0
PPTX
BrightonSEO Keynote: The Good, The Bad and The Ugly of International SEO
PPTX
Domain Driven Design 101
PDF
[NDC12] 게임 물리 엔진의 내부 동작 원리 이해
PDF
Domain Driven Design
[Windows via c/c++] 4장 프로세스
비트 경제와 공짜
페리 수열(Farey sequence)
Intrusive data structure 소개
Domain Driven Design
LevelDB 간단한 소개
트위터 봇 개발 후기
DDD 산책
검색엔진 랭킹 상위 - scs(seo curation suite) 서비스 넥스트티
넘쳐나는 정보 소화 노하우
적당한 스터디 발표자료 만들기 2.0
BrightonSEO Keynote: The Good, The Bad and The Ugly of International SEO
Domain Driven Design 101
[NDC12] 게임 물리 엔진의 내부 동작 원리 이해
Domain Driven Design
Ad

Similar to [Domain driven design] 17장 전략의 종합 (20)

PDF
도메인 주도 설계 ch17
PDF
[일본자료] 개발자를 위한 시스템엔지니어링 도입의 권유
PPTX
더 나은 S/W를 만드는 것에 관하여 (OKKY 세미나)
PPTX
도메인주도설계
PDF
산업단지 서비스디자인 적용 패키지모델 - 한국디자인진흥원
PDF
책 "제품의 탄생" 소개
PDF
스마트 제조: AWS를 활용한 제조사의 디지털 트랜스포메이션 실현 방법 및 사례 – 석진호 AWS 제조업 사업개발 담당, 최계현 현대건설기...
PDF
Platform bm game work sheet design thinking sheet
PPTX
개발자의 현재와 미래
PDF
Approach for Smart Factory
PPS
시스테믹 혁신 관점에서 살펴본 IoT 세상_ver20140405
PDF
Triz and systematic business model innovation 2013.10.02
PPTX
overview ntels bigdata tech.
PPTX
New Media Marketing Strategies - Mobile, Cloud Computing Research
PDF
[비즈니스 모델 디자인과 린스타트업 활동] 5주차. 비즈니스모델 디자인 1
PPTX
디자인과 기술융합 (0824)
PDF
[월간금융 2011 01월호]스마트워크(4)
PDF
[월간금융 2011 1월호]스마트워크
PDF
150514 경북대학교(콘텐츠산업과 창업)
PDF
이노베이션3.0 책 강연 자료
도메인 주도 설계 ch17
[일본자료] 개발자를 위한 시스템엔지니어링 도입의 권유
더 나은 S/W를 만드는 것에 관하여 (OKKY 세미나)
도메인주도설계
산업단지 서비스디자인 적용 패키지모델 - 한국디자인진흥원
책 "제품의 탄생" 소개
스마트 제조: AWS를 활용한 제조사의 디지털 트랜스포메이션 실현 방법 및 사례 – 석진호 AWS 제조업 사업개발 담당, 최계현 현대건설기...
Platform bm game work sheet design thinking sheet
개발자의 현재와 미래
Approach for Smart Factory
시스테믹 혁신 관점에서 살펴본 IoT 세상_ver20140405
Triz and systematic business model innovation 2013.10.02
overview ntels bigdata tech.
New Media Marketing Strategies - Mobile, Cloud Computing Research
[비즈니스 모델 디자인과 린스타트업 활동] 5주차. 비즈니스모델 디자인 1
디자인과 기술융합 (0824)
[월간금융 2011 01월호]스마트워크(4)
[월간금융 2011 1월호]스마트워크
150514 경북대학교(콘텐츠산업과 창업)
이노베이션3.0 책 강연 자료
Ad

More from 종빈 오 (16)

PDF
[GEG1] 2.the game asset pipeline
PDF
[TAOCP] 2.5 동적인 저장소 할당
PDF
[GEG1] 24. key value dictionary
PDF
[TAOCP] 1.3.1 MIX 설명
PDF
[GEG1] 10.camera-centric engine design for multithreaded rendering
PDF
[TAOCP] 1.3.1 MIX 설명, 짝수 연습문제 풀이
PDF
[TAOCP] 1.2.1 수학적 귀납법
PDF
[shaderx7] 8.1 Cross-Platform Rendering Thread : Design and Implementation
PDF
2010 아꿈사 오전반 포스트모템
PDF
[shaderx6]8.2 3d engine tools with c++cli
PDF
ManagingHumans/chap1~6
PDF
아꿈사 매니저 인사
PDF
[페차쿠차] 아꿈사 반장 하기
PDF
xUnitTestPattern/chapter7
PDF
적당한 스터디 발표자료 만들기
PDF
[shaderx6] 3.7 Robust Order-Independent Transparency via Reverse Depth Peelin...
[GEG1] 2.the game asset pipeline
[TAOCP] 2.5 동적인 저장소 할당
[GEG1] 24. key value dictionary
[TAOCP] 1.3.1 MIX 설명
[GEG1] 10.camera-centric engine design for multithreaded rendering
[TAOCP] 1.3.1 MIX 설명, 짝수 연습문제 풀이
[TAOCP] 1.2.1 수학적 귀납법
[shaderx7] 8.1 Cross-Platform Rendering Thread : Design and Implementation
2010 아꿈사 오전반 포스트모템
[shaderx6]8.2 3d engine tools with c++cli
ManagingHumans/chap1~6
아꿈사 매니저 인사
[페차쿠차] 아꿈사 반장 하기
xUnitTestPattern/chapter7
적당한 스터디 발표자료 만들기
[shaderx6] 3.7 Robust Order-Independent Transparency via Reverse Depth Peelin...

[Domain driven design] 17장 전략의 종합