모든 번역은 추가적인 노력과 버그를 유발할 수 있으므로 가능하면 번역을 피하십시오.
"도메인 구동 설계"가 현대 소프트웨어 엔지니어링에 기여한 주요 요소 는 프로젝트의 모든 이해 관계자가 사용하는 단일 언어 인 유비쿼터스 언어 의 개념입니다 . DDD에 따르면, 팀 (사양 문서의 프록시만으로도 도메인 전문가 포함) 내에서 번역이 발생하지 않아야하고 팀간에 만 번역해야합니다 (추가 정보 : Eric Evans의 "도메인 기반 디자인", 특히 챕터 유비쿼터스 언어 및 전략적 디자인에 대해).
즉, 비즈니스 전문가 (또는 사양 문서)가 네덜란드어를 사용하는 경우 비즈니스 문제를 소스 코드로 표현할 때 (네덜란드어) 용어를 사용하십시오. 불필요하게 영어로 번역하지 마십시오. 비즈니스 전문가와 프로그래머 간의 의사 소통에 인공적인 장애가 발생하기 때문에 시간이 걸리고 (모호하거나 나쁜 번역을 통해) 버그가 발생할 수 있습니다.
반대로, 비즈니스 전문가가 영어와 네덜란드어로 비즈니스에 대해 이야기 할 수있는 경우 프로젝트의 유비쿼터스 언어를 선택할 수있는 운이 좋은 상황에 있으며 영어를 선호하는 정당한 이유가 있습니다 (예 : "국제적으로 이해할 수있는 표준에 의해 사용될 가능성이 더 높음 "), 그렇게한다고해서 코더가 비즈니스 사람들이 말하는 것을 번역해야한다는 의미는 아닙니다. 대신, 사업 사람들은 언어를 바꿔야합니다.
유비쿼터스 언어를 사용하는 것은 요구 사항이 복잡하고 내부적으로 사용하는 언어를 CRUD 만하는 경우 정확하게 구현해야하는 경우 특히 중요합니다.
개인 일화 : 저는 일부 비즈니스 서비스를 SOAP 엔드 포인트로 노출 한 프로젝트에있었습니다. 비즈니스는 전적으로 독일어로 지정되었으며 특정 관할권과 관련된 법적 문제에 관한 것이기 때문에 영어로 재사용되지 않을 것입니다. 그럼에도 불구하고, 일부 상아탑 설계자들은 향후 재사용을 촉진하기 위해 SOAP 인터페이스가 영어라고 명령했다. 이 번역은 즉석에서 이루어졌으며 개발자들 사이에는 조정이 거의 없었지만 공유 용어집 만 있었으므로 웹 서비스 계약에서 동일한 비즈니스 용어와 웹 서비스 계약에서 동일한 이름을 가진 일부 비즈니스 용어가 생겼습니다. 아, 물론 분열의 양쪽에서 사용되는 일부 이름-다른 의미로!
어쨌든 번역을 선택하는 경우 용어집에서 번역을 표준화하고 해당 용어집의 준수 여부를 정의에 추가 한 다음 검토에서 확인하십시오. 우리처럼 부주의하지 마십시오.