UML을 활용한 PC방 좌석 예약 시스템 설계
Design of PC Room Seat Reservation System Using UML
1. 소개
- PC방 실시간 잔여 좌석 안내 및 예약 시스템을 개발하기 위해 UML을 사용하여 설계
- 사용자 요구사항과 각종 Diagram을 작성함으로서 개발 과정에서 발생하는 개발자와 설계자, 사용자 간의 대화 불일치를 방지 및 목표 시스템의 목적과 기능을 명확히 함
2. 시스템 구조도
- 회원정보관리
- 사용자가 회원가입 시 회원 정보가 회원 정보 DB에 저장
- 이 DB를 통해 회원 정보관리 및 로그인을 진행
- PC방 정보 검색
- PC방 정보 DB를 이용하여 PC방을 검색
- 검색결과에 부합하는 PC방 정보 DB에서 찾아 출력
- 관리자는 PC방 정보 DB에 접근해 PC방 정보를 수정
- 예약
- 예약 시 선택한 좌석 정보를 좌석 DB에 저장
- 예약 시 사용자 DB 정보를 통해 미성년자인지 아닌지 검사
- 사용자 DB와 좌석 Db를 함께 예약 DB에 저장
- 사용자 DB정보와 좌석 DB정보를 통해 보증금 결제 진행
- 예약 DB
- 보증금을 결제후 결제 정보를 예약 DB에 저장
- 보증금 결제 후 예약 취소 시 예약 DB정보를 통해 보증금 환불
- 예약 DB을 통해 보증금 반환
3. 설계 및 구현
- Usecase Diagram
Usecase ID |
Usecase 내용 |
처리 흐름 |
UD-01 |
회원가입을 한다 |
- 회원 사용자는 회원가입에 필요한 정보를 입력한다
- 한 사용자가 여러 개의 계정을 사용하려 하는지 검사한다
- 아이디가 중복되었는지 검사한다
|
UD-02 |
아이디, 비밀번호를 찾는다 |
- 회원 사용자가 아이디, 비밀번호를 분실하였을 경우 회원가입 시 입력한 이름, 생년월일, 휴대폰 통신사, 휴대폰 번호를 입력하여 아이디 비밀번호를 찾는다
|
UD-03 |
비밀번호를 변경한다 |
- 회원 사용자가 비밀번호 변경을 희망할 시 회원가입 시 입력한 이름, 생년월일, 아이디, 비밀번호를 통해 비밀번호를 변경한다
|
UD-04 |
회원정보를 삭제한다 |
- 회원 사용자가 회원 정보 삭제를 희망할 시 회원가입 시 입력한 이름, 생년월일, 아이디, 비밀번호를 통해 회원 정보를 삭제한다
|
UD-05 |
로그인을 한다 |
- 회원 사용자는 회원가입 시 입력한 아이디 비밀번호를 입력해 로그인을 한다
|
UD-06 |
PC방 정보를 검색한다 |
|
UD-07 |
조건 검색을 한다 |
- 사용자는 조건을 설정하여 검색한다
- 조건을 설정 안 할 시 기본 값으로 PC방을 검색한다
|
UD-08 |
좌석을 예약한다 |
- 회원 사용자는 예약 가능한 좌석을 선택한다
- 회원 사용자는 시작 희망시간을 선택한다
|
UD-09 |
결제를 한다 |
- 회원 카드 결제 혹은 휴대폰 결제를 한다
- 카드 결제 시 카드 회사명, 카드번호, 카드 CVC번호를 입력한다
- 휴대폰 결제지 휴대폰 통신사, 휴대폰 번호를 입력한다
- 회원 사용자는 보증금 결제를 완료한다
|
UD-10 |
예약을 취소한다 |
- 결제한 사용자는 예약 취소 희망 시 결제에 사용된 정보를 입력한다
|
UD-11 |
환불을 받는다 |
- 취소를 한 시간이 예약 희망시작 30분~15분 사이면 보증금을 반환받는다
- 결제 시 사용한 수단으로 환불이 진행된다
|
UD-12 |
PC방 정보를 수정한다 |
- 관리자는 수정할 PC방 정보가 있을 시 PC방 정보를 수정한다.
|
UD-13 |
등급제를 설정한다 |
|
UD-14 |
사용금액 내역을 검색한다 |
- 외부 PC방 시스템으로부터 사용금액 내역 정보를 제공받는다
|
클래스명 |
메소드명 |
설명 |
회원정보 |
중복계정 검사 |
한 사람이 여러 개의 계정을 만드는지 검사 |
아이디 중복검사 |
회원가입 시 다른 사용자의 아이디가 중복되는지 검사 |
사용자 |
PC방 정보 검색 |
PC방 정보를 검색 |
회원 |
회원가입 |
로그인을 위해 필요한 회원가입 |
아이디 비밀번호 찾기 |
아이디 혹은 비밀번호 분실 시 찾기 위한 기능 |
비밀번호 변경 |
비밀번호 변경 희망시 비밀번호 변경 |
로그인 |
좌석 예매기능을 사용하기 위해 로그인 |
보증금 결제 |
좌석 예매에 필요한 보증금 결ㅈ[ |
회원등급정보 검색 |
사용자 본인의 등급을 알고 싶을 때 검색 |
리뷰 작성 |
PC방 이용후 해당 PC방 리뷰 작성 |
예약 취소 |
PC방 예약 취소 |
비회원 사용자 |
- |
회원가입을 하지 않은 사용자 |
검색조건 |
PC방 과의 거리 계산 |
사용자가 검색조건에 설정한 현재 위치에서 전방 몇km 주변에 있는 PC방 정보를 출력하기 위해 사용자의 현재 위치와 PC방 사이의 거리 계산 |
PC방 정보 |
PC방 정보 출력 |
PC방 정보 검색 결과를 출력 |
좌석 정보 |
좌석 정보 출력 |
사용자가 선택한 PC방의 좌석 정보를 출력 |
좌석 예약 |
미성년자 검사 |
22시~09시 사이에 예약 시 미성년자 구분하기 위해 검사 |
시간 지연으로 인한 좌석 예약 취소 |
사용자가 예약 시 희망 시작 시간이 지나도 PC방에 도착하지 않아 예약한 좌석을 사용하지 않을 시 예약 취소 |
보증금 결제 정보 |
- |
좌석 예약에 필요한 보증금 결제 시 필요정보 |
카드 결제정보 |
- |
보증금 결제 시 두 가지 수단 중 하나인 카드 결제 시 필요정보 |
휴대폰 결제 정보 |
- |
보증금 결제 시 두 가지 수단 중 하나인 휴대폰 결제 시 필요정보 |
보증금 환불 |
보증금 환불 조건시간 검사 |
예약 취소 시 보증금을 환불받을 수 있는 시간인 희망 시작시간 30분~15분 전인지 검사 |
보증금 반환 |
보증금 반환 |
예약 후 희망시간 전에 정상적으로 PC방에 도착 시 보증금을 반환 |
회원 등급 |
회원등급설정 |
사용 내역에 따른 회원 등급 설정 |
회원등급 정보출력 |
사용자의 회원 등급 출력 |
관리자 |
PC방 정보수정 |
PC방 정보수정이 필요할 시 PC방 정보수정 |