DB 모델링

갓김치·2020년 10월 9일
0

DB보강

목록 보기
1/1

참고

데이터베이스 설계단계

  • 데이터베이스 설계 : 사용자의 다양한 요구사항을 고려하여 데이터베이스를 생성하는 과정
  • 관계 데이터베이스의 대표적인 설계방법
    • E-R모델과 변환규칙을 이용한 설계
    • 정규화를 이용한 설계

E-R모델과 변환규칙을 이용한 설계

  • 1~3단계가 핵심
  • 설계 과정중에 오류발견되어 변경필요하면 이전단계로 되돌아가 설계내용 변경 가능

1단계 : 요구사항분석

  • 데이터베이스의 용도파악
  • 결과물 : 요구사항 명세서

2단계 : 개념적 설계

  • DBMS의 독립적인 개념적 구조설계
  • 결과물 : 개념적 스키마 (ER다이어그램)

3단계 : 논리적 설계

  • DBMS에 적합한 논리적 구조설계
  • 결과물 : 논리적 스키마 (릴레이션 스키마)

4단계 : 물리적 설계

  • DBMS로 구현 가능한 물리적 구조설계
  • 결과물 : 물리적 스키마

5단계 : 구현

  • SQL문을 작성한 후 이를 DBMS에서 실행하여 데이터베이스 생성

문제: 비디오 대여점

나는 조그마한 비디오 가게를 운영하고 있으며 이 곳에서 관리할 테입을 3000개 이상 보유하고 있다. 각 비디오 테입은 테입번호를 가지고 있으며, 영화마다 제목과 종류(예를 들어 코미디,공포,드라마,액션,전쟁 등)를 알 필요가 있다. 우리는 각 영화당 많은 테입을 보유하고 있으며, 영화마다 특정번호를 부여하고 각 테입이 어떤 영화를 포함하고 있는지 관리한다.
테입은 (Beta 혹은VHS 방식)일 수 있다. 우리는 각 영화를 위해 적어도 한개 이상의 테입을 보유하고 있으며, 각 테입은 항상 한가지의 영화를 담고 있다. 보유한 테입의 길이는 매우 길어 복수개의 테입으로 된 영화는 하나도 없다. 우리는 특정 배우가 출연한 영화를 자주 찾는다. 안성기나 강수연은 항상 인기가 좋다. 그래서 우리는 각 영화마다 주연배우를 알 필요가 있으며 본명및 생년월일까지도 알고자 한다. 우리는 보유하고 있는 영화의 주연들에 대한 정보만 관리하고 싶다.
우리는 많은 고객을 보유하고 있으며 신용고객클럽에 가입한 회원들에게만 테입을 대여한다. 이 클럽에 가입하기 위하여 고객은 좋은 신용을 가져야하며 각 회원들의 성명,주소,전화번호,회원번호를 관리하고자 한다.
우리는 고객이 현재 어떤 테입을 빌려갔는지를 관리하고자 하며 고객은 한번에 여러개의 테입을 빌려갈 지도 모른다. 또한, 우리는 현재의 대여정보만 관리하지 과거의 이력정보는 관리하지 않는다

1단계: 요구사항 분석

  • 나는 조그마한 비디오 가게를 운영하고 있으며
  • 이 곳에서 관리할 테입을 3000개 이상 보유하고 있다.

테입 관련 + 영화 관련

  • 각 비디오 테입은 테입번호를 가지고 있으며,
  • 영화마다 제목종류(예를 들어 코미디,공포,드라마,액션,전쟁 등)를 알 필요가 있다.
  • 우리는 각 영화당 많은 테입을 보유하고 있으며, (수량)
  • 영화마다 특정번호를 부여하고
  • 각 테입이 어떤 영화를 포함하고 있는지 관리한다.
  • 테입은 Beta 혹은 VHS 방식일 수 있다.
  • 우리는 각 영화를 위해 적어도 한개 이상의 테입을 보유하고 있으며, 각 테입은 항상 한가지의 영화를 담고 있다.
  • 보유한 테입의 길이는 매우 길어 복수개의 테입으로 된 영화는 하나도 없다.

배우 관련

  • 우리는 특정 배우가 출연한 영화를 자주 찾는다. 안성기나 강수연은 항상 인기가 좋다.
  • 그래서 우리는 각 영화마다 주연배우를 알 필요가 있으며 본명생년월일까지도 알고자 한다.
  • 우리는 보유하고 있는 영화의 주연들에 대한 정보만 관리하고 싶다.

고객 관련

  • 우리는 많은 고객을 보유하고 있으며 신용고객클럽에 가입한 회원들에게만 테입을 대여한다.
  • 이 클럽에 가입하기 위하여 고객은 좋은 신용을 가져야하며 각 회원들의 성명, 주소, 전화번호, 회원번호를 관리하고자 한다.

대여 장부? 관련

  • 우리는 고객이 현재 어떤 테입을 빌려갔는지를 관리하고자 하며 고객은 한번에 여러개의 테입을 빌려갈 지도 모른다.
  • 또한, 우리는 현재의 대여정보만 관리하지 과거의 이력정보는 관리하지 않는다

결과물: 요구사항 명세서

  • 비디오를 대여하려면 회원으로 가입을 해야한다
  • 회원은 가입할 때 성명, 주소, 전화번호, 회원번호가 필요하다
  • 회원은 신용등급이 있고 좋은 신용등급만 대여가 가능하다
  • 회원은 회원번호로 식별한다
  • 회원은 한번에 여러개의 테입을 빌려갈 수 있다.
  • 테입은 테입번호, 영화번호, 수량, 테입방식, 테입길이(재생시간)의 정보를 가지고 있다
  • 테입은 각 영화를 위해 적어도 한 개 이상의 테입이 있다.
  • 테입 하나는 항상 한 가지의 영화만을 담고 있다.
  • 영화는 영화번호, 영화제목, 영화종류(장르), 주연배우(?식별키)의 정보를 가지고 있다.
  • 배우는 예명, 본명, 생년월일의 정보를 가지고 있다
  • 배우를 식별할 배우번호 필요하다.
  • 배우는 보유한 영화의 주연에 대한 정보만 가지고 있다
  • 대여장부는 테입정보, 고객정보, 대여날짜를 가지고 있다
  • 대여장부는 현재 대여정보만을 가지고 있다.

개념적 데이터 모델링

논리적 데이터 모델링

물리적 데이터 모델링

profile
갈 길이 멀다

0개의 댓글