• No results found

Specific Requirement

In document Hotel Management System (Page 32-92)

Part III Software Requirements Specifications (SRS)

10. Specific Requirement

This section contains all the software requirements at a level of detail, that when combined with the system context diagram, use cases, and use case descriptions, is sufficient to enable designers to design a system to satisfy those requirements, and testers to test that the system satisfies those requirements.

3.10.1 External Interfaces

The Hotel Management System will use the standard input/output devices for a personal computer. This includes the following:

 Keyboard

 Mouse

3.10.2 User Interfaces

The User Interface Screens are described in table 1.

Table 2: Hotel Management User Interface Screens

Screen Name Description

Login Log into the system as Administration

Reservation Retrieve button, update/save reservation, cancel reservation, modify reservation, , accept payment type/credit card Hotel Payment Accept payment for room.

Customer Record Delete or update customer records Administer Rooms Add, modify and delete rooms.

Reports Select, view

3.10.3 Software Interfaces

The system shall interface with an Oracle.

3.10.4 Hardware Interfaces

The system shall run on a Microsoft Visual Basic (ASP.net).

3.10.5 Communication Interfaces

The system shall be a standalone product that does not require any communication interfaces.

3.11 Functional Requirements

Functional requirements define the fundamental actions that system must perform.

The functional requirements for the system are divided into two main categories, Reservation/Booking, and Management. For further details, refer to the use cases.

1. Reservation/Booking

1.1.The system shall record reservations.

1.2.The system shall record the customer’s first name.

1.3.The system shall record the customer’s last name.

1.4.The system shall record the mobile number.

1.5.The system shall record the room number.

1.6.The system shall display the default room rate.

1.7.The system shall record the customer’s email.

1.8.The system shall generate a unique confirmation number for each reservation.

1.9.The system shall automatically show the customers that have reservation after two days and send a reminder email to them

1.10. The system shall record the expected check-in date.

1.11. The system shall record the expected checkout date.

1.12. The system shall allow reservations to be modified without having to reenter all the customer information.

2. Management

2.1.The system shall allow for the addition of rooms.

2.2.The system shall allow for the deletion of rooms.

2.3.The system shall allow for the modification of rooms.

3.12 Nonfunctional Requirements

Functional requirements define the needs in terms of performance, logical database requirements, design constraints, standards compliance, reliability, availability, security, maintainability, and portability.

3.12.1 Performance Requirements

Performance requirements define acceptable response times for system functionality.

 The load time for user interface screens shall take no longer than two seconds.

 The log in information shall be verified within five seconds.

 Queries shall return results within five seconds.

3.12.2 Logical Database Requirements

The logical database requirements include the retention of the following data elements.

Booking/Reservation System

 Customer first name

 Customer last name

 Customer address

 Customer phone number

 Assigned room

 Default room rate

 Credit card number

 Confirmation number

 Expected check-in date

 Expected check-out date

 Payment type

3.12.3 Design Constraints

The Hotel Management System shall be a stand-alone system running in a Windows environment. The system shall be developed using Oracle and ASP.net.

3.12.4 Standards Compliance

There shall be consistency in variable names within the system. The graphical user interface shall have a consistent look and feel.

3.12.5 Reliability

Specify the factors required to establish the required reliability of the software system at time of delivery.

3.12.6 Availability

The system shall be available during normal hotel operating hours.

3.12.7 Security

Customer Service Representative will have access to the Reservation/Booking. Managers will be able to log in to the Hotel Management System and will have access to the Management subsystem.

3.12.8 Maintainability

The Hotel Management System is being developed in ASP.net.Visual studio is one of the products that are used for building the system. This product is chose because it provides the user developers a compelling development environment for Windows and. NET platforms. This product helps in building Windows application, console application, Windows service, Windows mobile applications, ASP.NET application and ASP.NET web services with C++, C#, VB or J#. Also, you can add additional tools that help in building interface in easy way. For the end user, the ASP and VB is used in developing Hotel Management System. Also, it helps in creating Crystal report and connection with the database by using ODB. The other product that has been chosen is Oracle Database 10g

Express Edition. It has been chosen for the background of the system. As it can build the tables and quires in easy way and connected with the end user in effective way.

3.12.9 Portability

The Hotel Management System shall run in any Microsoft Windows environment.

Part IV Task Analysis

Hotel management system has two use cases. First one is the administrator and the second one is the reception side.

The administrator has the permission to use all task in the system but for the rooms setting he/she has to log into the system with successful user and password. The reception primarily concerned with siven tasks: searching available room, doing reservation to the available room, doing the process for paying or canceling the booking, doing the setting for guests and credit card, finding out information about specific booking and sending a reminder to the guests before check-in day.

