본문 바로가기
DB/Modeling_Example

도서관 도서 대출관리(part 2)

by Mr.DonyStark 2023. 10. 25.

 도서관 도서 대출관리(part 1) 이어서 

https://dandora-90.tistory.com/62

 

도서관 도서 대출관리(part 1)

○ 도서관에는 각 서고/서가에 많은 책들이 있음 ▶(명사/동사추출) 서고, 서가, 책 * 서고 : 책이 위치한 공간 / 서가 : 책꽂이 수납장 * 서고와 서가는 1:M, 서가와 서가공간(행/열)은 1:M ○ 고객들

dandora-90.tistory.com

○ 도서관에는 각 서고/서가에 많은 책들이 있음  ▶(명사/동사추출)  서고, 서가, 책
    * 서고 : 책이 위치한 공간 / 서가 : 책꽂이 수납장
    * 서고와 서가는 1:M, 서가와 서가공간(행/열)은 1:M
 ○ 고객들은 인터넷을 통해서 로그인한 후 도서 목록을 조회가능  ▶(명사/동사추출)  고객, 로그인, 도서목록, 조회
 ○ 고객들은 원하는 책 대출받을 수 있음  ▶(명사/동사추출)  대출-고객이 직접 찾아 대출
 ○ 고객은 책이 있는 경우 대출예약을 할 수 있으며 대출을 위해 직접 방문해서 책을 찾아 대출해야 함  ▶(명사/동사추출)  대출예약

 ▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼
                                                                                 상황요약                                                                                           
 ▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼

○ 마스터 테이블 : 서고, 서가, 책, 고객, 도서목록
○ 관계 테이블 : 로그인, 조회, 대출, 대출예약
TIP) 개념적 설계(한글로 모델링) - 논리적 설계(영문으로 PK, FK 및 필요칼럼 정의) - 물리적 설계(영문으로 직접 테이블 및 필드 설계)
 
○ 반영내용
 - 서고 > 서가 > 서가(층) > 서가(층별 열)를 고려한 테이블 모델링 및 필드 추가
 - 서고와 서가, 총열과 책 테이블 등 1:M 관계고려하여 모델링 진행
 - 기본, 즉, 기준이 되는 데이터값을 위한 코드성 데이터를 위한 테이블 생성 및 모델링 진행. 이를 통해 해당 데이터의 도메인을 결정할 수 있음. ex) 성별 테이블, 책구분 등

 - 정규화 및 1:1 관계 고려한 테이블 모델링 진행 : 책과 책기본정보, 책기본정보와 도메인(책 장르) 별 테이블
 - 날짜기반의 필드는 기본값 date() 지정. 단 반납예정일, 반납일(실제)은 별도 조치
 - 책기본정보 필드에 테이블명 추가. 이를 활용하여 해당 책의 장르에 대한 정보를 확인할 수 있는 테이블명이 적재되도록 설계. 즉, 테이블명의 값을 찾아서 해당 테이블을 조회하면, 해당 책의 장르와 책 장르에 따른 정보 등을 조회 가능하도록 설계   
* 단순히 DB 모델링을 떠나 메타 데이터, 즉, 데이터를 위한 데이터(데이터를 설명해 주는 데이터 의미)를 고려한 설계도 반영돼야 함