앞서 저는 RDBMS를 제대로 설계해야 하는 이유에 대해 이야기를 해봤습니다. 그럼 진짜 해봐야겠죠..?
RDBMS를 설계하기 위해선 개념적 설계
➡ 논리적 설계
➡ 물리적 설계
의 단계가 필요합니다. 그리고 개념적설계
에 앞서 요구사항 명세서를 정확하게 분석을 해야 하구요.
참! ERD에 대해 알고 있어야 개념적 설계를 할 수 있습니다.
Entity Relationshop Diagram의 약자로서 테이블 간의 관계를 설명해주는 다이어그램입니다. 설계방법1에서 제가 보여드린 이미지가 바로 ERD입니다. ERD를 그릴 때 숙지해야 할 기호가 있습니다.
개체간의 관계를 위의 그림으로 표시합니다.
데이터베이스에 대한 사용자의 요구사항을 수집하고 분석하여 아래와 같은 요구사항(기능) 명세서를 작성합니다.
보드를 구독하려면 아이디,구독여부가 있어야합니다.
유저는 여러 보드를 구독할 수 있습니다.
보드를 구독했다면 글작성, 댓글작성, 좋아요 뿐만 아니라 여러 부가기능을 사용할 수 있습니다.
유저는 또한 여러 글, 댓글을 작성할 수 있습니다.
보드에 대한 정보 보드설명, 보드추가기능여부를 저장하고 있습니다.
유저에 대한 정보 아이디,실명, 비밀번호, 구독여부를 가지고 있습니다.
글에 대한 정보 아이디,글내용,글쓴날짜,어떤 보드에 해당하는 지 가지고 있습니다.
작성한 요구명세서에서 데이터베이스를 구성하는 데 필요한 개체, 속성, 개체 간의 관계를 추출하여 ERD를 생성합니다.
개체(Entity)와 속성(Attribute)를 추출합니다.
대부분 명사
개체간의 관계(Relationship)를 추출합니다.
대부분 동사
관계에 속한 속성도 있을 수 있다.
1:1, 1:N, N:M
필수적참여, 선택적 참여
보드를 구독하려면 아이디,구독여부가 있어야합니다.
유저는 여러 보드를 구독할 수 있습니다.
보드를 구독했다면 글작성, 댓글작성, 좋아요 뿐만 아니라 여러 부가기능을 사용할 수 있습니다.
유저는 또한 여러 글, 댓글을 작성할 수 있습니다.
보드에 대한 정보 보드설명, 보드추가기능여부를 저장하고 있습니다.
유저에 대한 정보 아이디,실명, 비밀번호, 구독여부를 가지고 있습니다.
글에 대한 정보 아이디,글내용,글쓴날짜,어떤 보드에 해당하는 지 가지고 있습니다.
보드를 구독하려면 아이디,구독여부가 있어야합니다.
유저는 여러 보드를 구독할 수 있습니다.
보드를 구독했다면 글작성, 댓글작성, 좋아요 뿐만 아니라 여러 부가기능을 사용할 수 있습니다.
유저는 또한 여러 글, 댓글을 작성할 수 있습니다.
보드에 대한 정보 보드설명, 보드추가기능여부를 저장하고 있습니다.
유저에 대한 정보 아이디,실명, 비밀번호, 구독여부를 가지고 있습니다.
글에 대한 정보 아이디,글내용,글쓴날짜,어떤 보드에 해당하는 지 가지고 있습니다.
글은 하나의 아이디,하나의 보드에 해당합니다.