4.1 System Rules

1. The reception can use the system without authentication. But his/her use is limited.

2. The reception cannot insert the Room setting.

3. The admin needs to log in to use the Room setting.

4. The check in data has to be bigger or equal to the current date.

5. The check in data has to be smaller than the check out date.

6. The required text box has to be filled.

7. The Booking ID, Booking Detail ID and Payment ID will be inserted automatically by using automatically increment.

4.2 Subtasks

searching is almost a small system that is used as a sub system in the hotel management system to find available room. In order to do this, the reception must know the check in day, check out day, may choose the type of view or the type of room. Then the reception submits this information to the system and the system will find out the available room according to this information. And the system will generate a list of available room that meet these information. After that the reception can choose the

wanted room to do a new reservation or to do update for old reservation. For the update process the reception will need the booking number.

To do a reservation to the available rooms, the reception needs the names of the required rooms. Fill the information about the guest and credit card’s information. Then the reception can submit the required detail for reservation or go back to the home page without doing the reservation. After the reservation is done, the system will show the reservation's detail.

The process for paying can be done after the reservation immediately or before doing the checkout day.

In order to do the paying, the reception needs to know which booking he/she going to do the paying for. So this process needs the booking number, payment information; such as, mode of payment, if it is cash or by credit card the payment process needs the date of payment and the total cost.

As some information of the guest or credit card exposed to be changed, the reception needs the guest ID or the Credit Card ID and he/she needs to the new information to do the update according the change.

Some times the hotel needs to know information about specific booking, for that the system provides the user with ability to find this required information. In this case, the reception needs the booking ID.

For sending a reminder to the guest, the system has a button called reminder. When the reception clicks this button, the system will check all the check in days and it will send a reminder to guests whose check in day after two or one days.

For doing the setting for hotel rooms and it is category, user needs to be admin and needs to log into the system before doing the setting for the rooms. In this setting the user can delete, update and add room. For deleting the user needs the room’s ID. For updating the user needs the room’s ID and inserting the new detail. For adding the, if the user want to add new room needs to know the ID for the category and to insert new ID for the new room. If the user wants to add new category, needs to insert new ID, room’s floor, room’s category, room’s price.

4.3Hierarchical Task Decomposition

Figure 8: Search for available room

Figure 9: Reservation

Figure 10: Paying

Figure 11: Setting

Part V Interface

5.1 Search

this task is needed to make finding out the available rooms easier. During the searching the system needs to ensure that there is no conflict in the chosen room. The system has to ensure that the wanted room in the specific time is not assigned to other guest in that time. Because the guest may demand specific room’s features; such as, the type of the room or the view of the room, the system provide the user with the ability of choosing the type of view and the type of the room. After the criteria of the search are determined, the system connects with the database to find out the rooms that concerned with these required features.

Figure 12: Search and Update Form

If the user insert a date that is past or the check out date is earlier than the check in date the system will pop up a message box to notify the user about the mistake that has been

done.

Figure 13: Checking inserted date

Figure 14: Checking date

If the user clicks Detail, Modify or Pay button without inserting the Booking ID, he/ she will receive a message that said you have to enter a Booking ID.

Figure 15: Notifying The User That the BookinNo is Empty

If the search is done successfully, the system generates a list of available rooms in grid view with check box. This check box enables the user to choose the room from the grid view. After checking the box, the user can do a new reservation or can do an update to old reservation. The system has a text box for inserting a booking number which is needed to find the old reservation from the database and does the change.

Figure 16: Search Result

As the system aims to make the process in hotel management easy to the end user, the two text boxes which are used to insert the check in date and check out date are provided with calendar extender. So, whenever the user clicks on these two text boxes, a calendar will show up. The user can choose date from it and it will be written automatically in the text box.

Figure 17: Calendar

5. 2 Booking

After the submission of booking is clicked, the system willforward to booking page with keeping the ID of the rooms and category that has been chosen by using the session. Then the booking page will load the session in the text boxes. In addition to that, the guest detail will be needed to fill other text boxes. Some of this information is mandatory; such as, first name, last name, ID and email. The first name and last name are mandatory to help the reception to ensure who reserve the specific room. ID helps in making the delete or the update for the guest detail.

On the other hand, the email is important for sending the remainder to the user.

Figure 18: Reservation Form

Also, this page has a required for inserting the credit card information which has three requirements. One for credit card‘s ID, the second one for holder’s name and the third one for expired date. As the credit card’s ID is important in doing cancel or updating to the credit card this field is mandatory.

