1
PAGE 3
CHAPTER 1INTRODUCTION1.1 Problem Statement:The current system is
a manual system or a semi-automated system. Manual system involves
paper work in the form of maintaining various files and manuals.
Maintenance of critical information in the files and manuals is a
risk involved and a tedious process. The existing automated system
is a stand alone system or a LAN based system and booking is in the
form of e-mail.
The Main Objective of this System is to design a system to
accommodate the needs of guests in the hotel. This application
helps a customer to know about the hotel information and can
reserve rooms throughout the globe irrespective of the location.
This is a computerized system to make room reservations, keep room
bookings and availability details up-to-date.
1.2 Overview:Cyber Hotelier is a web-based system focusing on
automating the (manual way of recording the Hotel details) hotel
management system and providing room reservations through online.
To understand the current manual process, existing files and
manuals were referred. A literature survey is carried out in the
initial phase of the project. The basic process is divided into two
steps
1. Understanding the Existing system.
2. Features of proposed system.
1.2.1 Understanding the Existing system
The present system is a manual system or a semi-automated
system. Manual system involves paper work in the form of
maintaining various files and manuals. Maintaining critical
information in the files and manuals is full of risk and a tedious
process.
The existing semi-automated system is a stand alone system or a
LAN based system and booking is in the form of email. The hotel
booking email contains the requested booking dates and the number
of rooms required, along with the customer contact details.
At the day break he has to update the database.
The disadvantages of the manual process are
1. Time consuming and a tedious process2. No instantaneous
updates of the room status.
3. No instantaneous updates on the user details and user
statistics.
4. Involved a lot of paperwork that was prone to risk of loosing
it easily.
5. Communication was not clear, slow and led to
misunderstanding.
6. Files and manuals lacked authentication and
authorization.
7. Information recording in manuals was not accurate because
there were no validations.
The disadvantages of the semi-automated system are:
1. Reservation through email.
2. Room amendment is not a easy task
1.2.2 Features of proposed system
The proposed system is to design a system to accommodate the
needs of guests in the hotel and it helps a customer to know about
the hotel information and can reserve rooms throughout the globe
irrespective of the location. This system is an application to
manage the hotel operations to know all the data and process the
modules.This System gives a brief description about the hotel i.e.,
about the total number of rooms in the hotel, location of the
hotel, route map of the city showing the route to the hoteletc and
also gives a brief description about the services offered by the
hotel such as the cab services, food services, laundry...etc.
Registered user can reserve a room through online and confirm
his reservation by paying the advance amount through credit card
and receiving a reference number. User can either cancel the
reservation or can modify through amendment process. Receptionist
can effectively do all his activities through this system i.e,
reserving a room for walk-in customers and do all the check-in,
check-out, billing and payment activities. Receptionist can have
all the services provided to guest, restaurant billing...etc
everything in the system. House Keeping Executive can schedule all
the house keeping activities and to look after the inventory
management. Manager can know the monthly reports regarding the
hotel and its management, its maintenance, expenses and room
occupancy detailsAdvantages of the proposed system:
1. Reduces the complexity present in the manual system and saves
time.
2. Users can access the required data easily.
3. It maintains accurate information.
4. Provides instantaneous updated information to all users.
5. Communication is fast and clear and avoids
misunderstandings.6. It is a computerized system to make room
reservations and keep room bookings and availability of details
up-to-date.
7. Very economical and user friendly.
CHAPTER 2PROBLEM ANALYSIS
2.1 REQUIREMENT ANALYSIS
Feasibility study is an important phase in the software
development process. It enables the developer to have an assessment
of the product being developed. It refers to the feasibility study
of the product in terms of out comes of our product, operational
use and technical support required for implementing it.
Feasibility study should be performed on the basis of various
criteria and parameters. The various feasibility studies are:
Economic feasibility
Operational feasibility
Technical feasibility
2.1.1 Economic feasibility
Time Based:
If the administrator or the subjective person has to know about
the where about of different customers and their calls info, then
in the manual system a concentrated search has to be applied
through many registers or ledgers, which is time consuming. If
within the system some data has to be registered then all the
referential registers have ton fill sequentially which is a
redundant process. With the designed database all these overheads
are eliminated, making the actual system faster in calculating the
call amount, advance payment and current balance, which keep the
system in pace with the associated trends and technologies.
Cost Based:
Within the manual system a perennial amount of the finance are
incurred continuously upon the extra staff, maintaining the data
manually on paper for all the data-integrated jobs. The information
has put through many hands at proper time to apply the consistency
standards, which is the backbone for any company this
application.
Consistency is increased with the designed software, which
eliminates the actual investment upon the employees salaries and
purchasing the products.
2.1.2 Operational feasibility
It refers to the feasibility of the product to be operational.
Some products may work very well at design and implementation but
many fail in the real time environment. It includes the study of
additional human resource required and their technical
expertise.
2.1.3 Technical feasibility
The system is self explanatory and does not need any extra
sophisticated training. As the system has been built by
concentrating on the graphical user interface concept, the
application can also be handled very easily with a now wise
user.
The softwares that were used to develop the market are already
used the customers. The net time the customer should concentrate is
on the installation time. Thats what we are giving in the form of
manual.
2.2 USE CASE ANALYSIS
Use case:
Use case diagrams are one of the five diagrams in the UML for
modeling the dynamic aspects of the systems (activity diagrams,
sequence diagram, state chart diagram, collaboration diagram are
the four other kinds of diagrams in the UML for modeling the
dynamic aspects of systems).use case diagram are central to
modeling the behavior of the system, a sub-system, or a class. Each
one shows a set of use cases and actors and relations.
Common properties:
A use case diagram is just a special kind of diagram and shares
the same common properties, as do all other diagrams a name and
graphical contents that are projections into the model. What
distinguishes a use case diagram from all other kinds of diagram is
its particular content.
Contents:
Use case diagrams commonly contain:
Use cases
Actors
Dependency, generalization, and association relationships
Like all other diagram use case diagram may contain nodes
constraints. Use case diagram may also contain packages, which are
used to group element of your model into large chunks.
Occasionally, you will want to place instances of use case in your
diagram, as well, especially when you want to visualize a specific
executing system.
Use case:
A use case specifies the behavior of the system ort part of the
system and is a description of a set of sequence of actions that a
system performs. Graphically use case is rendered as an ellipse
with dashed lines, usually including only its name.
Actor:
An actor is a human user or external system with which a system
being modeled and interacts. It needs some information from current
system.
2.3 USE CASE DIAGRAM
Use-case diagrams graphically represent system behavior (use
cases). These diagrams present a high level view of how the system
is used as viewed from an outsiders (actors) perspective. A
use-case diagram may contain all or some of the use cases of a
system.A use-case diagram can contain:
Actors ("things" outside the system)
Use cases (system boundaries identifying what the system should
do)
Interactions or relationships between actors and use cases in
the system including the associations, dependencies, and
generalizations.
Use-case diagrams can be used during analysis to capture the
system requirements and to understand how the system should work.
During the design phase, you can use use-case diagrams to specify
the behavior of the system as implemented.
2.3.1 Identification of Actors:
Definition:
An actor is someone or something that:
Interacts with or uses the system.
Provides input to and receives information from the system.
Is external to the system and has no control over the use
cases.
Graphical Representation:
Questions to help to identify actors:
1. Who is interested in a certain requirement
2. Where is the system used within the organization?
3. Who will benefit from the use of the system?
4. Who will supply the system with information, use this
information, and remove this information?
5. Who will support and maintain the system?
6. Does the system use an external resource?
7. Does one person play several different roles?
8. Do several people play the same role?
9. Does the system interact with a legacy system?
The actors identified in the system are:
1. Administrator
2. Manager
3. Guest
4. House keeping executive
5. Receptionist
2.3.2 Identification of Use cases:
Definition: Use case is a sequence of transactions performed by
a system that yields measurable result of values for a particular
actor. The use cases are all the ways the system may be used.
Graphical Representation:
Questions to help to find use cases:
1. What are the tasks of each actor?
2. Will any actor create, store, change, remove or read
information in the system?
3. What use cases will create, store, change, remove, or read
this information?
4. Will any actor need to inform the system about sudden,
external changes?
5. Does any actor need to be informed about certain occurrences
in the system?
6. What use cases will support or maintain the system?
7. Can all functional requirements be performed by the use
cases?
Usecases Identified in this system are:
1. Registration/Login
2. Reservation
3. Cancellation/Modification
4. Services
5. Front-desk
6. Restaurant
7. Billing
8. Check report
9. House keeping
10. Inventory
2.3.3 Flow of Events:
Definition:
Flow of events should include
When and how the use case starts and ends
What interaction the use case has with the actors
What data is needed by the use case
The normal sequence of events for the use case
The description of any alternate or exceptional flows
Structure of flow events:
The flow of events for a use case is contained in a document
called the Use Case Specification. Each project should use a
standard template for the creation of the Use Case Specification.
Includes the following
1. Use case name: Brief Description
2. Flow of Events:
1. Basic flow.
2. Alternative flow.
3. Special requirements.
4. Pre conditions.
5. Post conditions.
6. Extension points.
2.3.4 Relations:
Association Relationship:
An association provides a pathway for communication. The
communication can be between use cases, actors, classes or
interfaces.
By default, the association tool on the toolbox is
unidirectional and drawn on a diagram with a single arrow at one
end of the association. The end with the arrow indicates who or
what is receiving the communication. Bidirectional communication is
used to provide the two way communication.
Graphical Depiction:
An association relationship is an orthogonal or straight solid
line with an arrow at one end:
In an ASSOCIATION Relationship, we can provide Stereotype
COMMUNICATE also as shown below
Dependency Relationship:
A dependency is a relationship between two model elements in
which a change to one model element will affect the other model
element. Use a dependency relationship to connect model elements
with the same level of meaning. Typically, on class diagrams, a
dependency relationship indicates that the operations of the client
invoke operations of the supplier.
We can provide here
1. Include Relationship.
2. Extend Relationship.
Include Relationship:
Include relationships are created between the new usecase and
any other usecase that "uses" its functionality.
An include relationship is a stereotyped relationship that
connects a base use case to an inclusion use case. An include
relationship specifies how behavior in the inclusion use case is
used by the base use case.
Extend Relationships:
An extend relationship is a stereotyped relationship that
specifies how the functionality of one use case can be inserted
into the functionality of another use case. Extend relationships
between use cases are modeled as dependencies by using the Extend
stereotype.
An extend relationship is used to show
Optional behavior
Behavior that is run only under certain conditions such as
triggering an alarm
Several different flows that may be run based on actor
selection
An extend relationship is drawn as a dependency relationship
that points from the extension to the base use case
Use case Diagram in our system:
2.4 Activity Diagrams:
An Activity diagram is a variation of a special case of a state
machine, in which the states are activities representing the
performance of operations and the transitions are triggered by the
completion of the operations. The purpose of Activity diagram is to
provide a view of flows and what is going on inside a use case or
among several classes.Activities:
An activity represents the performance of some behavior in the
workflow. Transitions: Transitions are used to show the passing of
the flow of control from activity to activity. They are typically
triggered by the completion of the behavior in the originating
activity.
Decision Points:
When modeling the workflow of a system it is often necessary to
show where the flow of control branches based on a decision point.
The transitions from a decision point contain a guard condition,
which is used to determine which path from the decision point is
taken.
Synchronization Bars:
In a workflow there are typically some activities that may be
done in parallel. A synchronization bar allows you to specify what
activities may be done concurrently. Synchronization bars are also
used to show joins in the workflow.
Swim lanes:
Swim lanes may be used to partition an activity diagram.
Initial and Final Activities:
There are special symbols that are used to show the starting and
final activities in a workflow. The starting activity is shown
using a solid filled circle and the final activities are shown
using a bull's eye.
Activity Diagrams Of This Application Are:
Overall activity diagram
Activity diagram for modification
Activity diagram for reservation
2.4.1 Overall activity diagram:
2.4.2 Activity diagram for Modification:
2.4.3 Activity diagram for Reservation:
2.5 SEQUENCE DIAGRAM
A sequence diagram is a graphical view of a scenario that shows
object interaction in a time based sequence--what happens first,
what happens next.
Sequence diagrams establish the roles of objects and help
provide essential information to determine class responsibilities
and interfaces.
A sequence diagram has two dimensions: the vertical dimension
represents time; the horizontal dimension represents different
objects. The vertical line is called the objects lifeline. The
lifeline represents the objects existence during the
interaction.
Purpose:
1. To show the timely ordered object interactions.
2. To provide readability.
3. It is easy to find out the operations that belong to the
particular class.
Object: An object has state, behavior and identity. The
structure and behavior of similar objects are defined in their
common class. Each object in a diagram indicates some instance of a
class. An object icon is not named is referred to as a class
instance. The object icon is similar to a class icon except that
the name is underlined. An objects concurrency is defined by the
concurrency of its class.
Message: A message is the communication carried between two
objects that trigger an event. A message carries information from
the source focus of control to the destination focus of control.
The synchronization of a message can be modified through the
message specification. Synchronization means a message where the
sending object pauses to wait for results.
Link: A link should exist between two objects, including class
utilities, only if there is a relationship between their
corresponding classes. The existence of a relationship between two
classes symbolizes a path of communication between instances of the
classes: one object may send the messages to another. The link is
depicted as a straight line between objects and class instances in
a collaboration diagram. If an object links to itself, use the loop
version of the icon.
2.5.1 Sequence Diagram for Billing:
2.5.2 Sequence Diagram for Central Cancellation
2.5.3 Sequence Diagram for Front Desk 2.5.4 Sequence Diagram for
Housekeeping:
2.5.5 Sequence Diagram for Inventory:
2.5.6 Sequence Diagram for Online cancellation/modification:
2.5.7 Sequence Diagram for Registration/Login:
2.5.8 Sequence Diagram for Reservation:
2.5.9 Sequence Diagram for Restaurant:
2.5.10 Sequence Diagram for Services:
2.5.11 Sequence Diagram for View reports:
2.6 COLLABORATION DIAGRAMS:
A COLLABORATION DIAGRAM is an alternate way to show a scenario.
This type of diagram shows object interactions organized around the
objects and their links to each other. A collaboration diagram
contains
Objects drawn as rectangles
Links between objects shown as lines connecting the linked
objects
Messages shown as text and an arrow that points from the client
to the supplier
There are two types of numbering schemes:
1. Flat numbered sequence
In this messages are numbered as 1, 2, 3.
2. Decimal numbered sequence
In this messages are given numbers as 1.1, 2.2, 1.3
Purpose:
1. Collaboration diagrams are very useful for drawing class
diagrams.
2. These diagrams give the interactions between the classes and
objects.
3. To find the operations of the classes.
4. Using command we can draw sequence diagram directly from the
collaboration diagrams.
Differences between Sequence and Collaboration Diagrams:
1. Sequence diagrams are time oriented where as collaboration
diagrams shows the static connections among the objects.
2. Sequence diagram is very easy to read where as collaboration
diagram is some what complex to read.
2.6.1 Collaboration Diagram for Billing:
2.6.2 Collaboration Diagram for Central cancellation:
2.6.3 Collaboration Diagram for Front desk:
2.6.4 Collaboration Diagram for House keeping:
2.6.5 Collaboration Diagram for Inventory:
2.6.6 Collaboration Diagram for Online
cancellation/Modification:
2.6.7 Collaboration Diagram for Registration/Login:
2.6.8 Collaboration Diagram for Reservation:
2.6.9 Collaboration Diagram for Restaurant:
2.6.10 Collaboration Diagram for Reservation:
2.6.11 Collaboration Diagram for Services:
2.6.12 Collaboration Diagram for View report:
2.7 Entity-relationship diagram
CHAPTER 3SYSTEM REQUIREMENT SPECIFICATION
3.1 Purpose:
The purpose of the project is to automate the entire hotel
management in an effective way and to provide an option for room
reservation through online.
3.2 Scope:
This system is used in the hotels, to manage the day to day
activities i.e., check-in, check-out, payment, billing, services
provided, restaurant management, expenses, reportsetc by using this
computerized system.
3.3 Application Features:
3.3.1 General Description
Features in this System are:4. Registration
5. Reservation
6. Cancellation
7. Front desk
8. Services
9. Restaurant
10. Billing
11. House keeping
12. Inventory
13. Reports
Registration:
For a guest to reserve a room through online, he must be a
registered user. This feature helps the guest to get registered
into the system. This feature also allows the administrator to give
roles i.e., manger, receptionist, house keeping executive and a
user.
Reservation:
For a guest to reserve a room in the hotel, he can follow 2
procedures.
1) Online reservation:
This feature enables the guest to reserve a room through
internet from anywhere in the world. When the guest wants to use
this feature, he has to select the room type, mention the check-in
and check-out details and must check for the availability. If the
room required is available during that period then he has to enter
all the personal details that are required and also has to pay
certain amount with the help of credit card. The reference number
of the reservation is noted and the reservation is completed. If
the room required is not available then he has to choose another
type of room based on his requirement.
2) Central reservation:
This feature enables the guest to book the room by coming
directly to the reception for either the advance reservation or to
check-in the hotel at that point of time. The details of the guest
are entered into the system by the receptionist. Based on the
availability the receptionist gives the room to the guest and marks
the check-in time. The guest has to pay certain amount in advance.
After the reservation the vacant rooms based on the reserved dates
are updated in the database by default.
Cancellation:
This feature enables the guest to cancel the room reservation
which is done either by the online process or by coming directly to
the reception. When the cancellation is done, certain percentage of
the advance money which is paid by the guest during the reservation
is returned to the guest. After the cancellation the vacant rooms
based on the reserved dates are updated in the database by
default
Front Desk:
When the guest comes to the hotel for stay, he has to say the
receptionist his reference number and the receptionist gives the
room and marks the check- in time. This feature enables the
receptionist to look after the check-in, check-out, payment
details, occupancy summary, guest information, expected departures
for that day, search guests, view the status of rooms and to change
the status i.e., vacant, occupied, dirty and blocked.
Services:
This feature enables the receptionist to provide the services
requested by the guest. Receptionist attends the guest call and
forwards the requests to the respective departments and enters the
details of the services provided to keep the bills up-to-date.
Restaurant:
This feature enables the receptionist to keep the KOT bills and
also the room service bills up-to-date in the system.
Billing:
After the stay period of the guest, in the check-out process he
has to pay the money due at the reception. This feature shows all
the payment details.
This feature enables the receptionist to keep the details of the
administration expenses up-to-date. This includes the staff
salaries, electricity bill, telephone bill, maintenance bill
etc.
House Keeping:
This feature enables the house keeping executive to manage the
house keeping activities i.e., scheduling the timings for house
keeping services, billing the house keeping activities.
Inventory:
This feature enables the house keeping executive to look after
the inventory management i.e., to maintain the list of articles
taken from the stores such as soaps, cloth materialsetc that are
required for maintenance of the hotel.
Reports:
This feature enables the manager to know all the reports
regarding the hotel and its management, its maintenance, expenses
and room occupancy details.
The main roles involved in this system are :
1. Manager
2. Receptionist
3. House keeping executive
4. Guest
5. Administrator
Manager:
A hotel manager is responsible for the day-to-day management of
a hotel and its staff and has commercial accountability for
planning, organizing and directing all hotel services, including
front-of-house (reception, concierge, and reservation), banqueting
and housekeeping. He plays a major role in financial management
i.e., preparing budgets and marketing strategies and achieving
targets for the business
Receptionist:
Hotel receptionist is responsible in dealing with room bookings
and cancellations and handling general requests made by guests
during their stay. His main duties are dealing with reservations
and cancellations by phone, e-mail, letter, fax or face-to-face;
checking guests into the hotel, allocating rooms and handing out
keys; checking guests out of the hotel, preparing bills and taking
payments; answering questions about facilities in the hotel and the
surrounding area dealing with complaints or problems.
House keeping executive:A house-keeping executive is responsible
in scheduling the house keeping activities i.e., cleaning, laundry,
room service etc. He is also responsible for inventory management
i.e., to purchase the order, checking the stock
availabilityetc.
Guest:
A guest can reserve the rooms on online or can come to the hotel
reception to reserve the rooms. Guests can make special requests
which are to be carried out during their stay and trigger
notifications for hotel staff to complete the tasks. During the
check-out process, he has to settle the payments.
Administrator:
Administrator assigns the roles to the users, manager,
receptionist and house keeping executive and registers them to the
system3.4. Software and Hardware Requirements: The minimum software
and hardware requirements are as
Software Requirements:
OS SP SDK 2.0 IIS
(service pack) (Internet Information Services)
Windows NT4.6 6
Windows 2000 4
Windows XP 2
Windows 2003 1
Front End Microsoft visual studio 2005 (ASP. Net with c#
language)
Back End Sql server 2000
Client Details:
Any web browser to compatible to run front-end programs.
Hardware Requirements:
Processor : P3+ or AMD
Primary Memory (RAM) : 256 MB or 512 SD
Secondary Memory (Hard Disk) : min 10 GB
Monitor : VGA (Color)
Keyboard : 105 Standards
Mouse : Any Compatible Mouse
CHAPTER 4 SYSTEM DESIGN
4.1 SYSTEM DESIGN
4.1.1 Object oriented design
The UML language is for
Visualizing
Specifying
Constructing
Documenting
These are the artifacts of a software-intensive system.
A conceptual model of the UML:
The three major elements of UML are
The UMLs basic building blocks
The rule that dictate how those building blocks may be put
together.
Some common mechanisms that apply throughout the UML.
Basic building blocks of the UML
The vocabulary of UML encompasses three kinds of building
blocks: Things
Relationships
Diagrams Thing are the abstractions that are first-class
citizens in a model. Relationships tie these things together,
Diagrams group the interesting collection of things.Things in
UML
There are four kinds of things in the UML
1. Structural things,
2. Behavioral things,
3. Grouping things,
4. Annotational things.
These are things are the basic object oriented building blocks
of the UML. They are used to write well-formed models.
Class diagrams Describe the static structure of the system:
Objects, Attributes, and Associations.
Object diagrams
Shows set of objects and their relationships. These are static
snap shots of instances of the things found in the class
diagram.
Component diagrams
Shows set of components and their relationships.
Deployment diagrams
Shows a set of nodes and their relationships
Collaboration diagrams
Focuses on the structural organization of objects that send and
received messages.State chart diagrams
Describe the dynamic behavior of an individual object as a
finite state machine.
Class diagrams are used
During requirements analysis to model problem domain
concepts,
During system design to model subsystems and interfaces,
During object design to model classes.
Purpose
Name and model concepts in the system
Specify logical database schemas
Represent the structure of the system.
A class represents a concept and encapsulates state (attributes)
and behavior (operations).
Attribute has a type.
Operation has a signature. 4.2 CLASS DIAGRAM
4.3 Architecture Design
VBC++C#JSCRIPTJ#
COMMON LANGUAGE SPECIFICATION
ASP. NET WEBFORM etc.WINDOW FORMS
ADO. NET AND XML
BCL (BASIC COMBINED LANGUAGE)
CLR (COMMON LANGUAGERUN TIME)
OS (LINUX, WINDOWS, MASINTOSH)
4.4. DATA BASE DESIGNS
4.4.1 Login Details Table:
Column NameData TypeConstraints
UsernameVarchar(50)Primary key
PasswordVarchar(50)Not null
RolesVarchar(50)Not null
4.4.2 Registered Users Table:Column NameData typeConstraints
UsernameVarchar(50)Primary key
PasswordVarchar(50)Not null
DobVarchar(50)Not null
EmailVarchar(50)Not null
AddressVarchar(MAX)Not null
PhoneVarchar(50)Not null
SecquesVarchar(50)Not null
SecansVarchar(50)Not null
4.4.3 Room Details Table:
Column NameData TypeConstraints
RoomnoVarchar(50)Primary key
FloorVarchar(50)Not null
RoomtypeVarchar(50)Not null
ChargeFloatNot null
StatusVarchar(50)Not null
4.4.4 Guest Information Table:
Column NameData typeConstraints
RefnoIntPrimary key
NameVarchar(50)Not null
AddressVarchar(MAX)Not null
PhoneVarchar(50)Not null
MobileVarchar(50)Not null
EmailVarchar(50)Not null
CamefromVarchar(50)Not null
GoingtoVarchar(50)Not null
AdultsIntNot null
ChildIntNot null
4.4.5 Room Reservation Table:
Column NameData TypeConstraints
RefnoIntPrimary key
RoomnoVarchar(50)Not null
RoomtypeVarchar(50)Not null
FromdateVarchar(50)Not null
TodateVarchar(50)Not null
UsernameVarchar(50)Not null
4.4.6 Payment Details Table:
Column NameData typeConstraints
RoomnoVarchar(50)Not null
BnoIntPrimary key
RefnoIntNot null
NameVarchar(50)Not null
PaymentdateVarchar(50)Not null
PaymentmodeVarchar(50)Not null
PaymodedetailsVarchar(MAX)Not null
PaidamountFloatNot null
TotaldueFloatNot null
4.4.7 Expenses Table:
Column NameData TypeConstraints
MonthVarchar(50)Primary key
YearVarchar(50)Primary key
DeptVarchar(50)Primary key
AmountFloatNot null
4.4.8 Room Service Table:
Column NameData TypeConstraints
RoomnoVarchar(50)Not null
DeptVarchar(50)Not null
ServiceVarchar(50)Not null
ServicestatusVarchar(50)Not null
DateVarchar(50)Not null
AmountFloatNot null
4.4.9 Room Cleaning Table:
Column NameData TypeConstraints
RoomnoVarchar(50)Not null
DescriptionVarchar(50)Not null
CleanstatusVarchar(50)Not null
DateVarchar(50)Not null
TimeVarchar(50)Not null
4.4.10 Restaurant Order Table:
Column NameData TypeConstraints
KotnoVarchar(50)Primary key
DateVarchar(50)Not null
TablenoVarchar(50)Not null
ItemVarchar(50)Not null
QuantityIntNot null
AmountFloatNot null
4.4.11 Purchase Order Table:
Column NameData typeConstraints
PonoVarchar(50)Primary key
ItemnameVarchar(50)Not null
vendernameVarchar(50)Not null
QuantityVarchar(50)Not null
DateVarchar(50)Not null
AmountFloatNot null
CHAPTER 5
AN OVERVIEW OF .NET5.1 Overview of .Net:
.Net is the combining of smaller technologies into a singular
unit. Introduced in July 10 2000 officially by Microsoft company
that is why this is also called as . Net is the Microsoft
technology. Up to now there are four versions of the. Net
technologies is 1.0in the 2003 supports up to 13 languages, then
1.1in the 2003 supports up to 17 languages, then 2.0in the 2006
supports up to 23 languages, then finally now which are running in
the market is 3.0 supports more than 40 languages. That fourth
version is also called as ORCAS.
.Net supporting languages:
Visual Basic. Net
Visual C#. Net
Visual J#. Net
Visual COBOL. Net
These are four common languages which are mostly used by the
visual studio.Net, this visual studio. Net (VS. Net) is the
integrated development environment (IDE). That is Tool through
which these 40+ languages are to be run as front end.
5.1.1 Type of applications using .Net:
Windows application
Console application
Web application
Mobile application
Crystal reports
Control libraries
Windows application:
This is the application which are applies in the run time and
design time, this application are used in the designing of forms in
the new projects these windows application can be used by any Vs.
Net supporting languages.
Console application:
This is also one of the application which are applies in the dos
prompt and run time application are used in the designing of forms
in the new projects these windows application can be used by any
Vs. Net supporting languages.
Code window is available with for Vb. Net and for c#. Net
Web application:
This is also one of the application which are applies in the
runtime and design time, this application are used in the designing
of web forms or Web pages in the new websites these web application
can be used by any Vs. Net supporting languages.
Crystal reports:
This is also one of the application which are applies in the
creating of tabular column. Generally this crystal reports are
ignored by Vs. Net. These applications are used in the generating
of the tabular column in the new projects these windows application
can be used by any Vs. Net supporting languages.
Control libraries:
This is also one of the application which are applies in the
creating of assemblies. That is the combination of one or more .dll
and .exe files. These applications are used in the assemblies in
the new projects these windows application can be used by any Vs.
Net supporting languages. The assemblies having two types are as
single file assemblies and multi files assemblies.
5.1.2 VB. Net Advantages:
Not case sensitive.
Faster in execution while compare to other .Net languages.
It has migrated.
The future is newly adopted technology from the existing Vb
6.0
(a product of Microsoft to developed rich front end
screens).
Snippet:
A type of future introduced Vs.Net 2.0version to make the uses
very familiar with the structure of different control statement to
use in the programming.
Type casting:
Converting of the data type to other type having two types
implicitly by the compiler and explicitly by the user.
Boxing and unboxing in the .Net:
In the case of boxing converting of value (integer type) type to
reference
(string type) type, and in the case of unboxing converting of
reference
(string type) type to value (integer type) type.
5.2 .Net framework:
Framework is different from Integrated Development Environment
(IDE). We use Integrated Development Environment (IDE) as Vs. Net.
. Net framework is a programming module of. Net. . Net framework is
combination of basic class libraries (BCL) and common language
runtime (CLR). BCL includes root name space oops concept web
services, xml, active data object (ADO).
As imports System. Data here imports is a keyword used to
inherent various
name space into the .Net environment. And System is the name
space is the
logical collection of class, method and properties etc.CLR
mainly consist of three parts:
Memory management how much we used that memory is allocated.
Garbage collector allocates and release space for object
usage.
CTS (common type system) every variable should be either value
type or reference
type which is a mandatory condition.
Root name space: - System .windows. Form developing for the
windows application. System. Reflection assembly applications.
System.io files operations.
System. Drawing Microsoft paint brush operation
(we can change size, color, of the font).
The .NET Framework provides a runtime environment called the
Common Language Runtime or CLR (similar to the Java Virtual Machine
or JVM in Java), which handles the execution of code and provides
useful services for the implementation of the program. CLR takes
care of code management at program execution and provides various
beneficial services such as memory management, thread management,
security management, code verification, compilation, and other
system services. The managed code that targets CLR benefits from
useful features such as cross-language integration, cross-language
exception handling, versioning, enhanced security, deployment
support, and debugging. Common Type System (CTS) describes how
types are declared, used and managed in the runtime and facilitates
cross-language integration, type safety, and high performance code
execution.
The CLS is simply a specification that defines the rules to
support language integration in such a way that programs written in
any language, yet can interoperate with one another, taking full
advantage of inheritance, polymorphism, exceptions, and other
features. These rules and the specification are documented in the
ECMA proposed standard document,
As part of compiling MSIL to native code, code must pass a
verification process unless an administrator has established a
security policy that allows code to bypass verification.
Verification examines MSIL and metadata to find out whether the
code can be determined to be type safe, which means that it is
known to access only the memory locations it is authorized to
access.
5.2.1 .NET Frame Work Diagram
Reflection:
The process of reading the metadata of information is called as
reflection. Metadata is an open standard environment.
Tool box:
It is GUI container that contains all the needed development
controls like textbox (input of the data), button (to rise on
event), label (Description), link etc.
Solution explorer:
It is GUI container that shows the various forms or webwofms or
list of various items that are used in the project.
Link label:
It is similar to label but with an under linking format (blue
color).We cant execute label in the runtime where link can be
execute in the runtime. It is used for hyper linking interface to
the. Net. but it has some disadvantages that can only opened the
defined location by the users.
ADO. Net:
ADO .NET Stands for activeX data object.
Dataset is an in-memory content of the Ado. Net and is
disconnected architecture of Ado. Net.
The connection between back end (database) and front end
(dataset) is called as data adaptor. In back end creates a table
with table name and column and required data types.
Main database used in. Net
Oracle
Sql server
Ms access
To established connection in Sql.
[Sql Connection cn = New Sql Connection (connection
string);]
As
User id= sivaji; Password=rvrjc;
Database=mdf;
Server=.;
To established connection in oracle
[Oracle Connection cn = New Oracle (connection string);]
As
User id= sivaji; Password=rvrjc;
Database=mdf;
Server=.;
Command object:
Syntax
[Sql Command = New Sql Command (Sql Statements, cn)]
Methods if command object in Ado. Net:
1. ExecuteNonQuery();
2. ExecuteScaler();
3. ExecuteReader();
4. ExecuteXmlReader();
To open connection the following method is used
[Cn. Open;]
Cn. Open ();
Sql Command;
Command Type;
Command ;
ExecuteNonQuery:
It is a method in Ado. Net used to perform Non-Query action.
Example insert, delete, update.
ExecuteScaler:
It is a method in Ado. Net used to perform retrieve a single
entity from the back end.
Example select user id from EMP where ename = faiyaz.
ExecuteReader:
It is a method in Ado. Net used to perform retrieve the data
from back End.
Example Select *from EMP
ExecuteXmlReader:
It is a method in Ado. Net used to perform retrieve the xml data
in the. Net applications.
5.3 ASSEMBLY:
Logical collection of one or more .exe and .dll files is called
as assembly and the compile source code of. Net architecture. There
are two types of assemblies are categories.
Single assemblies and,
Multi file assemblies.
.EXE: Self execution files and not reusable.
.DLL: Not self execution files and reusable.
Assemblies of single file Content:
1. Manifest- metadata of assembly
2. Type metadata-data about assembly class
3. Msil-microsoft integrated language
4. Resource- external resource.
Microsoft integrated language is divided into four parts
according to the versions:
Version 6.0 major
Version 3.0 minor
Version 0.0 build
Version 1.0 revision
Assemblies of multi file Content:
1. Manifest- metadata of assembly
2. Type metadata-data about assembly class
3. Msil-microsoft integrated language
These are myassembly.dll
1. Metadata
2. Msil-microsoft integrated language
Before Microsoft intermediate language (MSIL) can be executed,
it must be converted by a .NET Framework just-in-time (JIT)
compiler to native code, which is CPU-specific code that runs on
the same computer architecture as the JIT compiler.
Rather than using time and memory to convert all the MSIL in a
portable executable (PE) file to native code, it converts the MSIL
as it is needed during execution and stores the resulting native
code so that it is accessible for subsequent calls.
The runtime supplies another mode of compilation called
install-time code generation. The install-time code generation mode
converts MSIL to native code just as the regular JIT compiler does,
but it converts larger units of code at a time, storing the
resulting native code for use when the assembly is subsequently
loaded and executed.
5.4 Validation controls and page navigation:
Validation controls:
Validation is the process of making sure that the user enters
correct information into a form. Validation controls is provide by
the. Net framework in the client browser if the browser supports
java script and DHTML and checks the data that user entered before
sending it to the server. The entire validation take place in the
browser and nothing is sent back to the server. If the browser does
not support DHTML and scripting then is done on the server. All
validation controls in the. Net frameworks are derived from the
BaseValidator class.
The validation controls that are provided by the. Net frameworks
are as following:
1. RequiredField Validator
2. Compare Validator
3. Range Validator
4. RegulaExpression Validator
5. Custom Validator
RequiredField Validator:
Simple of all, RequiredField Validator makes sure that the user
enters data into a form. For example, on a registration form you
might want your users to enter their data of in a textbox. If they
leave field empty, this validation control will display an
error.
Notable property of the RequiredField Validator is the initial
value property, which set as an initial value in the control
Compare Validator:
Comparison Validations are used to compare the entered by the
user into a control (Textbox, for example) with the value entered
into another control for with a constant value. We indicate the
control to validate by setting the ControlToValidate property and
if we want to compare a specific control with an other control we
need set the ControlToCompare property to specify the
ControlToCompare with.
Range Validator:
Range Validators are used to test if the value of a control is
inside a specificied range of values.The three property of this
control are the ControlToValidate property, which contains the
control of validate and maximum and minimum values which hold the
maximum and minimum values of the valid range.
Regular Expression Validator:
Regular Expression Validators are used to check if the value in
a control matches a pattern defined by the regular expression.
Notable property for this control is the Validation Expression
property, which allow us to select a predefined expression which we
want to match with the data enter in a control.
Custom Validator:
Custom Validator are used to our own Validation for the data in
a control. For example, you can check the value entered by a user
is even or odd, with this control which is not possible with any of
the above mentions validation controls. You write the script for
the validation for JavaScript or vbscript and associate that script
function to the ClientValidationFunction property of this
control.
CHAPTER 6
SCREEN DESIGN/GRAPHICAL USER INTERFACE
The system uses a very user-friendly interface developed using
extended markup language (XML) and hyper text markup language
(HTML). Which most users are acquitted with and is broadly used on
the World Wide Web (WWW). The controls are placed on the forms in
an easily accessible manner so that user strain is minimized to the
maximum extent.
Whenever a user enters any from the system also states the
action to be performed is an easily understandable and pleasant
speech. The navigation of the user from one area of the system to
another is very easy using easy to access and properly placed
hyperlinks which user can access on the click of a button.
The system also posses a unique format for each type of
employee; this ensures that employee is presented with options he
has access to. This ensures a great deal of security to the system
and to the organization as an employee is not given an option to
carryout unauthorized activity.
Home page:
Login page:
Forgot Password page:
Change Password page:
Registration page:
User Login page:
Room Reservation page:
Room Reservation page: (contd)
Room Reservation page: (contd)
Room Cancellation page:
Receptionist Login page:
House Keeping Executive Login Page:
Manager Login page:
Central Reservation page:
Room Status View page:
To Change Room Status:
Check-In page:
Payment page:
Check-Out page:
Search Guests page:
Extension of Stay page:
Guests Information page:
Expected Departures page:
Room Occupancy Summary page:
Room Service page:
Restaurant Order page:
Final Bill page:
Final Bill page: (contd)
Administrative Expenses page:
Room Cleaning (House Keeping) page:
Purchase Order (Inventory) page:
Expenses Reports page:
Admin Registration page:
CHAPTER 7TESTING
7.1 Testing Concepts for Web Applications:
Testing is the process of exercising software with the intent of
finding (and ultimately correcting) errors. In fact, because
Web-based systems and applications reside on a network and
interoperate with many different operating systems and applications
reside on a network and interoperate with many different operating
systems, browsers (or other interface devices as PDAs or mobile
phones), hardware platforms, communications protocols, and backroom
applications, the search for errors represents a significant
challenge.
7.1.1 Dimensions of Quality:
Quality is incorporated into a web application as a consequence
of good design. It is evaluated by applying a series of technical
reviews that assess various elements of the design model and by
applying a testing process. Both reviews and testing examine one or
more of the following quality dimensions.
Content
Function
Structure
Usability
Navigability
Performance
Compatibility
Interoperability
Security
7.1.2 Errors within a WebApp Environment:
Errors encountered as a consequence of successful WebApp testing
have a number of unique characteristics:
Because many types of WebApp tests uncover problems that are
first evidenced on the client side (i.e., via an interface
implemented on a specific browser or a PDA or a mobile phone).
Because a WebApp is implemented in a number of different
configurations and within different environments, it may be
difficult or impossible to reproduce an error outside the
environment in which the error was originally encountered.
Although some errors are the result of incorrect design or
improper HTML (or other programming language) coding, many errors
can be traced to the WebApp configuration.
Because WebApps reside within client/server architecture, errors
can be difficult to trace across three architectural layers: the
client, the server, or the network itself.
Some errors are due to the static operating environment (i.e.,
the specific configuration in which testing is conducted), while
others are attributable to the dynamic operating environment (i.e.,
instantaneous resource loading or time-related errors).
7.1.3 Testing Strategy:
Basic principles for software testing of WebApps are
The Content Model for the WebApp is reviewed to uncover
errors.
The interface model is reviewed to ensure that all use-cases can
be accommodated.
The design model for the WebApp is reviewed to uncover
navigation errors.
The user interface is tested to uncover errors in presentation
and/or navigation mechanics.
Selected functional components are unit tested.
Navigation throughout the architecture is tested.
The WebApp is implemented in a variety of different
environmental configurations and is tested for compatibility with
each configuration.
Security tests are conducted in an attempt to exploit
vulnerabilities in the WebApp or within its environment.
Performance tests are conducted.
The WebApp is tested by a controlled and monitored population of
end users; the results of their interaction with the system are
evaluated for content and navigation errors, usability concerns,
compatibility concerns, and WebApp reliability and performance.
7.1.4 Test Planning:
A WebApp test plan identifies
1. A task set to be applied as testing commences.
2. The work product to be produced as each testing task is
executed.
3. The manner in which the results of testing are evaluated,
recorded, and reused when regression testing is conducted.
7.2 The Testing Process- Overview:
The testing process for web engineering begins with tests that
exercise content and interface functionality that is immediately
visible to end-users. As testing proceeds, aspects of the design
architecture and navigation are exercised. The user may or may not
be cognizant of these WebApp elements. Finally, the focus shifts to
tests that exercise technological capabilities that are not always
apparent to end-usersWebApp infrastructure and
installation/implementation issues.
Content Testing
Interface Testing
Navigation Testing
Component Testing
Configuration Testing
Performance Testing
Security Testing
The following figure shows the testing flow:
7.3 Content Testing:
Errors in WebApp content can be as trivial as minor typological
errors or as significant as incorrect information, improper
organization, or violation of intellectual property laws. Content
Testing attempts to uncover these and many other problems before
the user encounters them.
7.3.1 Content Testing Objectives:
Content testing has three important objectives:
1. To uncover syntactic errors(e.g., typos, grammar mistakes) in
text-based documents, graphical representations, and other
media
2. To uncover semantic errors (i.e., errors in the accuracy or
completeness of information) in any content object presented as
navigation occurs
3. To find errors in the organization or structure of content
that is presented to the end-user.
In our system testing
In the ASP.NET technology, we have intelligence facility so that
we can avoid syntactic errors while we are doing coding without
putting extra effort for detecting these types of errors.
Semantic testing focuses on the information presented within
each content object. The tester must answer the following
questions:
Is the information factually accurate?
Is the information concise and to the point?
Is the layout of the content object easy for the user to
understand?
Can information embedded within a content object be found
easily?
Have proper references been provided for all information derived
from other sources?
Is the information presented consistent internally and
consistent with information presented in other content objects?
Is the content offensive, misleading, or does it open the door
to litigation?
Does the content infringe on existing copyrights or
trademarks?
Does the content contain internal links that supplement existing
content? Are the links correct?
Does the aesthetic style of the content conflict with the
aesthetic style of the interface?
7.3.2 Database Testing:
Modern web applications do much more than present static content
objects. In many application domains, WebApps interface with
sophisticated database management systems and build dynamic content
objects that are created in real-time using the data acquired from
a database.
Database Testing for WebApps is complicated by a variety of
factors:
1. The original client-side request for information is rarely
presented in the form that can be input to a database management
system. Therefore, tests should be designed to uncover errors made
by these DBMS.
2. The database may be remote to the server that houses the
WebApp. Therefore, tests that uncover errors in communication
between the WebApp and the remote database should be developed.
3. Raw data acquired from the database must be transmitted to
the WebApp server and properly formatted for subsequent transmittal
to the client. Therefore, tests that demonstrate the validity of
the raw data received by the WebApp server should be developed, and
additional tests that demonstrate the validity of the
transformations applied to the raw data to create valid content
objects must also be created.
4. The dynamic content objects must be transmitted to the client
in a form that can be displayed to the end-user. Therefore, a
series of tests should be developed to uncover errors in the
content object format and test compatibility with different client
environment configurations.
In our system we have faced the following problems during the
testing of pages involved database connectivity: If the guest wants
to reserve a room, checking of the availability should be done
automatically. The data is retrieved from the database and the
required possibility is checked. The communication is tested. At
the beginning we have used disconnected model, it causes some
problems some times while updating or deleting the entries in the
database, so we have used connected in those problematic places.
The booking details should be displayed on users request, those
details are retrieved and displayed in the grid view. The forms are
checked clearly in different systems.
7.4 User Interface Testing:
Verification and validation of a WebApp user interface occurs at
three distinct points in the Web engineering process. During
formulation and requirements analysis, the interface model is
reviewed to ensure that it conforms to customer requirements and to
other elements of the analysis model. During design, the interface
model reviewed to ensure that generic quality criteria established
for all user interfaces have been achieved and that
application-specific interface design issues have been properly
addressed. During testing, the following shifts to the execution of
application-specific aspects of user interactions as they are
manifested by interface syntax and semantics. In addition, testing
provides final assessment usability.
7.4.1 Interface Testing Strategy:
Interface features like colors, frames, images, borders, tables,
and related elements that are generated as WebApp execution
proceeds, are tested to ensure the design rules.
Each interface mechanism is tested within the context of a use
case for a specific user category.
The complete interface is tested against selected use cases.
Individual Interface mechanisms are tested in a manner that is
analogous to unit testing.
7.4.2 Testing Interface Mechanisms:
Links: Each navigation link is tested to ensure that the proper
content object or function is reached.
Forms: The following tests are performed to ensure that
1. Labels correctly identify fields within the form and that
mandatory fields are identified visually for the user.
2. The server receives all information contained within the form
and that no data are lost in the transmission between client and
server.
3. Appropriate defaults are used when the user does not select
from a pull-down menu or set of buttons.
4. Browser functions (e.g., back arrow) do not corrupt data
entered in a form.
5. Scripts that perform error checking on data entered work
properly and provide meaningful error messages. In our system, for
login if the user is unauthorized, invalid user message will come
and it is tested properly.
6. Browser auto-fill features do not lead to data input errors.
In our system, the Arrival date and Departure date are initially
none, no default date is provided there, if tourist did not select
those fields an error message will be displayed.
7. The tab key (or some other key) initiates proper movement
between form fields. In our system, in the reservation and booking
forms, initially we have 3 text boxes and they are placed into the
form in different order then we faced a problem there, the fields
are first name, then email id and then address like that, they are
looking in that format in the form but while designing the form we
placed textbox2 for the address textbox, if we pressed tab after
name filed it would go to the address textbox without going to the
email textbox. We have resolved the problem by placing the textbox2
against email.
Pop-up windows: A series of tests ensure that
The pop-up is properly sized and positioned
The pop-up does not cover the original WebApp window
Scroll bars and other control mechanisms appended to the pop-up
work, are properly located, and function as required.
7.5 Component-Level Testing:
Component-level testing also called function testing, focuses on
a set of tests that attempt to uncover errors in WebApp functions.
Each WebApp function is a software module is a software module and
can be tested using black-box testing and in some cases white-box
testing techniques.
Component-level test cases are often driven by forms-level
input. Once forms data are defined, the user selects a button or
other control mechanism to initiate execution. The following test
case design methods are used:
Equivalence Partitioning: The input domain of the function is
divided into input categories or classes from which test cases are
derived. The input form is assessed to determine what classes of
data are relevant for the function. Test cases for each class of
input are derived and executed while other classes of input are
held constant.
Test cases in our system are as follows:
Test Case# : 1Priority(H,L): High
Test Objective: To let the user enter the correct Email Id
format.
Test Description: Email Id format is tested against standard
formats.
Requirements Verified: Email Id format is checked
Test Environment: Internet Explorer
Test setup or Pre-conditions: User should enter some thing
Actions Expected Results
Incorrect Email Id
Correct IdA message Check your e-mail id is displayed.
Just check and leave.
Pass: Yes Conditional Pass: Fail:
PrP Problems or issues: Nil
Test Case# : 2Priority(H,L): High
Test Objective: Correct Registration
Test Description: Username is checked
Requirements Verified: Username is checked in the database
Test Environment: Internet Explorer
Test setup or Pre-conditions: User initiates any control
mechanism like Submit button.
Actions Expected Results
If the username already exists
If the username is validA message Username already exists.Enter
another name and try again is displayed.
Check and his account is created if all the required fields are
entered correctly.
Pass: Yes Conditional Pass: Fail:
PrP Problems or issues: Nil
Test Case# : 3Priority(H,L): High
Test Objective: To let the user enter all the required
fields
Test Description: All the necessary fields are checked
Requirements Verified: All the necessary fields should be
entered
Test Environment: Internet Explorer
Test setup or Pre-conditions: User initiates any control
mechanism like Submit or Go buttons
Actions Expected Results
Incomplete Necessary fields
Completion of all the necessary fieldsRed colored * symbols will
come against the incomplete fields and the user is allowed to
complete those fields and form will not be submitted until that has
been done
Just check and go to the next activity.
Pass: Yes Conditional Pass: Fail:
PrP Problems or issues: Nil
Test Case# : 4Priority(H,L): High
Test Objective: Correct logins
Test Description: Username and password are checked
Requirements Verified: Username and password are checked in the
database
Test Environment: Internet Explorer
Test setup or Pre-conditions: User initiates any control
mechanism like Submit or Go buttons
Actions Expected Results
Incorrect login
Correct LoginA message Invalid username / password will be
displayed and allows the user to reenter the information.
Check and his account is opened which consists of the booking
details and logout option.
Pass: Yes Conditional Pass: Fail:
Test Case# : 5
Priority(H,L): High
Test Objective: To let the guest enter the arrival and departure
dates only after the present date.
Test Description: Arrival and departure dates are tested
Requirements Verified: Those dates should be after the present
date.
Test Environment: Internet Explorer
Test setup or Pre-conditions: User should enter some thing
Actions
Expected Results
Arrival and departure dates are before the present date.
Arrival date is after the departure date
Correct Dates
A message Invalid entry of dates is displayed.
A message Invalid entry of dates is displayed.
Just check and continue
Pass: Yes Conditional Pass: Fail:
PrP Problems or issues: Nil
Test Case# : 6Priority(H,L): High
Test Objective: User is allowed to cancel or modify his own
booking details
Test Description: Accessing permissions
Requirements Verified: Login username must be verified
Test Environment: Internet Explorer
Test setup or Pre-conditions: If user tries to cancel the
reservation made by another user
Actions Expected Results
If correct username
If incorrect usernameGuest is allowed to access those pages
A message Invalid entry of data will be displayed.
Pass: Yes Conditional Pass: Fail:
PrP Problems or issues: Nil
Test Case# : 7Priority(H,L): High
Test Objective: Correct Check-in to the hotel
Test Description: Reference number is checked
Requirements Verified: Reference number, arrival date, departure
date, check-in date and the room number are verified from the
database.
Test Environment: Internet Explorer
Test setup or Pre-conditions: If receptionist enters the
incorrect reference number
Actions Expected Results
If the reference number is not confirmed after the payment.
If the guest is already checked-in
If the check-in date is after the departure date given during
reservation
If the check-in date is before the arrival date given during
reservation
If the allotted room number is invalid
If everything is correctA message Invalid reference number is
displayed.
A message Entered reference number is invalid as the guest is
already checked-in will be displayed.
A message Check-in is not accepted as the dates are invalid will
be displayed.
A message Check-in is not accepted as the dates are invalid will
be displayed.
A message Check-in is not completed as Invalid roomno is alloted
for the guest will be displayed.A message Check-in successfully
completed is displayed and all the necessary activities are
done.
Pass: Yes Conditional Pass: Fail:
PrP Problems or issues: Nil
Test Case# : 8Priority(H,L): High
Test Objective: Correct Check-out from the hotel
Test Description: Room number is checked
Requirements Verified: Room number and the payment details are
verified from the database.
Test Environment: Internet Explorer
Test setup or Pre-conditions: If receptionist enters the
incorrect room number
Actions Expected Results
If the room number is not checked-in
If the Payment is not made by the guest.
If the total due amount is more.
If everything is correctA message Invalid Room number is
displayed.
A message No payment is made. Check out is not accepted is
displayed.
A message Check-out is not accepted as the due amount is more is
displayed
A message Check-Out successfully completed is displayed and all
the necessary activities are done.
Pass: Yes Conditional Pass: Fail:
PrP Problems or issues: Nil
Boundary Value Analysis: Forms data are tested at their
boundaries.
In our system:
VariableMinimum valueMaximum Value
Username1 character30characters
Password6 characters30characters
ArrivalDate, Departure DatePresent date-
Telephone number1014
7.6 Navigation Testing:
The job of navigation Testing is
To ensure that the mechanisms that allow the WebApp user to
travel through the WebApp are all functional and
To validate that each navigation semantic unit can be achieved
by the appropriate user category.
7.6.1 Testing Navigation Syntax:
Navigation links: Internal links within the WebApp, external
links to other WebApps and anchors within a specific Web page
should be tested to ensure that proper content or functionality is
reached when the link is chosen.
Redirects: these links come into play when a user requests a
nonexistent URL or selects a link whose destination has been
changed. We have tested this by accessing the incorrect internal
links and the test is completed successfully.
Sitemaps: Entries should be tested to ensure that the link takes
the user to the proper content or functionality.
7.7 Configuration Testing: this attempt to uncover errors that
are specific to a particular client or server environment. A
cross-reference matrix that defines all probable operating systems,
browsers, hardware platforms, and communication protocols is
created. Tests are then conducted to uncover errors associated with
each possible configuration.
7.8 Security Testing: It incorporates a series of tests designed
to exploit vulnerabilities in the WebApp and its environment. The
intent is to demonstrate that a security breach is possible.
7.9 Performance Testing: It encompasses a series of tests that
are designed to assess
(1) How the WebApp response time and reliability are affected by
increased user traffic,
(2) Which WebApp components are responsible for performance
degradation and what usage characteristics cause degradation to
occur, and (3) how performance degradation impacts overall WebApp
objectives and requirements.
CHAPTER 8
MAINTENANCECorrective maintenance
This acts to correct errors that are uncovered after the
software is in use.
Adaptive maintenance
This is applied when changes is the external environment
precipitate modifications to software.
Preventive maintenance
This improves future maintainability and reliability and
provides basis for future enhancements.
CHAPTER 9
CONCLUSION
The existing system is a manual system. It involves paper work
in the form of maintaining various files and manuals. Maintaining
critical information in the files and manuals is full of risk and a
tedious process. A positive solution to ease the burden is
Automation of Hotel Management.
The existing automated system is a stand alone system or a LAN
based system and booking is in the form of email.
This project reduces the manual work and minimizes time spent
for administration. Cyber Hotelier is developed to increase the
performance of the existing system and is beneficial for the
organization as it provides an option of reserving rooms through
online. The system has fulfilled all the requirements outlined in
the problem definition.
The system is secured because it provides restricted access to
various user types by user authentication. Various trend reports
would facilitate the process of decision-making. This system has
been tested using all possible test data that can work in any
conditions.
Chapter 10
FUTURE ENHANCEMENTS
Desirable Enhancements to the Delivered SystemThe system has
been developed under the given conditions and is found to work
effectively and efficiently. The system has been tested with sample
data covering all possible options and its performance is good.
Since the system is flexible and modular, further modification of
this package can be easily incorporated. A number of possible
enhancements or additions to the delivered system have been
suggested.
Enhancements to create a Bigger, Better System
These enhancements deal with what would be required in a new
improved, bigger and better system.
Simultaneous access of the software by more number of users in a
project team. To provide a facility that automatically sends a mail
to the users to keep them updated on every new plan introduced.
CHAPTER 11
REFERENCES
Ali Bahrami (2003),Object Oriented Analysis and Design using
UML, 2nd Edition Tata McGraw-Hill. Roger S.Pressman (2002),Software
Engineering: A Practioners Approach, 5th Edition, Tata McGraw-Hill.
Vikas Guptha (2007),.Net Programming in C#,2005, BHP
publishers.
http://www.asp.net/
http://www.lifecyclestep.com/open/410.0Analysis.htm
http://www.hotelmanagementsystem.co.in/
http://www.download.com/Hotel-Management-System/3000-2078_4-
HYPERLINK
"http://www.download.com/Hotel-Management-System/3000-2078_4-10803780.html"
\t "_blank" 10803780.html
Dept
Room no
Service
Amount
Status
Date
Room service
Guest
Ref no nnono.
room no
name
address
phoneee
email
room type
fromdate
todate
advance
Request
Pays
Payment
Bill no
Room no
Payment date
Payment mode
Total due
Paid amount
Makes
Reservation
Ref no
Item name
KOT no
Table no
Amount
Quantity
Date
Restaurant
Item name
PO no
Vender name
Amount
Quantity
Date
Purchase order
Year
Month
Amount
Dept
Expenses
User
Technology
Component testing
Security testing
Performance testing
Configuration testing
Component design
Architecture design
Navigation design
Content design
Aesthetic design
Interface design
Navigation testing
Interface testing
Content testing