ERD를 그리는 것만으로는 설계가 끝나지 않는다. 동일한 도메인을 이야기하더라도 사람마다 단어의 의미를 다르게 이해할 수 있기 때문이다.
예를 들어 “고객”이라는 단어를 어떤 팀은 “구매한 사람”으로, 다른 팀은 “회원가입한 사람”으로 이해할 수 있다. 이런 혼선을 줄이기 위해 용어 사전(Data Dictionary) 을 작성한다.
쇼핑몰 도메인을 예로 들어, 핵심 엔티티에 대한 용어 사전을 간단히 작성하면 다음과 같다.
| 용어 | 분류 | 정의 | 비고 |
|---|---|---|---|
| 고객 | 엔티티 | 쇼핑몰에 회원가입했거나, 주문 기록이 있는 사람을 의미한다. | 비회원 주문을 허용하는지 여부에 따라 정의 조정 필요 |
| 회원 | 엔티티 | ID/비밀번호로 로그인할 수 있는 사용자 계정을 가진 사람을 의미한다. | ‘고객’과 동일하게 쓸지 별도로 구분할지 사전에서 명시 |
| 상품 | 엔티티 | 판매를 위해 등록된 개별 아이템을 의미한다. | 단일 상품, 옵션 상품, 세트 상품 등을 포함할지 정의 |
| 주문 | 엔티티 | 고객이 하나 이상의 상품을 선택하여 결제 절차를 시작/완료한 행위를 기록한 데이터 | 주문 생성 시점, 결제 완료 시점 등 라이프사이클 정의 필요 |
| 주문상품 | 엔티티 | 한 건의 주문 안에 포함된 개별 상품 항목을 의미한다. | 수량, 단가, 할인, 옵션 정보 등 포함 |
| 결제 | 엔티티 | 주문에 대한 지불 행위를 의미한다. | 카드, 계좌이체, 포인트, 복합 결제 등 상세 정의 |
| 배송 | 엔티티 | 주문된 상품을 고객에게 전달하는 프로세스를 의미한다. | 배송 상태 코드(준비중, 배송중, 배송완료 등) 정의 |
| 주문상태 | 코드 | 주문의 현재 처리 상태를 나타내는 코드 값이다. | 예: 주문완료, 결제대기, 배송준비, 배송중, 구매확정 |
이 외에도 실제 시스템에서는 다음과 같은 항목을 용어 사전에 함께 기록한다.
실무에서는 다음과 같은 방식으로 함께 활용하는 것이 좋다.