Name: Book Hotel Room

Context of use: A client books an hotel room

Scope: Online booking system
Level: User goal
Primary actor: Client
Stakeholders & interests:
 Hotel owner - have profit
 Client - get room booked
Pre-conditions: The hotel management system is available
Success end condition: A new reservation is stored in the system.
Failed end protection: Nothing happens.
Trigger: Client selects the option to book an hotel room.

Main success scenario:
 1. The use case starts when the Client selects the option to book an hotel room.
 2. The Client selects a check-in date.
 3. The Client selects a check-out date.
 4. The system checks if the dates are available.
 5. The system shows the available rooms for the dates.
 6. The Client select an hotel room.
 7. The Client inserts its personal details.
 8. The Client finishes the reservation.
 9. The system validates the personal information provided by the client.
 10. The system confirms the reservation and the use case ends.

Variations:
 InvalidData
 NoRoomAvailable
 NoCheckInDataAvailable
 NoCheckOutDateAvailable