욱'S 노트

DDD - Ubiquitous Language 본문

Methdology/Domain Driven Design

DDD - Ubiquitous Language

devsun 2015. 2. 9. 16:30

도메인 전문가와 이야기를 하다보니 커뮤니케이션에 장벽을 느낄 수 있다. 개발자는 모든 생각이 클래스, 메소드, 알고리즘, 패턴등 프로그래밍 요소들에 가 있을 것이다. 혹은 항상 관계, 상속, 다형성, OOP 등을 생각할 수 도 있다. 하지만 도메인 전문가들은 라이브러리, 프레임워크, 데이터베이스 등에 아무런 관심이 없다. 이러한 상황을 극복하기 위해 모델을 정의할 때. 모델에 대한 반드시 생각이 교환해야 한다.  만약 한 사람이 말한 것을 다른 사람이 이해하지 못한다면 그 프로젝트는 성공할 수 없을 것이다. 


Domain-Driven Design의 핵심 원칙은 모델을 기초로한 언어를 사용하는 것이다. 모델은 공통영역이므로 소프트웨어와 도메인이 만날 수 있다. 공통언어는 하룻밤 사이에 나타나지 않을 것이다. 몇 주가 걸릴수도 있고, 대형 프로젝트에서는 몇 달이 걸릴 수도 있다. 모델과 언어는 강력하게 서로 결합되어야 한다. 언어의 변화는 반드시 모델의 변화가 되어야 한다.




도메인 전문가와 개발자는 대화를 나누다가 비행기라는 용어보다 비행이라는 용어로 변경하기로 합의했다. 

이러한 언어들은 항상 공유되고 일치되어야 한다.



'Methdology > Domain Driven Design' 카테고리의 다른 글

DDD - 지식 탐구  (0) 2016.01.27
DDD - 도메인 모델이란?  (0) 2016.01.27
DDD - Model Driven Design  (0) 2015.04.16
DDD - 시작하기  (0) 2015.02.05
DDD - Domin Driven Design이란?  (0) 2015.02.04
Comments