Vous êtes sur la page 1sur 25

Design Document

Team:
Project Title:
Author:

3
Hotel Reservation System
Mark Dunne

Version Number: Design Document 1.2


Change History

Summary
We are building software for hotel reservation system. There will be two front-end users for this
application.

User can reserve/unreserve rooms check in and check out all guests.
Admin can do all of the Users functionality plus some necessary extras only allowed
for Admin users. Such as pricing rooms, adding/removing Rooms/Seasonal
Prices/Users and editing Room Types.

There will be some validation done in the system. Such as Arrival date can't be later than the
departure date, Credit Card number should be 16 and only digits. When some customer checks in,
then the available number of rooms should be reduced and when some one check out, and that time
the number of room available should be added. Prices will be higher for some special days such as
New Year Eve/Day and Christmas Day, St. Patrick's Day while normal weekdays are cheaper
comparatively. This is achieved by a Seasonal Pricing system, special dates are entered and these
dates will have a price % increase.

Assumptions & Dependencies


I will assume that the system this software will be run on is Windows based, at least Windows
2000/XP. It should have a Tomcat Server, latest version, installed and ready for use. Microsoft
Access or a MySQL Server, latest versions, installed and ready for use. These are required for the
Database, either one will work as the data source will connect with either. I will assume the end
users are able bodied, experienced computer users, trained in using Microsoft Office Applications,
Tomcat Servers and MySQL Servers if needed. The interface is designed like a web page so Ill
assume the user has used a similar interface before and will not need basic help. Ill also assume
the user will only need help on how the main functionality of the system, and Ill design a manual
to the main functions.

To allow multiple computers to access the database from different locations, two approaches can
be used.
1. Use the MySQL server and grant access and privileges to all IP addresses that need it.
2. Use a Microsoft Access database file, share it over the network that the users of the system
are on, this would then have to be password protected to prevent unwanted users.
Both these solutions require the Tomcat Server to be setup on all computers. A start-up file which
starts the server and opens up a internet explorer window on the login page will be on each system
desktop. Also one computer system would be required to host the MySQL Server. This would need
to be on at all times.

Development Methods
We will use a wheel-like based development approach to the designing and implementation of the
project. It represents a Circle-like approach, meaning the process can always be started again, or
stepping back into the previous development stage is not a big deal. Each requirement/function
within the project/application will spawn its own wheel.

Development Methodology

Detailed System Design


1. Use Case
A use case is a set of scenarios thats describing an interaction between user and a system.
The two main components of the diagram are an actor and Use Case the use case diagram
shows relationship between actors and use cases.

Reservation
Select Single
Select Room Type

User Login
Front End User
Check Room Avail

Select Apartment

Cancellation

Select Twin
Checkin

Select Double

Checkout

Alter Room Type


Room Desc
BackEnd User

Add Users
Room Price

Delete User

2. State Transition Diagram


This diagram is also called an activity diagram it shows the flow of activities through
the system. These diagrams are read from top to bottom and have branches and forks
to describe conditions and parallel activities.

UserLogin
( User can search for rooms )

Search

( Search for rooms )


User can check available rooms

Rooms
Available

( Display Number of rooms available )

RoomAvaila
bility

( Reserve a room )
( Rooms Available +1 )

( Room Available - 1 )

Reservation

Checkin

( Rooms Available+1 )

CheckOut

Cancellatio
n

( House full )

3. Interaction Sequence Diagram


Sequence diagrams demonstrate the behavior of objects in a use case by describing
the objects and the messages they pass. The diagrams are read left to right and
descending.

Front End User

Front End UI :
Front End User
login( )

Control : Back
End User

: Room
Available

: Reservation

: Check In

validateUser( )
Login successful()
search( )

Rooms Available
Make Reservation
Take Customer Details

Cancel Reservation

Update Rooms Availability

: Cancellation

: Check Out

4. The ER Diagram
The ER diagram represents the relationships between the tables/entities of the
database.

5. GUI Prototype
This is a step by step design walkthrough of the end application product, using
design templates which will display all the relevant information necessary for the
system to operate as required.
Step 1: Login Page
Users login from this page

Step 2: Home Page


This is an introduction to the program.

Step 3: Reservations
This page allows the user to make reservations for guests.

Step 4: Reservations Screen 2


This page allows the user to add new guests to the system or select guests from the
existing database of guests.

Step 4.1: Reservations Screen 2 Add New Guest Popup Screen


This popup screen allows the user to enter the details of a new guest and add them
to the database if the user has pressed the Add button on Reservations Screen 2. Otherwise the user
selected the guest from the database and will proceed direct to Step 4.2.

