20년전에 등장한 DDD, 도메인 지식 전문가라고 불리는 영역이 GPT와 같은 LLM이 흡수하고 있는것도 사실이며 "도메인 전문가"라는 의미를 다시 해석할 필요가 있는것 같습니다.

그렇다고 DDD의 철학/전략이 모두 쓸모없는것은 아닌것같고  도메인모델을 이해하고 해석하는 통찰력을 가지게 하는것은 사실이기때문입니다.

그러한 관점에서 DDD가 쓸모없다가 아니라, 20년전 등장한 방식이 오늘날도 유용한가? 의 관점에서 유용한 영상을 분석해보았습니다.   



영상 분석내용

📌 도메인 주도 설계(DDD) 책의 1장과 2장을 읽고 저자가 느낀 현실과의 괴리감은 무엇인가?

저자는 비즈니스를 이해하는 것의 어려움, 핵심 하위 도메인과 일반 하위 도메인을 구분하는 것의 어려움, 핵심 하위 도메인을 내재화해야 한다는 주장에 대한 의문, 그리고 유비쿼터스 언어를 도메인 용어 기반으로 만드는 것의 불가능성 등 책의 내용이 현실과 동떨어진 부분이 많다고 느꼈습니다.

💡 저자가 생각하는 유비쿼터스 언어의 진정한 역할과 활용 장소는?

유비쿼터스 언어는 도메인 전문가와의 커뮤니케이션보다는 개발팀 내부에서 용어를 통일하기 위해 사용되며, 가장 효과적으로 활용되는 장소는 피그마와 같은 기획 문서입니다.


이 컨텐츠는 도메인 주도 설계(DDD) 책의 1, 2장을 읽고 현실적인 개발 환경애자일 방법론의 관점에서 비판적으로 분석한 내용을 다룹니다. 특히, 비즈니스 도메인이해의 어려움, 핵심 도메인내재화의 현실적인 제약, 그리고 유비쿼터스 언어의 실질적인 활용처에 대한 발표자의 경험과 생각을 공유하며, DDD 이론과 실제 적용 간의 괴리를 지적합니다.


1. 비즈니스 도메인 이해의 한계와 현실 [4]


2. 도메인 전문가의 한계와 교차 검증의 필요성 [75]


3. 도메인 분류(핵심/일반/지원)와 그 현실적 어려움 [121]


4. 하위 도메인 개발과 자원 배분의 현실 [193]


5. 핵심 도메인 내재화와 기술적 차별성의 현실 [244]


5. 핵심 도메인 내재화와 기술적 차별성의 현실 [244]


6. 유비쿼터스 언어(공통 언어)와 도메인 용어의 한계 [347]


7. 도메인 커뮤니케이션과 애자일의 현실적 결론 [547]


8. 결론 및 실무 적용의 어려움 [683]

릴리 링크 : https://lilys.ai/digest/4959253/4281642?s=1&noteVersionId=559252


호주 퍼스에서의 경험

7년전이였나? DDD를 전혀 모를때 외국 글로벌 기업(VGW)에서 일을 하면서 DDD라는 컨셉을 처음듣고 해당 방법론대로 스프린트를 돌리는곳에

참여를해 고생한 경험이 있습니다. DDD는 그냥할수있는것이 아니라.. 그것을 하기위해 역량을 집중하고 설계를 고민하는 활동이 

기본적으로 전제돠어 있습니다.  책한권 읽었다고 갑자기 할수 있는것은 아닌것같으며 개발팀은 이것을 도입하기위한 준비와

학습과정에 돈을 아끼지 않은듯... 



국내 복귀후~ DDD가 우리(국내)에게는 안맞겠구나란 결정적으로 한 생각은 우리의 국내 문화가  해결책을 찾는 순서 자체가 완전히 다르다란 점이며

국내에서도 DDD를 일부 적용해 성공사례가 있을수 있겠지만 극히 소수인것같으며 , 보편적으로 문제를 찾고 인식하는 순서의 차이또는 문화적 습관으로 DDD도입이 어렵겠구나 라고생각하며

다음과 같은 이유들입니다.

국내에서 DDD가 도입하기 어려운 이유

✅ 문제 해결 접근 방식의 차이: 한국 vs 해외

