ETC
[오브젝트 - 기초편] 영화 예매 도메인 예제
mxruhxn
2024. 12. 30. 16:36
728x90
반응형
본 게시글은 '오브젝트 - 기초편 강의 | 조영호 - 인프런'을 수강하고 학습한 내용을 정리한 게시글입니다.
도메인(Domain)
- 도메인: 사용자가 프로그램을 사용하는 주제 영역
- 소프트웨어로 구현해야 하는 요구사항의 범위
- 모든 요구사항을 소프트웨어로 구현하는 것은 현실적으로 불가능 (일정, 인력, 난이도 등의 비용)
- 요구사항 중 현실적으로 구현 가능하다고 판단되는 범위만을 결정하면 해당 범위가 애플리케이션 시스템의 도메인
- ex) 음식 배달 애플리케이션을 만든다고 가정하면, (메뉴, 주문, 결제) 단계만을 포함하고 실제 (조리, 배달, 식사) 단계는 포함하지 않음
- 소프트웨어로 구현해야 하는 요구사항의 범위
- 도메인(소프트웨어에 포함될 요구사항의 범위)을 정했다면 '요구사항 분석' 필요
- 이 과정에서 도메인 안에 존재하는 중요 개념들(도메인 모델)을 이용해 요구사항을 분석하고,
- 이 개념들을 기반으로 시스템을 구현하는데 필요한 객체들을 식별 가능
ex) 영화 예매 도메인 개념
영화(Movie)
- 가장 중심이 되는 개념
- 제목, 러닝 타임, 감독, 배우, 예매 정가 등의 정보 포함
- 영화에
할인 정책
이 있다면 사용자에게 할인 제공 가능
상영(Screening)
- 사용자들이 관람할 수 있도록 특정 시간에 영화를 공개하는 활동을 의미
- 사용자가 실제로 예매하는 대상
- 여러 시간에 걸쳐 반복적으로 상영 가능하기에 영화와 상영은
1: 0..*
- 상영 날짜, 상영 시간, 상영 회차 등의 정보 포함 ex) 2024-12-03 09:30 조조
할인 정책(Discount Policy)
- 영화 예매 도메인에서 '할인'은
할인 정책
+할인 조건
의 조합으로 구성 - 할인 정책은 사용자의 예매 요금에서 차감할 할인 금액을 계산하는 방법을 의미
- 할인 정책은 없을 수도 있고 있다면 1개만 적용 가능
- 종류
금액 할인 정책(Amount Discount Policy)
: 정가에서 항상 동일 금액 할인비율 할인 정책(Percent Discount Policy)
: 정가의 일정한 비율 할인
- 영화 예매 도메인에서 '할인'은
할인 조건(Discount Condition)
- 요금을 할인받기 위해 만족해야 하는 조건을 정의
- 1개의 할인 정책에는 최소 1개의 할인 조건이 존재해야 하고, 여러 개의 할인 조건이 있을 수도 있음
- 종류
순서 조건(Sequence Condition)
: 상영의 회차를 기준으로 할인 여부 판단기간 조건(Period Condition)
: 상영의 시작 시간을 기준으로 할인 여부 판단
예매(Reservation)
- 사용자가 상영을 구매하면 생성되는 도메인 개념
- 여러 명의 사용자가 동시간대에 상영되는 영화를 함께 관람할 수 있기 때문에 상영과 예매는
1: 0..*
- 영화의 제목과 상영시간, 예매 인원, 영화의 정가, 결제 금액 등의 정보 포함
728x90
반응형