Step 4.2: Reservations Screen 2 Reservation Confirmation Popup Screen


This screen displays the reservations details back to the user, so the can confirm
that they are correct, if incorrect the user hits the Cancel button and the reservation is scrapped. If
they hit the Proceed button the reservation is committed to the database.

Step 5: Search Reservations Screen


This page allows the user to search for reservations and display their details to the
screen. The user selects the guests name and/or the date of the reservation and then presses the
Search button. The Guest dropdown menu only displays guests names who have a current open
reservation.

Step 5.1: Search Reservations Screen Search Result Popup Screen


This popup screen displays the details of the searched for reservation, from this
screen the reservation can be deleted. If the Delete button is pressed the reservation is removed
from the system and the reserved rooms are free up for the date they were previously reserved for.
Reservations can only be removed if they are prior to the Check-In date.

Step 5.2: Search Reservations Screen Delete Confirmation Popup Screen


This screen allows the user to confirm that they wish to delete the selected
reservation, if they press Proceed the reservation is marked Cancelled in the database. This means
it will no longer be searchable, but will remain in the system. The reserved room will then be freed
for the reservation dates been cancelled.

Step 6: Check-In Screen


This is where the user selects from a list of guests names that are checking in on
that day. The user then presses the Check-In button.

Step 6.1: Check-In Screen Confirmation Popup Screen


This screen displays the guests name to be checked-in, if it is not correct the user
can cancel the check-in. If correct the user then presses the proceed button. This is when the
Check-In Boolean on the Reservation is ticked yes, this means the guest will no longer be available
to check-in.

Step 7: Check-Out Screen


Ike the Check-In page, this page displays a list of users to be checked-out but unlike
the Check-In page, all checked-in guests can check-out at anytime.

Step 7.1: Check-Out Screen Confirmation Popup Screen


This screen displays the guests name to be checked-out, if it is not correct the user
can cancel the check-out. If correct the user then presses the proceed button. This is when the
Check-Out Boolean on the Reservation is ticked yes, this means the guest will no longer be
checked-in and the room will become available again.

Step 8: Check-Out Screen Confirmation Popup Screen


On this page the user is able to Add/Delete Users, Edit Room Types, Add/Delete
Rooms and Add/Delete Seasonal Prices. Only users with Admin rights can access this page and use
its functions.

Step 8.1: Check-Out Screen Add User Popup Screen


The Admin user inputs all the new users details into the fields and gives them a
unique username. They can also give them Admin rights here as well. When the form is complete
the user hits the Proceed button and the new user is entered into the database. There are no
confirmation messages displayed to the Admin user, the Admin user will not need them and any
mistakes are easily altered from the Administration page. An Error message will be displayed to
the User if the User ID is not unique.

Step 8.2: Check-Out Screen Delete User Popup Screen


The Admin user selects a user to delete from the drop down list on the
Administration page. Once they presses the Delete button, a Delete User Popup screen is displayed
to the Admin User with the soon to be deleted User on it. The Admin User then hits the proceed
button if the name is correct, otherwise the Admin User hits cancel and the User is not deleted
from the database.

Step 8.3: Check-Out Screen Edit Room Type Popup Screen


The Admin user selects a Room Type to edit from the drop down list on the
Administration page. Then a popup screen is displayed to the Admin User, where they can edit all
the Room Type info, they can either hit Save to save all the changes to the database or they can hit
Cancel to cancel all the changes.

Step 8.4: Check-Out Screen Add Room Popup Screen


The Admin user can add a new room to the hotel, incase any new rooms are built or
existing rooms have become available again, on completion of decoration work, etc. User hits the
Proceed button to save the room to the database or they can discard the changes by hitting the
Cancel button.

Step 8.5: Check-Out Screen Delete Room Popup Screen


The Admin user can delete a room to the hotel, incase any rooms become
uninhabitable due to refurbishment, etc. Admin user enters the room number, Hits Proceed button
remove the room or hits Cancel to cancel the process.

Step 8.6: Check-Out Screen Add Seasonal Price Popup Screen


The Admin user can add a new Seasonal Price to the database using this popup
screen. Hit Proceed button save the Seasonal Price to the database or hits Cancel to cancel the
process.

Step 8.7: Check-Out Screen Delete Seasonal Price Popup Screen


The Admin user can delete any Seasonal Price by selecting it from the drop down
menu. Only Seasonal Price that are greater than current date will be displayed in the dropdown
menu. Admin user selects date, Hits Proceed button remove the Seasonal Price or hits Cancel to
cancel the process.

Step 9: Sign-Out Screen


The user hits the Sign-Out button to log out of system. User is returned to the Login-In
screen.

Vous aimerez peut-être aussi