2장의 핵심은 communication 입니다. 요구분석, 설계, 구현 모든 단계에 있어 communication 을함에 있어 비효율, 혼선 등을 제거하기위해 계속해서 노력해야 함을 피력하고 있습니다. 특히 domain expert, developer 그리고 고객이 서로 다른 language 를 사용함으로 인한 심각한 문제가 발생할수 있음을 지적합니다. 여기서 language 란 단순히 통일되지 못한 용어만을 의미하지 않습니다. domain expert 는 업무 domain 적 사상으로 이야기 하고 developer 는 기술적 관점에서 이야기함으로 인해 둘사이의 혼선(translation 을 함으로 인한 낭비 및 혼선)이 가중됨을 지적합니다. 이에 대한 해결책으로 공통의 언어( ubiquitous language)를 사용할것을 이야기 하고 있습니다. 가장 기본적으로 같은 용어를 사용해야 하고 같은 관점에서 바라보고 논의 해야 합니다. 이렇게 되기 까지 많은 혼선과 시간이 소요되겠지만 피하지 말고 계속 노력할것을 요구합니다. 여기서 언어란 용어 혹은 문서 만을 의미 하지 않습니다. diagram, writing, 문서 및 코드 전부분에 ubiquitous language 가 녹아 들어가야 한다고 말합니다. "Use the model as the backbone of a language. commit the team to exercising that language relentlessly in all communication within the team and in the code. Use the same language in diagrams, writing, and especially speech." 흔히들 model 하면 diagram(UML 같은)을 떠올림니다. 저자는 Model 이 곧 digram은 아니라고 합니다. 전체에 대한 overview 를 이해 함에 있어 diagram 만으로는 그 표현에 제약이 있습니다. 따라서 Model ...