[DataBase] 주차관리시스템 ( Parking Management System ) - 1
1. 프로젝트 개요
2. 프로젝트 일정
3. 프로젝트 산출물
3-1. 관련 업무 요구 분석 및 개체관계
3-2. ERD
3-3. ERwin
3-4. 정규화
3-5. 테이블 작성, 인덱스 생성
3-6. 데이터 입력
3-7. 데이터 수정 및 삭제
3-8. 데이터 검색
3-9. View
3-10. 데이터 갱신 후 회복
|
Index 항목을 클릭하면 해당 위치로 이동합니다.
1. 프로젝트 개요
1.1 프로젝트명 및 기간
▷ 프로젝트 명 : Car Parking System
▷ 프로젝트 기간 : 2020.04.09 ~ 2020.04.20. ( 12일 )
1.2 프로젝트 목표
- 고객 관리, 주차 공간을 효율적으로 관리할 수 있는 시스템 구축.
1.3 프로젝트 범위
2. 프로젝트 일정
2.1 프로젝트 추진 일정
2.1 단계별 수행 일정
3. 프로젝트 산출물
※ Car Parking System의 기초 자료는 프로젝트 보고서에 포함하여 제출
※ 구현한 소스코드는 프로젝트 보고서에 포함하여 제출
※ 구현한 소스코드의 결과물은 프로젝트 보고서에 포함하여 제출
3.1 [ Project 1 ] 관련 업무 자료 수집 후 요구분석
3.1.1 주차장 관련 자료 수집 후 요구분석
• 최근 차량의 급속한 증가로 인해 부족한 주차 시설로 불법 주정차문제가 발생하고 이로 인해 차량의 통행 방해, 시야 방해로 인한 보행자 추돌 위험성 등의 여러 문제가 발생
• 건물에 주차 시설 마련으로 불법 주정차의 수 최소화 주차 시 시간 낭비의 최소화, 주차공간의 효율화, 고객 관리의 체계화, 효율화 목적으로 ‘주차’에 관한 주차관리 시스템 구축
[ 표7 ] 자동차 등록대수
[ 표8 ] 불법 주정차 관련 사고 통계
3.1.2 개체(entity) 및 개체 간의 관계(relationship)를 기술.
• 회원은 회원ID, 차량번호, 이름, 주소, 핸드폰 번호를 가진다.
• 관리자는 관리자ID, 관리자 이름, 전화번호, 이메일을 갖는다.
• 주차장은 주차자리번호, 시간당요금을 갖는다.
• 예약은 예약번호, 입차시간, 출차시간, 주차시간, 결제방식을 갖는다.
• 주차는 일련번호, 입차시간,출차시간을 갖는다.
• 납부는 납부번호, 주차요금, 결제방식을 갖는다.
• 회원 ID당 차량 1대만을 등록할 수 있다.
• 한 회원은 하루에 여러 번 주차장을 이용할 수 있다.
• 주차장은 회원에 의해 예약된다.
3.2 [ Project 2 ] ERD작성
3.3 [ Project 3 ] ERwin을 이용한 IE표기법
3.4 [ Project 4 ] 정규화 수행
3.4.1 1차 정규화 수행
1차 정규형은 각 로우마다 컬럼의 값이 1개씩만 있어야 합니다.
이를 컬럼이 원자값(Atomic Value)를 갖는다고 말한다.
ParkingLot 테이블과 같은 경우 주차자리번호의 값이 A-01, A-02, A-03, A-04, A-05로
5개 이기 때문에 1차 정규형을 만족하지 못합니다.
3.4.2 2차 정규화 수행
주차자리번호는 입차시간과 출차시간에 부분 함수 종속성을 가진다.
주차 테이블과 주차장 테이블로 나누어 부분 함수 종속성을 제거
3.4.3 3차 정규화 수행
회원ID가 기본키이고, 기본키가 하나이므로 2차 정규형은 만족한다.
하지만 이 데이터의 납부번호 컬럼을 알면 주차자리번호, 요금, 관리자ID, 요금, 결제방식을 결정할 수 있다. 3차 정규형은 기본키를 제외한 속성들 간의 이행적 함수 종속이 없는 것 입니다. 풀어서 말하자면, 기본키 이외의 다른 컬럼이 그외 다른 컬럼을 결정할 수 없는 것입니다.
3차 정규화는 2차정규화와 마찬가지로 테이블을 분리함으로써 해결할 수 있는데, 이렇게 두 개의 테이블로 나눔으로써 3차 정규형을 만족할 수 있습니다. 이를 통해 데이터가 논리적인 단위(회원,납부)로 분리될 수 있다.