데이터 모델링은 entity, attribute, relationship 파악으로부터 시작한다. 이는 비스니스 룰(사업 규칙)으로 정리한다. 비즈니스 룰: 특정 조직이 운영되기 위해 따라야하는 정책, 절차, 원칙들에 대한 간단명료한 설명이다.
보통은 기획 쪽에서 정하고 이를 기반으로 구체화하기 떄문에 개발자는 이 비즈니스 룰에 대해 잘 이해해야한다. 그리고 비즈니스 룰은 항상 간단명료하면서 필요한 내용을 모두 담고있어야한다. ⇒ 구체적이지 않거나 누락된 것이 있으면 모델링할 때 문제가 생긴다.(다시 엎어야하는.... ) 물론 id 같은 고유번호 등 개발자가 알아서 해야하는 부분도 있다.
비즈니스 룰에서 entity, attribute, relationship 후보 찾기 ⇒ 이를 통해 ERM 초안 만들기
모든 명사는 개체 후보. 모든 동사는 관계 후보. 하나의 값(문자열, 갯수 등)으로 표현할 수 있는 명사는 속성 후보.
ex) 유저는 상품을 주문할 수 있다. (개체, 관계, 속성)
ex) 유저는 상품에 대한 평가를 줄 수 있다. 평가는 두 종류의 데이터: 1~5 사이 자연수의 별점, 그리고 200자 이내 줄 글을 통해 할 수 있다.