This use case starts when the actor indicates they want to establish a new reservation for a customer. The actor needs to determine if the customer already exists. The system will allow the actor to perform a customer search by “Customer ID” or “Customer Name”.
If the customer doesn’t exist [Exception: Customer Not Found], or the customer is new, the actor will have to create a new customer, refer to “Use Case – Manage Customer Profile". If the customer is found or has been created then the system will start a customer’s reservation session.
The system will present the actor with a list of bedroom types: Caretaker’s Suite, Terrace Room, Atelier, and Morning Hill Room.
The actor indicates the preferred bedroom type(s) and provides the customer’s arrival date and departure date to the system. The system will determine if there are any bedrooms available for the indicated bedroom type(s) for the specific pair of dates [Exception: Bedroom Unavailable] or [Exception: Improper Length of Stay]. If only one bedroom is available the system will reserve the bedroom, but if more than one bedroom is available then the actor will need to indicate which bedroom to reserve. The system will then create a reservation and update the bedroom’s status.
The actor has the ability to apply discounts to the reservation (if the customer asks). The system will present the actor with a list of discount programs that are currently being offered/accepted by North Star Inn [Exception: No Discounts Being Offered]. The actor has the option to examine the applicable rules associated with a particular discount program. If the actor selects a discount program the reservation is updated to reflect the potential discount and the bedroom price is updated to take into account the applied discount [Exception: Discount Does Not Apply].
Note: A customer’s reservation consists of an arrival date, departure date, bedroom type, bedroom number, deposit amount, selected discount program (optional), and estimated bedroom price.
This use case terminates when the actor has completed placing a customer’s reservation. This will end the actor’s reservation session for the customer.
If the customer was an existing customer the system asks the actor to verify the customer’s information. If the customer’s information in the system is incorrect or outdated the actor will update the customer information, refer to “Use Case – Manage Customer Profile".
The system will ask the actor to enter the reservation’s method of payment. The system will send the customer’s credit card information and deposit amount to the Credit Bureau [Exception: Unable to Process Transaction]. The Credit Bureau will charge the deposit amount to customer’s credit card and provide a transaction confirmation number to the system [Exception: Credit Card Problem]. The system will generate a reservation confirmation number.
If the actor requests another reservation for the same customer, then a new reservation is created and use case process is started over.