데이터 모델링/ERD 작성(이론/실무편)

강풍윤·2021년 10월 18일
0

이론편

모델링 분류

모델링이란 크게 2개 방식의 관점으로 나누어서 볼 수 있습니다. 하나는 데이터 관점, 프로세스 관점입니다. 그리고 두 관점을 통합해서 보는 관점이 필요합니다.

1. 데이터 관점(What)

데이터 관점은 데이터와 데이터 간 관계를 모델링하는 방법이며, 데이터를 접근하는 방법(How), 사람(Who)과는 무관합니다.

2. 프로세스 관점(How)

업무가 실제로 하는 일 또는 해야할 일을 모델링합니다.

이번 포스트에는 데이터 관점 중심으로 살펴보고자 합니다.

관계표기법

두 엔터티 관계에서는 엔터티별로 두 개의 관계를 표현합니다.
필수참여 관계와 선택참여 관계가 어떻게 다른지 두 예시를 통해 확인해봅니다.

필수참여(Mandatory Membership)


부서입장: 하나의 부서는 여러 명의사원을 포함합니다. (반드시 1명 이상의 사원이 포함됩니다)
사원입장: 하나의 사원은 하나의 부서에 포함됩니다.

선택참여(Optional Membership)


부서입장: 하나의 부서는 여러 명의사원을 포함합니다. (사원이 0명인 부서가 존재할 수 있습니다)
사원입장: 하나의 사원은 하나의 부서에 포함됩니다.

실무편

요구사항

  • 총 5회의 강연행사
  • 각 강연행사마다 1명 이상의 연사자(강연자)
  • 연사자에게 질문하기
  • 질문한 사람의 연락처와 이메일의 정보를 받아 선물 이벤트 진행
  • 질문의 추천 수 반영
  • 추천 규칙(질문당 1개 추천, 복수추천 가능)

요구사항 반영 ERD작성


이번 프로젝트에서 행사, 연사자, 질문, 질문 추천 총 4가지의 엔터티를 가집니다.
그리고 각 엔터티에 빠짐없이, 종복없게 인스턴스에 해당하는 데이터를 생각해봅니다. (인스턴스 예: 연사자 PK, 연사자이름, 주요이력, 강연주제 등)

각 엔터티별 관계는 다음과 같습니다.

  • 하나의 행사는 여러 연사자가 올 수 있습니다. (한 명 이상의 연사자가 반드시 존재해야 합니다.)
  • 한 명의 연사자는 하나의 행사에 참여하며, 여러 개의 질문을 받을 수 있습니다. (한 명의 연사자에게 질문한 질문 수가 0개라도 문제되지 않습니다.)
  • 하나의 질문에는 한 명의 연사자에게만 질문됩니다. 또한 하나의 질문에 여러 번의 추천을 받을 수 있습니다. (하나의 질문에 추천수가 아예 없더라도 문제되지 않습니다.)
  • 하나의 질문 추천은 하나의 질문에만 가능합니다.

위의 관계가 모두 이해되었다면 기본적인 관계표기법에 대해서 기본적으로 이해하신 것입니다.
다음 포스트에서 여러 질문을 통해 이번 실무 ERD를 응용하게 될 것입니다.

이론편 참고사이트

profile
https://github.com/KANGPUNGYUN

0개의 댓글