Guru Ghasidas University: Koni, Bilaspur, Chhattisgarh
Guru Ghasidas University: Koni, Bilaspur, Chhattisgarh
Guru Ghasidas University: Koni, Bilaspur, Chhattisgarh
DEPARTMENT OF CSIT
AN REPORT
ON
MINOR PROJECT
“HOTEL MANEGMENT SYSTEM”
20606005
INDEX
INTRODUCTION
REQUIREMENT ANALYSIS
EXISTING SYSTEM
FUNCTIONAL ANALYSIS
DESIGN CONCEPT
REPORT MODULE
SOFTWARE REQUIREMENT
SPECIFICATION
2
DATA FLOW DIAGRAM
IMPLEMENTATION
TESTING ANALYSIS
SDLC
OUTPUT
SCOPE OF IMPROVEMENT
ADVANTAGES
DISADVANTAGES
CONCLUSION
BIBLIOGRAPHY
3
INTRODUCTION:-
The aim of this software is to develop a systematic analysis of the
procedure involved in the Hotel Management System. This should be
used in an effective way so that various advantages are obtained from
the software. Software means establishment of sound and in-depth
development of a task using high-level language that result in well-
equipped, economical software, which is reliable. The introduction may
be divide into various steps based on the developer and also depending
upon the operation to be performed using the particular software. THE
“HOTEL MANAGENENT SYSTEM” undertakes s a project I based on
relevant technologies.
REQUIREMENT ANALYSIS:-
4
Addition of the record of the customer who comes into the hotel,
deletion of the record when customer leaves the hotel, printing and
calculation of the bill, record of facilities available in the hotel, allotment
of the room etc. In this project we have also analyzed that the product or
software should not be very costly but its quality and interface must be
attractive. If any wrong operation is being performed then the software
must invoke the operator accordingly.
EXISTING SYSTEM:-
Hotel Management involves maintaining various operations of the hotel
like Booking or reservation of rooms, cancellation of the rooms, cash
billing etc. The existing system is a manual one and there is lot of issues
like erroneous data, slow process, lack of security etc. Finding out the
final payment amount completely relies on the hotel manager and if he is
absent, it take a long time to find out the details during check out is
prone to errors.
5
Not easy to prepare the daily reports.
Lack of accuracy and error prone.
Overall efficiency is less.
Lot of paperwork.
Non-secure.
No perfect maintenance of report.
No method to trace details.
Human errors.
The manual system is too slow.
Searching is more time consuming.
FUNCTIONAL ANALYSIS:-
INPUT – Collecting the information of the person who is come to
room check in.
Secure data
Faster process
Error Free
Batter management
Save a lot of manpower
Can easily make the daily reports
Elimination of Paper Work.
6
High reliability and security
Fast and economical
DESIGN CONCEPT:-
The algorithm is developed as flow chart and the data flow diagrams,
to describe the step-wise procedure of the application. The basic
requirement, which are got from the customer, should all be covered
in this algorithm developed. Most components describe in the system
architecture section will require a more detailed discussion. Other
lower-level components may need to be described as well, the kind of
component, such as a subsystem like delete, insert, module, like
student detail, class like library, package, function, file etc. The
specific purpose and semantic meaning of the component describe
this. This may need to refer back to the requirement specification.
REPORT MODULE:-
1. Check In/ Payment Receipt
2. Show Guest List
3. Check Out
4. Exit
Module Description-
7
2. Show Guest List-
In this Module, we are to see the name, room number of all the
guest rooms we are staying in and can contact with them this
module shows us all guest list.
3. Check Out-
This module, we do this to check out the customer (going out of
the room) in it, the room number has to be entered, so that we
check out the customer.
4. Exit-
This module is used to exit from hotel management system.
The Python interpreter and the extensive standard library are freely
available in source or binary form for all major platforms from the
Python Web site, https://www.python.org/, and may be freely
distributed. The same site also contains distributions of and pointers to
many free third party Python modules, programs and tools, and
additional documentation.
8
The Python interpreter is easily extended with new functions and data
types implemented in C or C++ (or other languages callable from C).
Python is also suitable as an extension language for customizable
applications.
This tutorial introduces the reader informally to the basic concepts and
features of the Python language and system. It helps to have a Python
interpreter handy for hands-on experience, but all examples are self-
contained, so the tutorial can be read off-line as well.
Tkinter Programming-
Tkinter is the standard GUI library for Python. Python when combined
with Tkinter provides a fast and easy way to create GUI applications.
Tkinter provides a powerful object-oriented interface to the Tk GUI
toolkit.
Creating a GUI application using Tkinter is an easy task. All you need
to do is perform the following steps −
Import the Tkinter module.
Create the GUI application main window.
Add one or more of the above-mentioned widgets to the GUI
application.
Enter the main event loop to take action against each event
triggered by the user.
9
SOFTWARE/ HARDWARE REQUIRMENT:-
Hardware Requirement -
Software Requirement -
10
Hardware Used -
Software Used -
The data flow diagram (DFD) is one of the most important tools used by
system analysts. Data flow diagrams are made up of a number symbols,
which represent system components. Most data flow modeling methods
use four kinds of symbols. These symbols are used to represent four
kinds of system components such as Processes, data stores, data flows
and external entities.
Circles in DFD represent processes. Data Flow is represented by a
thin line in the DFD and each data store has a unique name and rectangle
represents external entities. Unlike detailed flow chart, Data Flow
Diagrams do not supply detailed description of the modules but
graphically describes a system’s data and how the data interact with the
system.
11
An arrow identifies the data flow in motion. It is a pipeline through
which information is flown like the rectangle in the flowchart. A circle
stands for process that converts data into information. An open-ended
box represents a data store, data at rest or a temporary repository of data.
A square defines a source or destination of system data.
Hotel Management
User Data entry System
Receipt
Commands
Alert Message
12
Data Processing
Receipt
Check in
Receipt
Show Guest List
User
Check Out
Exit
13
Name
Mobile
no. Validate
User data
No. of
Days
Invalid data
Type of
Room
Alert
Payment
Name
Data
Address
Mobile
User data no. Validate All valid14Data
No. of
Days
Type of
Room
Payment
Payment receipt
Receipt
DFD for Check-out –
Alert
ENTITY RELATIONSHIP DIAGRAM:-
15
Items in the system and the relationship between them. It aims to create
conceptual scheme for the Data from the user’s perspective. The model
thus created is independent of any database model. The ER models are
frequently represented as ER diagram. Here we present the ER diagram
of the above mentioned project.
An Entity Relationship (ER) Diagram is a type of flowchart that
illustrates how “entities” such as people, objects or concepts relate to
each other within a system. ER Diagrams are most often used to design
or debug relational databases in the fields of software engineering,
business information systems, education and research.
DIAGRAM:-
ADDRESS
ADDRESS
NAME NAME MOBILE NO.
MOBILE NO.
NO. OF DAYS
16
CHECK OUT SHOW GUEST LIST
TESTING ANALYSIS:-
Unit testing-
17
Unit testing is a software testing method by which individual units of
source code are put under various tests to determine whether they are fit
for use. It determines and ascertains the quality of your code.
Generally, when the development process is complete, the developer
codes criteria, or the results are known to be potentially practical and
useful, into the test script to verify a particular unit’s correctness. During
test case execution, various framework log tests that fail any criterion
and report them in a summary.
The developers are expected to write automated test scripts, which
ensure that each and every section or a unit meets its design and behaves
as expected.
Though write manual tests for your code is definitely a tedious and time-
consuming task, Python’s built-in unit testing framework has made life a
lot easier.
The unite test framework in Python is called unit test, which comes
packaged with Python.
Unit testing makes your code future proof since you anticipate the cases
where your code could potentially fail or produce a bug. Though you
cannot predict all of the cases, you still address most of them.
A unit could be bucketed into various categories:
An entire module,
An individual function,
A complete interface like a class or a method.
The best ways to write unit tests for your code is to first start with a
smallest testable unit code could possibly have, then move on to other
units and see how that smallest unit interacts with other units, this
18
way you could build up a comprehensive unit test for your
applications.
Python’s unit testing framework was inspired by java’s Junit and has
similar features as major unit testing framework in other languages.
Python’s unit testing framework various features like.
Test automation
Sharing of setup and shutdown code for tests
Aggregating tests into collections
Independence of the tests from the reporting framework
SDLC:-
PLANNIG
MAINTENANCE REQUIREMENT
SDLC
19
TESTING DESIGN
1. PLANNIG- IMPLEMENTATION
2. REQUIREMENT-
Once the requirement analysis is done the next step is to clearly define
and document the product requirements and get them approved from
the customer or the market analysts. This is done through an SRS
(Software Requirement Specification) document which consists of all
the product requirements to be designed and developed during the
project life cycle.
20
3. DESIGN-
SRS is the reference for product architects to come out with the best
architecture for the product to be developed. Based on the
requirements specified in SRS, usually more than one design
approach for the product architecture is proposed and documented in a
DDS - Design Document Specification.
This DDS is reviewed by all the important stakeholders and based on
various parameters as risk assessment, product robustness, design
modularity, budget and time constraints, the best design approach is
selected for the product.
A design approach clearly defines all the architectural modules of the
product along with its communication and data flow representation
with the external and third party modules (if any). The internal design
of all the modules of the proposed architecture should be clearly
defined with the minutest of the details in DDS.
4. IMPLEMENTATION-
In this stage of SDLC the actual development starts and the product is
built. The programming code is generated as per DDS during this
stage. If the design is performed in a detailed and organized manner,
code generation can be accomplished without much hassle.
Developers must follow the coding guidelines defined by their
organization and programming tools like compilers, interpreters,
debuggers, etc. are used to generate the code. Different high level
programming languages such as C, C++, Pascal, Java, Python and
PHP are used for coding. The programming language is chosen with
respect to the type of software being developed.
5. TESTING-
21
This stage is usually a subset of all the stages as in the modern SDLC
models, the testing activities are mostly involved in all the stages of
SDLC. However, this stage refers to the testing only stage of the
product where product defects are reported, tracked, fixed and
retested, until the product reaches the quality standards defined in the
SRS.
6. MAINTENANCE-
OUTPUT:-
1. Apna Adda The Hotel
2. Check in by Cash
3. Receipt by cash
4. Check in by Card
5. Receipt by Card
7. Check out
22
8. Exit
2. Check in by Cash-
23
3. Receipt by Cash-
4. Check in by Card-
24
5. Receipt by Card-
25
7. Check out-
26
SCOPE OF FUTURE APPLICATION:-
This project can be used in the hotel after adding some more useful
modules in the project for which hotel are providing services. Utmost
care and back-up procedures must be established to ensure 100%
successful implementation of the computerized hotel system. In case of
system failure, the organization should be in a position to process the
transaction with another organization or if the worst comes to the worst,
it should be in a position to complete it manually.
SCOPE OF IMPROVEMENT:-
27
Now a day’s hotel are providing many other facilities, this project can
also be improved with the improvement in the Hotels. Utmost care and
back-up procedures must be established to ensure 100% successful
implementation of the computerized banking system. In case of system
failure, the organization should be in a position to process the
transaction with another organization or if the worst comes to the worst,
it should be in a position to complete it manually.
ADVANTAGE:-
I have designed the given proposed system in the Python to automate the
process of Hotels. This project is useful for the authorities which keep
track of all the users registered in particular state .The authority can add
hotel packages, room details, availability of rooms, online booking etc.
The following steps that give the detailed information of the need of
proposed system are:
28
Performance-
Efficiency-
Control:
Security-
Security is the main criteria for the proposed system. Since illegal access
may corrupt the database. So security has to be given in this project
DISADVANTAGES:-
Guest-
29
1. If there is a power failure while making a reservation, all the
information has to be given again
2. If there is a power cut while there is a check-in or check-out, the guest
need to wait for full server start up, hitch make him angry.
Hotel-
CONCLUSION:-
This project is designed to meet the requirements of Online Hotel
Management.
It has been developed in Python keeping in mind the specifications of
the system. For designing the system we have used simple data flow
diagrams. Overall the project teaches us the essential skills like: Using
system analysis and design techniques like data flow diagram in
30
designing the system. Understanding the database handling and query
processing.
Hotel management system now-a-day have the advantage of
modernization. Computer have done the work more easy. Computer is
playing an important role in management. Reports are made on daily
basis for every customer check in or check out which can easily be seen
by the management. Hotel management system has also primary purpose
is to provide facilities to customers. A software for computers makes the
things many times easy, these are made as user friendly and to keep a
check and balance in hotel management and accounts as well. So, these
things are important.
BIBLIOGRAPHY:-
WEBSITES REFERRED-
1. www.google.com
2. www.youtube.com
3. https://www.instagram.com
4. https://www.python.org/
5. https://www.academia.edu/
6. https://www.slideshare.net/
7. https://www.geeksforgeeks.org/
31