Skip to content

skfkgla/DDD-practice

Repository files navigation

산출물

용어사전

용어 컨텍스트 정의 사용예시
예약(Reservation) 예약 컨텍스트 승객이 특정 항공편의 좌석을 임시로 확보한 상태 "예약은 결제 전까지 30분간 유효합니다"
특별 서비스(Special Service) 예약 컨텍스트 휠체어, 유아 바구니, 특별 기내식 등 선착순으로 배정되는 행위 “특별 서비스는 항공편 출발 48시간 전까지 신청 가능합니다.”
예약 변경(Change Reservation) 예약 컨텍스트 항공권의 항공편(날짜, 시간, 구간), 승객 정보(연락처, 이메일, 특별 서비스), 좌석(유료 좌석 업그레이드/변경) 등을 변경하는 행위 “기존 예약의 항공편, 날짜, 승객 정보등을 변경합니다.”
예약 취소(Cancle Reservation) 예약 컨텍스트 기존 예약을 취소하고 취소 수수료 정책에 따라 환불금액을 계산하여 결제 수단에 맞게 환불하는 행위 “예약을 취소하고 결제 금액을 환불 합니다.”
좌석 배정(Register Seat) 예약 컨텍스트 예약된 승객에게 선택 시점, 유형과 정책, 규칙에 따라 좌석을 할당하는 행위 “탑승권 구매 후 좌석 선택 완료시 좌석 배정(수동 좌석 배정)”
결제(Payment) 결제 컨텍스트 마일리지, 카드, 복합결제 등 여러 결제 수단을 포함한 발권 및 예약시 금액을 지불하는 행위 “일본 탑승권 예약을 위한 200,000원 카드 결제”
복합결제(Hybrid Payment) 결제 컨텍스트 마일리지 + 카드를 동시 사용하여 지불하는 결제방식 “마일리지 50,000 + 카드
200,000원 결제”
항공권 발권(Issue AirTicket) 예약 컨텍스트 결제 완료된 예약에 대해 전자 항공권(E-ticket)을 정식 발행하는 행위 “국제선은 출발 72시간 전까지 반드시 발권하야여 합니다.”
항공권 재발행(Reissue AirTicket) 예약 컨텍스트 변경된 내용으로 전자 항공권(E-ticket)을 다시 발행하는 행위 “항공권 날짜 변경 후 재발행”
탑승권(BoardingPass) 예약 컨텍스트 체크인 이후 받는 좌석번호, 탑승 게이트, 탑승 시간이 포함된 티켓 “체크인 후 탑승권 발급”
탑승권 발급(Issue BoardingPass) 예약 컨텍스트 체크인 완료시 탑승권을 발급하는 행위 “모바일 탑승권 및 이메일 발송을 지원합니다.”
운행정보(Flight Operation) 항공편 컨텍스트 항공사가 운영하는 항공편의 출발지, 도착지, 운향 날짜, 비행편명 등의 운항 세부정보 “대한항공 KE123편은 인천-도쿄 노선을 매일 운항합니다.”
일정(Schedule) 항공편 컨텍스트 항공사의 출발일시, 도착일시 등 시간 정보를 포함하는 정보 “KE123편의 12월 20일 출발 일정은 오전 9시입니다.”
운임(Fare) 항공편 컨텍스트 항공편 이용 시 적용되는 기본 요금과 수수료 등을 포함한 금액 정보 “인천 → 도쿄 노선의 이코노미 클래스 운임은 200,000원입니다.”
국가정보(Country Info) 항공편 컨텍스트 항공편의 출발지와 도착지가 속한 국가의 코드, 언어 등의 정보 “해당 항공편의 국가 정보는 ICN - JFK 입니다.”
알림 상태(Notification Status) 알림 컨텍스트 알림 전송 후 성공/실패를 나타내는 상태 값 “알림 상태가 실패하여 ‘실패’ 상태로 변경되었습니다.”
메시지(Message) 알림 컨텍스트 알림 내용에 포함할 메시지 “메시지 내용이 잘못되어 알림 전송을 다시 시도합니다.”
알림 종류(Notification Type) 알림 컨텍스트 사용자가 어떤 종류에 대해 받을 알림의 유형을 분류한 정보(이메일, 카카오톡, 푸시알림 등) “사용자는 카카오톡 알림 종류를 선택했습니다.”
알림) 예약 정보(Reservation Info) 알림 컨텍스트 알림시 필요한 예약 정보(예약일, 확정일, 결제 금액, 항공편 정보 등) “알림에서 제공하는 예약 정보는 확정일, 결제일 입니다.”
항공편 정보(Flight Info) 예약 컨텍스트 항공편 운항에 필요한 상세 정보(편명, 출발/도착 공항, 출발/도착 시간)를 포함한 데이터 “해당 예약의 항공편 정보는 00시 00분 출발하고, gate는 6번 입니다.”
여권 정보(Passport Info) 예약 컨텍스트 국제선 예약 또는 발권 시 요구되는 신원 정보 (이름, 여권번호, 만료일) “국제선 예약 시에는 여권 정보를 반드시 입력해야 합니다.”
마일리지(Mileage) 예약 컨텍스트 항공편 이용 후 누적된 포인트. 결제 금액 차감, 좌석 업그레이드 등에 사용 “결제 시 보유한 마일리지 액수 만큼 금액을 차감합니다.”
결제 수단정보(Payment Method Info) 결제 컨텍스트 사용자가 결제시 선택하는 결제 수단 “사용자는 마일리지, 카드, 현금등을 결제시 사용할 수 있습니다.”
결제 상태(PaymentStatus) 결제 컨텍스트 결제과정에서 존재할 수 있는 결제 결과 정보 “해당결제 상태는 진행중/실패/잔액부족/완료” 입니다.”
PG 사(PG) 결제 컨텍스트 결제로직 수행시 결제 API를 제공하는 결제대항사 정보 “현재 사용하고있는 PG사는 토스, PortOne 입니다.”
결제) 예약정보 (Reservation Info) 결제 컨텍스트 결제를 수행할 예약에 대한 정보 “결제시 필요한 예약정보는 예약 번호, 승객 결제 정보가 있습니다.”

컨텍스트 맵

image.png

시나리오 Usecase

특정 항공편의 예약을 성공하고 예약 알림을 받는다.

  1. 승객이 항공편을 검색한다
  2. 예약정보를 입력한다.
  3. 추가 요금을 내고 좌석을 선택한다.(선택)
  4. 결제 시스템을 통해 결제한다.
  5. 예약이 확정되면 예약 완료 알림을 발송 한다.

결제 완료된 예약에 대한 항공권을 발급한다.

  1. 예약 상태가 결제 완료로 변경되면 자동으로 발권을 진행한다.
  2. 예약 정보와 좌석 정보를 바탕으로 E-Ticket을 생성하고 저장한다.
  3. 승객에게 정해진 수단에 맞게 발권 완료 알림을 발송한다.

Use case Diagram

image.png


📌 회고

회고록 바로가기

About

ddd 실습 저장소

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages