Skip to content

System Requirements

Lavínia Beghini edited this page Mar 10, 2021 · 10 revisions

Functional Requirements

Here there is a list of the requirements that the system must satisfy.

FR01: The system must have access control

The system must control the access for two level of users:

  • Owner
  • Staff

Owner

The Owner is the administrator user, and have access to the whole system, as described in the table:

View Create Update Delete
Room Type ✔️ ✔️ ✔️
Room ✔️ ✔️ ✔️
User (Staff or Owner) ✔️ ✔️ ✔️ ✔️
Guest ✔️ ✔️ ✔️
Booking ✔️ ✔️ ✔️
Payment ✔️ ✔️ ✔️ ✔️
Check-in ✔️ ✔️ ✔️ ✔️
Check-out ✔️ ✔️ ✔️ ✔️

It can also Generate Reports

Staff

The Staff is the basic user, and have limited access to the system, as described in the table:

View Create Update Delete
Room Type ✔️
Room ✔️
User (Staff or Owner)
Guest ✔️ ✔️ ✔️
Booking ✔️ ✔️ ✔️
Payment ✔️ ✔️
Check-in ✔️ ✔️
Check-out ✔️ ✔️

FR02. The system must control the access depending of the user role

When the user types its credentials in the login page, the system must identify the role of the user and redirect its correct dashboard page.

Basic requirements

FR03. The system allows the Owner to register Staff

The owner inputs the following attributes of the user:

  • Name
  • Access Level (Owner, Staff)
  • Login
  • Password

FR04. The system must allow the Owner to register the Room Types of the hotel

The owner inputs the following attributes of the Room Type:

  • Name
  • Description
  • Daily price

FR05. The system must allow the Owner to register the Rooms of the hotel

The owner inputs the following attributes of the Room:

  • Room Type
  • Number

FR06. The system must allow users to register Guests

The staff or owner inputs the following attributes of the Guest:

  • Name
  • Document
  • Birth Date
  • E-mail
  • Phone number

FR07. The system must allow users to book Guests

The staff or owner inputs the following attributes of the Booking:

  • Room
  • Room Type
  • Guest
  • Arrival date
  • Departure date

The system must automatically determine the following attributes:

  • Total
  • Responsible staff

FR08. The system must keep record of the payment

The staff or owner inputs the following attributes of the Payment:

  • Value
  • Method (Cash, Card)

The system must automatically determine the following attributes:

  • Date and time of the payment

FR09. The system must keep record of Guests check-ins

The staff or owner confirms the Check-in for the booking when the Guest arrives.
The system must automatically determine the following attributes:

  • Date and time of the check-in

FR10. The system must keep record of Guests check-outs

The staff or owner confirms the Check-out of the booking when the Guest departs.
The system must automatically determine the following attributes:

  • Date and time of the check-out

FR11. The system must allow users to edit Guest

If a Guest request an update in his account, both Staff and Owner must be able to provide the changes.

FR12. The system must allow users to edit Booking

If it happens to be an update in the Booking, such as an increase in the number of days of the reservation, both Staff and Owner must be able to provide the changes.

Specific Requirements

FR13. The system must provide reports to Owner

In order to help the Owner organize the hotel, the system provides strategic reports.

Filtered reports

These reports can be given options to be generated in a specific range

  • Payment Report
    Can be given a date range.
  • Rooms Report
    Can be given a specific Room Type.
  • Staff Report
    Can be given an access level type.
  • Room Types Report
    Can be given a maximum and minimum daily price.
  • Arrivals and Departures Report
    Can be given a date range.

For all these reports, if the options are not selected and left empty, the system generates the full reports.

Full reports

These reports does not have options

  • Bookings Report
  • Guests Report

Constraints

FR12. The system must prevent a Guest to check-out without paying

The Guest can pay for the reservation in portions, whenever he wants. For example, he can pay:

  • At the moment of the booking
  • When it arrives and realizes the check-in
  • Anytime during the reservation
  • When he departs

However, the system must prevent the Guest to leave without paying for the entire price of the reservation.

Non-Functional Requirements

These requirements do not affect the main functionalities of the system.

NFR01. The system must allow Owner to edit and delete Staff

The system must allow the user Owner to update any attribute of users, except it's own access level.

NFR02. The system must allow Owner to edit and delete Payment

If an user Staff make a mistake in the payment input, it must contact the Owner to request a correction.

NFR03. The system must allow the Owner to delete Check-in or Check-out

If an user Staff make a mistake in the check-in or check-out input, it must contact the Owner to request a correction.

NFR04. The system must automatically logout inactive users

The system must logout the user if it does not detect any activity in 30 minutes to guarantee security.

Data inputs constraints

NFR05. Booking initial dates must not be before today's date

The system must prevent users to type booking's arrival dates to days before current day

NFR06. Booking room must be available for the entire range date

When selected a room in the booking, the system must guarantee that the room does not have a reservation or is not occupied for the selected arrival and departure given dates

Clone this wiki locally