구분국내(한국 중심)해외(서구 중심: 미국, 유럽 등)
출발점해결책(솔루션)을 먼저 상상하고 시작문제 정의부터 신중히 시작
사고방식"답을 빨리 내야 한다" → 속도 중심"문제가 맞는가?" → 정확성 중심
문제 정의사후적으로 맞춰가는 경향문제를 먼저 좁고 명확하게 정의
회의 패턴결과지향적 브레인스토밍 (해결방안에 집중)원인 규명 중심 토론 (문제 원인과 가정 검증)
보고 방식"어떻게 해결했는가"를 강조"무엇이 문제이고 왜 그것이 중요한가"를 강조
실패 인식실패 = 책임 문제 → 회피 경향실패 = 학습 기회 → 빠른 실험 장려
결정 방식위에서 정한 방향에 맞는 문제를 나중에 맞춤아래에서 문제 발견 후 위로 이슈 제기
대표적 표현“그거 해결됐어?”“그게 진짜 문제야?”



🔍 이 차이가 조직/프로젝트에 미치는 영향

항목국내식 접근의 장점단점해외식 접근의 장점단점
속도빠른 실행, 임시 해결 가능근본 원인 방치, 반복 발생문제 재발 방지 가능초기 속도 느림
조직문화상명하달, 위계질서 존중비판·이견 표현 어려움수평적 의견 수렴 가능결론 도출 오래 걸림
창의성/혁신정해진 틀 안에서 효율성 추구창의적 시도 부족다양한 관점의 문제 탐색 가능통일된 방향성 부족 우려
학습/피드백결과만 보는 평가 방식실패 분석 부족실패도 공유하며 성장실험 과잉일 경우 리스크 존재

💡 정리된 인식과 시사점


✅ 왜 DDD는 "문제 정의 우선" 방식과 잘 맞는가?

구분설명
1. 도메인 중심 사고DDD는 비즈니스 도메인의 문제와 복잡성 자체에 집중함. 기술은 그 문제를 해결하기 위한 도구일 뿐.
2. 유비쿼터스 언어 (공통 언어)해결책을 먼저 정해놓고 진행하면 언어가 뒤따르기 쉽지만, DDD는 도메인 전문가와 개발자가 문제에 대한 공감대부터 만들어가는 것이 핵심.
3. 지속적 탐색 (Exploration)DDD는 끊임없이 문제를 탐색하고 모델을 수정해나가는 진화적 접근을 취함. 초기 해결책이 항상 옳지 않다는 전제를 깔고 있음.
4. 복잡성 관리표면적 문제가 아닌 **핵심 복잡성(Core Complexity)**을 파악하고 그것을 중심에 둔 구조 설계를 추구함. 이는 빠른 해결보단 올바른 문제 정의가 선행되어야 가능한 구조.

✅ DDD와 한국식 접근의 충돌 지점

한국식 (해결책 우선)DDD 철학과 충돌하는 부분
빠르게 UI/기능 정의 → 개발도메인 지식 없이 구조를 먼저 고정하면, 모델이 잘못되기 쉬움
개발 전에 해결책(PPT)부터 그리기정작 중요한 문제는 해결되지 않고 겉모습만 구현될 가능성
도메인 전문가가 아니라 기획자가 요구사항을 주도유비쿼터스 언어의 부재 → 커뮤니케이션 오류 발생
빠른 피처 구현과 릴리즈 우선모델의 일관성과 의미 유지에 실패

✅ 결론



마치며

나는 DDD신봉자도 반대자도 아니며 단지 뭔가 배울것이 어딘가에 있을것이다란 작은믿음이 있으며 , 프로젝트 초기팀을 셋업할때 이것을 꼭 적용하기 보다 "그냥 도움되는것있으면 배워~" 정도로 소개를 합니다.

적용하기 어려운 이유를 찾는것도 역시 뭔가를 배우고 있는것이고 통찰력을 기를수 있는 지점이라 생각되어 왜? 적용하기 어려운가를 조사하고 정리해보았습니다.

가령 MSA는 왜 적용하기 어려운가? 를 열심히 심층분석하다 보면~ 역설적으로 그것을 배워 나가지 않을까요? 안되서 포기해야할 이유를 찾는것이아니라 안되는 이유를 찾아 극복하다보면 우리만의 방식을 찾고 만들어내지 않을까?