When the user fills all mandatory information, has two choices, one is to click the save button which will transfer the page to booking’s details page. And the second one is to click the exit button which will transfer the current page to the home page which is the search page.

Figure 19: Credit Card Form

For preventing the user to do a reservation when there is any field of the mandatory is empty, when the save button is clicked the system will check if any of the mandatory field is empty or not. If one of them field is empty, the system will not do the booking and it will pop up a message box that notifies the user about the empty field.

Figure 20: Missing Field Message

Because the user could insert Invalid e mail address, the system is provided with the checker that going to check if the email address is written correct or not. The checker will check if the email address has a @ character and if it has a dot (.) character. If the written email is unveiled, a message will be written that tells the user that the email is Invalid.

Figure 21: Invalid Email

5.3 Paying

after the reservation are done, the user can transfer to the home page or can transfer to the paying page. In the paying page, session is used to provide the page with grid view of the guest detail who want to do payment and his/her reservation’s detail. Also, this page has a text box for booking detail, which will be field automatically by the session value, also, it has a text boxes for total cost, payment date and credit card. In addition to that, it has drop down list for payment mode. The total cost calculates and field automatically.

Figure 22:

Payment Form

Figure 23: Booking Detail in the Payment page

5.4 Guest Detail

the reception can get all information about specific guest. He/ she can know the guest's first name, last name, telephone, email, address, his/her reservation room and payment statue by inserting a booking number and clicking on detail button. Also, the web site has a text boxes for enabling the reception to do update or delete the guest’s detail.

Figure 24:

Guest Setting Form

Figure 25: Finding information about specific guest

Figure 26: Finding all Guests' information by clicking the all button

When the delete button is clicked message will show up to ask the user if he/she is sure that he/she want to delete, if he/she clicks Yes the delete will be done. But if he/she clicks No, nothing will be happen.

Figure 27: Confirmation Message

5.5 Log in

the administrator who is responsible for doing rooms setting. but before doing the room setting the administrator has to log in. the system has a authentication for the administrator when he/she log in will be in the home page but if he/she try to use the room setting page without log in the system will transfer him/her to the log in page.

Figure 28: Login Form

If the administrator inserts wrong username or password the system will notify the user by the mistake.

Figure 29: Log in Error Message

If the login is done successfully, the web page will transfer to the home page or to application that wanted to use before login. If the page transfer to the home page, the home page will has the name of the username and the log out.

Figure 30: Login

Report

The web site has two different types for financial report. One views the financial report for one day. And the other is viewing financial report for specific period of time.

Reminder

The web site will send an email to the guests before there check in date by two days.

Part VI Challenges

The real difficulty was that we do not know how to start with a language that we do not know anything about. We did not know if we need to write the codes or to drags things, what are the properties and features of this language.

What functions and keywords that can help in this project; such as, in printing a table of the wanted date, taking the value from the text box and uses it in functions, taking a single value from the data base(end back) and uses it in the interface (end front).

The first challenge that we faced is how to deal with ASP.net and what we shall use with a Visual Basic or a C#.

we did a search for finding a solution to this, and most of the website shows how to write a ASP codes and Visual Basic or C# codes without saying where we have to write and because Dr.Ammar talked with us in data base theory about web developer with Visual basic, we try to search this software and we find that we can use a Visual Studio that has a web site developer with ASP. But until that time we do not know where we can use the VB codes or the C# code and with keeping search and trying we find where to put the VB or C# codes.

After that we keep searching about VB and C# to decide which support language we are going to choose. We have tried some codes with VB and C# and the first one that worked with us which is the VB we have depended it.

The most important step is how to connect the web with the data base (Oracle). We found the following way:

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\ MymdbFile.mdb;User ID=Admin;JetOLEDB:Database Password=You'rePassword;

Most of the web site used this which is for Microsoft Access while our project is Oracle data base. For that, we search for a compatible provider with Oracle. We have tried this providers OraOLEDB.Oracle and SQLOLEDB but the solution was OraOLEDB.Oracle.1 but even with this we got an error and we found the solution that we have to add a reference in config page. YouTube showed as how to add this reference which is a

System.Data.OracleClinet.

Most big challenge is the date. We need the date for inserting check in date and check out date to find the available room. And the problem was when we insert the date by using the calendar extender, the date is inserted as

mm/dd/yyyy, while the Oracle accepts it as yyyy/mm/dd. the first solution came to our mind to do conversion to the text box’s value from string to date. We have used this following code

mm/dd/yyyy, while the Oracle accepts it as yyyy/mm/dd. the first solution came to our mind to do conversion to the text box’s value from string to date. We have used this following code

In document Hotel Management System (Page 32-92)

Related documents