U.S. patent application number 09/728939 was filed with the patent office on 2002-02-21 for systems and methods of displaying cruise line pricing data.
Invention is credited to Bastnagel, Maryann, Berk, Byron J., Burkard, Anne D., Carpenter, Michael A., Christen, Holley S., Codd, Tracey Lee, Colangelo, Paul, Cox, Mitch, DeLand, Joanell U., DelPino, George, Delva, Joelle S., Elenberger, Maureen J., Elliott, Todd, Everhart-Brooks, Sharon, Ewart, Vivian D., Ferguson, Bradley, Fessenden, Timothy, Fitton, Paul, Forman, David A., Helms, Kevin, Hintz, Samuel L., Huff, Wallace C., Judy, Elizabeth K., Klotz, Irwin D., Kurk, Courtney W.T., Leslie, Keith J., Levy, Sandi B., Locicero, Fred, Loiselle, Vance M., Luna, Charlotte A., Moorhead, Timothy M., Nickerson, Jeffrey A., Porter, Nancy, Quintana, Adolf, Reynolds, Karen J., Rodriquez, Elena M., Scanlon, Monica, Schiff, Martin R., Sherota, Michael T., Sussman-Wiles, Kathleen M., Tolle, Dot.
Application Number | 20020022978 09/728939 |
Document ID | / |
Family ID | 22613292 |
Filed Date | 2002-02-21 |
United States Patent
Application |
20020022978 |
Kind Code |
A1 |
Schiff, Martin R. ; et
al. |
February 21, 2002 |
Systems and methods of displaying cruise line pricing data
Abstract
In one embodiment, systems and methods of comparing pricing
information may commence with a user access the cruise selling and
booking system to search for cruise packages that meet a customer's
preferences. The user may utilize the cruise selling and booking
system to select a set of pricing options for which the customer
may qualify. The user may then view detailed pricing information
that corresponds to the set of pricing options in one or more of
the available price matrices.
Inventors: |
Schiff, Martin R.; (Coral
Springs, FL) ; Sussman-Wiles, Kathleen M.; (Miami
Beach, FL) ; Ewart, Vivian D.; (Davie, FL) ;
Huff, Wallace C.; (Dresser, WI) ; Berk, Byron J.;
(Somerville, MA) ; Elenberger, Maureen J.;
(Concord, MA) ; Fessenden, Timothy; (Waltham,
MA) ; Fitton, Paul; (Hollis, NH) ; Loiselle,
Vance M.; (Bolton, MA) ; Carpenter, Michael A.;
(Loxahatchee, FL) ; Sherota, Michael T.; (Davie,
FL) ; Judy, Elizabeth K.; (Delrey, CA) ;
Rodriquez, Elena M.; (Miami, FL) ; Christen, Holley
S.; (Syracuse, NY) ; Cox, Mitch; (Orlando,
FL) ; Elliott, Todd; (Orlando, FL) ; Helms,
Kevin; (Orlando, FL) ; Quintana, Adolf;
(Orlando, FL) ; Tolle, Dot; (Casselberry, FL)
; Porter, Nancy; (St. Cloud, FL) ; Reynolds, Karen
J.; (Orlando, FL) ; Scanlon, Monica; (New
York, NY) ; Colangelo, Paul; (Airmont, NY) ;
Codd, Tracey Lee; (Charlotte, FL) ; DeLand, Joanell
U.; (Clay, NY) ; Moorhead, Timothy M.;
(Syracuse, NY) ; Burkard, Anne D.; (Delrey Beach,
FL) ; DelPino, George; (Coral Springs, FL) ;
Delva, Joelle S.; (Miami, FL) ; Everhart-Brooks,
Sharon; (Boca Raton, FL) ; Ferguson, Bradley;
(Boca Raton, FL) ; Forman, David A.; (Deerfield
Beach, FL) ; Hintz, Samuel L.; (Coral Springs,
FL) ; Klotz, Irwin D.; (Boca Raton, FL) ;
Kurk, Courtney W.T.; (Miami Beach, FL) ; Leslie,
Keith J.; (Plantation, FL) ; Levy, Sandi B.;
(Deerfield Beach, FL) ; Locicero, Fred;
(Smithtown, NY) ; Luna, Charlotte A.; (Boca Raton,
FL) ; Nickerson, Jeffrey A.; (Coconut Creek, FL)
; Bastnagel, Maryann; (Rockville, MD) |
Correspondence
Address: |
KNOBBE MARTENS OLSON & BEAR LLP
620 NEWPORT CENTER DRIVE
SIXTEENTH FLOOR
NEWPORT BEACH
CA
92660
US
|
Family ID: |
22613292 |
Appl. No.: |
09/728939 |
Filed: |
December 1, 2000 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
60168871 |
Dec 3, 1999 |
|
|
|
Current U.S.
Class: |
705/5 |
Current CPC
Class: |
G06Q 30/06 20130101;
G06Q 10/02 20130101; G06Q 30/02 20130101; G06Q 50/14 20130101; G06Q
30/0607 20130101; G06Q 30/0283 20130101; G06Q 30/0241 20130101 |
Class at
Publication: |
705/5 |
International
Class: |
G06F 017/60 |
Claims
What is claimed is:
1. A method of presenting cruise pricing information for display by
a plurality of web browser programs, wherein the method utilizes a
cruise web server environment to electronically communicate via a
data communications network with a plurality of remote users using
the web browser programs and the cruise pricing information
includes real-time pricing and availability data, the method
comprising: receiving a selected cruise sailing from a remote
user's web browser program; identifying rate options stored in an
electronic cruise line database that correspond to the selected
cruise sailing; sending the rate options to the remote user's web
browser program; receiving a set of selected rate options from the
remote user's web browser program; identifying cabin pricing
categories stored in the electronic cruise line database that
correspond to the selected cruise sailing and the set of selected
rate options; obtaining cruise price information from the
electronic cruise line database that corresponds to the cabin
pricing categories; and preparing cruise price information for
display in a price summary as part of an electronic document by the
remote user's web browser.
2. The method of claim 1, wherein the price summary is formatted as
a matrix of cruise price information.
3. A method of filtering cruise pricing information for display to
a remote user's web browser program utilizing a cruise web server
environment to electronically communicate with a the remote user's
web browser program via a data communications network, the method
comprising: receiving a selected cruise sailing from the remote
user's web browser program; identifying rate options stored in an
electronic database that correspond to the selected cruise sailing;
sending the rate options to the remote user's web browser program
for display as an electronic document; receiving a set of selected
rate options from the remote user's web browser program; and using
the set of selected rate options to retrieve pricing information
from the electronic database that corresponds to the selected
cruise sailing and to formulate a query that filters the pricing
information based at least upon the selected rate options.
4. A method of requesting cruise price information using a web
browser program to electronically communicate with a remote cruise
web server system via a data communications network, wherein the
cruise price information includes real-time pricing and
availability data, the method comprising: sending a first request
for information on a cruise sailing to the remote cruise web server
system; and receiving a price matrix display of cruise price
information corresponding to the cruise sailing from the remote
cruise web server system, wherein the price matrix display is
displayed in the web browser program as an electronic document.
5. A method of requesting cruise price information using a web
browser program to electronically communicate with a remote cruise
web server system via a data communications network, the method
comprising: sending a first request for information on a cruise
sailing to the remote cruise web server system; receiving a set of
rate options corresponding to the cruise sailing from the remote
cruise web server system; sending a selection of rate options from
the set of rate options; and receiving a price matrix display of
cruise price information corresponding to the cruise sailing from
the remote cruise web server system, wherein the cruise price
information corresponds to the selection of rate options and the
price matrix display is displayed in the web browser program as an
electronic document.
6. A method of filtering cruise price information using a web
browser program to electronically communicate with a remote cruise
web server system via a data communications network, the method
comprising: sending a first request for information on a cruise
sailing to the remote cruise web server system; receiving a set of
rate options corresponding to the cruise sailing from the remote
cruise web server system, wherein the set of rate options are
formatted for display as an electronic document by the web browser
program; selecting a selection of rate options from the set of rate
options; and sending the selection of rate options to the remote
cruise web server system.
7. A method of using a computer to enable a remote user to compare
cruise package pricing information from a cruise booking web server
system, wherein the remote user electronically communicates with
the cruise booking web server system using a web browser program
via a data communications network and at least a portion of the
cruise package pricing information includes real-time pricing and
availability data, the method comprising: receiving a request for
cruise price information for at least two cruises from the remote
user's web browser program; preparing the cruise price information
for display in an electronic document that includes a price summary
matrix; and sending the price summary matrix to the remote user's
web browser program.
8. The method of claim 7, wherein the electronic document is a web
page document.
9. In a network comprising a user node having a browser program
coupled to the network, the user node providing requests for
information on the network, a network node comprising: a cruise
booking node responsive to a request for cruise price information
for at least two cruises from the user node wherein the cruise
booking node provides the user node with a price summary of the
cruise price information.
10. The network node of claim 9, wherein the cruise booking node is
configured to use rate options to filter the cruise price
information of the price summary.
11. The network node of claim 9, wherein the cruise booking node is
configured to use selected categories to filter the cruise price
information of the price summary.
12. The method of claim 9, wherein the price summary includes a
plurality of selectable price matrices.
13. The network node of claim 9, further comprising a cruise line
database configured to store cruise package and pricing information
for at least two different cruise lines, wherein the cruise line
database is in communication with the cruise booking node.
14. A system for displaying cruise price information implemented in
a web server environment wherein a plurality of remote users
communicate with the system via a data communications network using
web browser programs, the system comprising: an electronically
stored data structure of cruise price information wherein the
cruise price information includes information from different cruise
lines; a program module configured to receive requests for cruise
information from a remote user's web browser program; a program
module configured to obtain cruise price information from the
electronically stored data structure based at least upon a price
summary request; a program module configured to prepare cruise
price information for a display as a price summary in an electronic
document; and a program module for outputting the prepared cruise
price information to the remote user's web browser program.
15. The system of claim 14, wherein the price summary is in table
format.
16. A method for analyzing cruise package pricing category
information utilizing a cruise web server environment to
electronically communicate via a data communications network with a
plurality of remote users using web browser programs, the method
comprising: receiving a set of rate options from a remote user's
web browser program; obtaining cruise package information relating
to the set of rate options from an electronic database of cruise
pricing information; and outputting the cruise package information
in a pricing table for display by the remote user's web browser
program.
17. In a network comprising a user node having a browser program
coupled to the network, the user node providing requests for
information on the network, a network node comprising: a cruise
booking node responsive to a request from the user node, wherein
the cruise booking node queries an electronic database of cruise
information for cruise package information that relates to a set of
rate options received from said user node and forwards the cruise
package information to the user node.
18. The network node of claim 17, wherein the electronic database
is a cruise line database configured to store rate options for at
least two different cruise lines.
19. A system for analyzing cruise package information implemented
in a web server environment wherein a plurality of remote users
utilize web browser programs to electronically communicate with the
system via a data communications network, the system comprising: an
electronically stored data structure of cruise price information
wherein the cruise price information includes information from
different cruise lines; a program module configured to receive a
set of rate options from a remote user's web browser program; a
program module configured to obtain real-time cruise price
information from the electronically stored data structure, wherein
the obtained real-time cruise price information relates to the set
of rate options; and a program module for outputting cruise package
information in a price summary for display by the remote user's web
browser program.
20. The system of claim 19, wherein the price summary is in table
format.
21. A system for comparing cruise package pricing options
implemented in a web server environment wherein a plurality of
remote users utilize web browser programs to electronically
communicate with the system via a data communications network, the
system comprising: a cruise sailing selection software component
configured to receive a request for cruise pricing information for
a selected sailing from a remote user's web browser program; a
pricing options software component configured to search for a set
of pricing options that correspond to the selected sailing in an
electronic database of cruise information, to send the set of
pricing options to the remote user's web browser program, and to
receive a set of selected pricing options from the remote user's
web browser program; a pricing category software component
configured to search for cruise pricing information in the
electronic database of cruise information, wherein the cruise
pricing information relates to the set of selected pricing options;
and a display software component configured to process and format
the cruise pricing information for display in a pricing matrix by
the remote user's web browser program, wherein the pricing matrix
is organized at least in part by the pricing categories.
22. A system for comparing cruise package pricing options
implemented in conjunction with a web browser program, wherein the
web browser program electronically communicates with a remote
cruise web server via a data communications network, the system
comprising: a cruise sailing selection software component
configured to send requests for real-time cruise pricing
information to the remote cruise web server, wherein the real-time
cruise pricing information is organized into pricing categories; a
pricing options selection software component configured to send
requests to the remote cruise web server for filtering the cruise
pricing information based at least upon a set of selected pricing
options; and a display software component configured to receive the
requested filtered, real-time cruise pricing information from the
remote cruise web server and to display the filtered, real-time
cruise pricing information using the web browser program in a
pricing matrix, wherein the pricing matrix is organized at least in
part by the pricing categories.
23. The system of claim 22, wherein the pricing options selection
software component is further configured to receive a set of
pricing options from the remote cruise web server, wherein the set
of selected pricing options are selected from the set of pricing
options.
24. A method of presenting cruise pricing information user's web
browser program utilizing a cruise web server environment to
electronically communicate with a the remote user's web browser
program via a data communications network, the method comprising:
means for receiving a selected cruise sailing from a remote user's
web browser program; means for identifying rate options stored in
an electronic database that correspond to the selected cruise
sailing; means for sending the rate options to the remote user's
web browser program for display as an electronic document; means
for receiving a set of selected rate options from the remote user's
web browser program; means for identifying cabin pricing categories
stored in the electronic database that correspond to the selected
cruise sailing and the set of selected rate options; means for
obtaining cruise price information from the electronic database
that corresponds to the cabin pricing categories; and means for
preparing cruise price information for display by the remote user's
web browser program in price summary.
25. A method of requesting cruise price information using a web
browser program to electronically communicate with a remote cruise
web server system via a data communications network, the method
comprising: means for sending a first request for information on a
cruise sailing to the remote cruise web server system; means for
receiving a set of rate options corresponding to the cruise sailing
from the remote cruise web server system, wherein the set of rate
options are formatted for display as an electronic document by the
web browser program; means for sending a selection of rate options
from the set of rate options to the remote cruise web server; and
means for receiving a price matrix display of cruise price
information corresponding to the cruise sailing from the remote
cruise web server system, wherein the cruise price information
corresponds to the selection of rate options.
Description
RELATED APPLICATIONS
[0001] This application claims the benefit of U.S. Provisional
Application No. 60/168,871 filed Dec. 3, 1999, the disclosure of
which is hereby incorporated by reference. In addition, this
application is a continuation-in-part of U.S. patent application
filed concurrently and entitled "SYSTEMS AND METHODS OF ON-LINE
BOOKING OF CRUISES," internal reference number TRAVL.002A, which is
hereby incorporated by reference.
FIELD OF THE INVENTION
[0002] The present systems and methods relate generally to the
field of on-line price comparisons and in particular concern
applications designed to facilitate cruise price comparisons,
reservations, booking, and customer management by travel agents as
well as individual customers.
BACKGROUND
[0003] The growth of the cruise industry has created an increase in
the number of passenger cruise lines that sail each year. Each
cruise line offers a variety of cruise packages, and the cruise
packages vary depending on destination, sailing date, cruise ship,
cabin category, excursions, special discounts, and so forth. While
such variety offers great selection to potential customers, finding
the cruise package that best fits the customer's budget and
preferences is often a difficult task. As a result, travel agents
spend large amounts of time and energy sorting through the myriad
of cruise information to find cruises that are of interest to the
customer.
[0004] One common problem is that conventional approaches make it
difficult to analyze cruise package pricing information namely
because there is a large amount of pricing data associated with
each cruise package. For example, a cruise package's pricing data
may be based on varying factors such as cabin type, cabin location,
number of persons per cabin, group block discounts, and so forth.
Sorting through such data is difficult and arduous.
[0005] Another common problem is that the cruise package pricing
information is constantly changing. As occupancy levels change for
each cruise ship, the price data may vary to reflect the changes.
For example, a cruise ship with a low occupancy rate may reduce
prices to try and encourage sales; whereas a cruise ship with a
high occupancy rate may increase its prices to reflect the high
demand. Additionally, a cruise ship set to sail in a short amount
of time may release available cabins at reduced rates to attempt to
fill the vacancies. This constant changing of price data makes it
difficult to find accurate cruise package pricing information.
[0006] An additional problem is that travel agents spend large
amounts of time determining the preferences of each individual
customer, finding cruise packages that meets the customer's needs,
and booking the cruise package. A travel agent spends, on average,
well over one hour with each customer manually sifting through
piles of paper documentation and is constantly on the phone with
cruise lines to get current information, such as availability and
pricing.
[0007] Thus, the large amount of data coupled with the constant
changing of the prices makes it difficult and time consuming to
retrieve, analyze, and compare various cruise packages.
SUMMARY OF THE INVENTION
[0008] One embodiment of the present invention is a method of
presenting cruise pricing information for display by a plurality of
web browser programs, wherein the method utilizes a cruise web
server environment to electronically communicate via a data
communications network with a plurality of remote users using the
web browser programs and the cruise pricing information includes
real-time pricing and availability data. The method comprises
receiving a selected cruise sailing from a remote user's web
browser program, identifying rate options stored in an electronic
cruise line database that correspond to the selected cruise
sailing, and sending the rate options to the remote user's web
browser program. The method also comprises receiving a set of
selected rate options from the remote user's web browser program
and identifying cabin pricing categories stored in the electronic
cruise line database that correspond to the selected cruise sailing
and the set of selected rate options. The method further comprises
obtaining cruise price information from the electronic cruise line
database that corresponds to the cabin pricing categories and
preparing cruise price information for display in a price summary
as part of an electronic document by the remote user's web
browser.
[0009] Another embodiment of the present invention is a method of
filtering cruise pricing information for display to a remote user's
web browser program utilizing a cruise web server environment to
electronically communicate with a the remote user's web browser
program via a data communications network. The method comprises
receiving a selected cruise sailing from the remote user's web
browser program, identifying rate options stored in an electronic
database that correspond to the selected cruise sailing, and
sending the rate options to the remote user's web browser program
for display as an electronic document. The method also comprises
receiving a set of selected rate options from the remote user's web
browser program and using the set of selected rate options to
retrieve pricing information from the electronic database that
corresponds to the selected cruise sailing and to formulate a query
that filters the pricing information based at least upon the
selected rate options.
[0010] An additional embodiment of the present invention is a
method of requesting cruise price information using a web browser
program to electronically communicate with a remote cruise web
server system via a data communications network, wherein the cruise
price information includes real-time pricing and availability data.
The method comprises sending a first request for information on a
cruise sailing to the remote cruise web server system and receiving
a price matrix display of cruise price information corresponding to
the cruise sailing from the remote cruise web server system,
wherein the price matrix display is displayed in the web browser
program as an electronic document.
[0011] Another embodiment of the present invention is a method of
requesting cruise price information using a web browser program to
electronically communicate with a remote cruise web server system
via a data communications network. The method comprises sending a
first request for information on a cruise sailing to the remote
cruise web server system and receiving a set of rate options
corresponding to the cruise sailing from the remote cruise web
server system. The method also comprises sending a selection of
rate options from the set of rate options and receiving a price
matrix display of cruise price information corresponding to the
cruise sailing from the remote cruise web server system, wherein
the cruise price information corresponds to the selection of rate
options and the price matrix display is displayed in the web
browser program as an electronic document.
[0012] An additional embodiment of the present invention is a
method of filtering cruise price information using a web browser
program to electronically communicate with a remote cruise web
server system via a data communications network. The method
comprises sending a first request for information on a cruise
sailing to the remote cruise web server system, receiving a set of
rate options corresponding to the cruise sailing from the remote
cruise web server system and wherein the set of rate options are
formatted for display as an electronic document by the web browser
program. The method also comprises selecting a selection of rate
options from the set of rate options and sending the selection of
rate options to the remote cruise web server system.
[0013] Another embodiment of the present invention is a method of
using a computer to enable a remote user to compare cruise package
pricing information from a cruise booking web server system,
wherein the remote user electronically communicates with the cruise
booking web server system using a web browser program via a data
communications network and at least a portion of the cruise package
pricing information includes real-time pricing and availability
data. The method comprises receiving a request for cruise price
information for at least two cruises from the remote user's web
browser program, preparing the cruise price information for display
in an electronic document that includes a price summary matrix, and
sending the price summary matrix to the remote user's web browser
program.
[0014] An additional embodiment of the present invention is a
network node in a network comprising a user node having a browser
program coupled to the network, the user node providing requests
for information on the network. The network node comprises a cruise
booking node responsive to a request for cruise price information
for at least two cruises from the user node wherein the cruise
booking node provides the user node with a price summary of the
cruise price information.
[0015] Another embodiment of the present invention is a system for
displaying cruise price information implemented in a web server
environment wherein a plurality of remote users communicate with
the system via a data communications network using web browser
programs. The system comprises an electronically stored data
structure of cruise price information wherein the cruise price
information includes information from different cruise lines, a
program module configured to receive requests for cruise
information from a remote user's web browser program, and a program
module configured to obtain cruise price information from the
electronically stored data structure based at least upon a price
summary request. The system also comprises a program module
configured to prepare cruise price information for a display as a
price summary in an electronic document and a program module for
outputting the prepared cruise price information to the remote
user's web browser program.
[0016] An additional embodiment of the present invention is a
method for analyzing cruise package pricing category information
utilizing a cruise web server environment to electronically
communicate via a data communications network with a plurality of
remote users using web browser programs. The method comprises
receiving a set of rate options from a remote user's web browser
program, obtaining cruise package information relating to the set
of rate options from an electronic database of cruise pricing
information, and outputting the cruise package information in a
pricing table for display by the remote user's web browser
program.
[0017] Another embodiment of the present invention is a network
node in a network comprising a user node having a browser program
coupled to the network, the user node providing requests for
information on the network. The network node comprises a cruise
booking node responsive to a request from the user node, wherein
the cruise booking node queries an electronic database of cruise
information for cruise package information that relates to a set of
rate options received from said user node and forwards the cruise
package information to the user node.
[0018] An additional embodiment of the present invention is a
system for analyzing cruise package information implemented in a
web server environment wherein a plurality of remote users utilize
web browser programs to electronically communicate with the system
via a data communications network. The system comprises an
electronically stored data structure of cruise price information
wherein the cruise price information includes information from
different cruise lines and a program module configured to receive a
set of rate options from a remote user's web browser program. The
system also comprises a program module configured to obtain
real-time cruise price information from the electronically stored
data structure, wherein the obtained real-time cruise price
information relates to the set of rate options and a program module
for outputting cruise package information in a price summary for
display by the remote user's web browser program.
[0019] Another embodiment of the present invention is a system for
comparing cruise package pricing options implemented in a web
server environment wherein a plurality of remote users utilize web
browser programs to electronically communicate with the system via
a data communications network. The system comprises a cruise
sailing selection software component configured to receive a
request for cruise pricing information for a selected sailing from
a remote user's web browser program and a pricing options software
component configured to search for a set of pricing options that
correspond to the selected sailing in an electronic database of
cruise information, to send the set of pricing options to the
remote user's web browser program, and to receive a set of selected
pricing options from the remote user's web browser program. The
system also comprises a pricing category software component
configured to search for cruise pricing information in the
electronic database of cruise information, wherein the cruise
pricing information relates to the set of selected pricing options
and a display software component configured to process and format
the cruise pricing information for display in a pricing matrix by
the remote user's web browser program, wherein the pricing matrix
is organized at least in part by the pricing categories.
[0020] An additional embodiment of the present invention is a
system for comparing cruise package pricing options implemented in
conjunction with a web browser program, wherein the web browser
program electronically communicates with a remote cruise web server
via a data communications network. The system comprises a cruise
sailing selection software component configured to send requests
for real-time cruise pricing information to the remote cruise web
server, wherein the real-time cruise pricing information is
organized into pricing categories, a pricing options selection
software component configured to send requests to the remote cruise
web server for filtering the cruise pricing information based at
least upon a set of selected pricing options, and a display
software component configured to receive the requested filtered,
real-time cruise pricing information from the remote cruise web
server and to display the filtered, realtime cruise pricing
information using the web browser program in a pricing matrix,
wherein the pricing matrix is organized at least in part by the
pricing categories.
[0021] Another embodiment of the present invention is a method of
presenting cruise pricing information user's web browser program
utilizing a cruise web server environment to electronically
communicate with a the remote user's web browser program via a data
communications network. The method comprises means for receiving a
selected cruise sailing from a remote user's web browser program,
means for identifying rate options stored in an electronic database
that correspond to the selected cruise sailing, and means for
sending the rate options to the remote user's web browser program
for display as an electronic document. The method also comprises
means for receiving a set of selected rate options from the remote
user's web browser program and means for identifying cabin pricing
categories stored in the electronic database that correspond to the
selected cruise sailing and the set of selected rate options. The
method further comprises means for obtaining cruise price
information from the electronic database that corresponds to the
cabin pricing categories and means for preparing cruise price
information for display by the remote user's web browser program in
price summary.
[0022] An additional embodiment of the present invention is a
method of requesting cruise price information using a web browser
program to electronically communicate with a remote cruise web
server system via a data communications network. The method
comprises means for sending a first request for information on a
cruise sailing to the remote cruise web server system and means for
receiving a set of rate options corresponding to the cruise sailing
from the remote cruise web server system, wherein the set of rate
options are formatted for display as an electronic document by the
web browser program. The method also comprises means for sending a
selection of rate options from the set of rate options to the
remote cruise web server and means for receiving a price matrix
display of cruise price information corresponding to the cruise
sailing from the remote cruise web server system, wherein the
cruise price information corresponds to the selection of rate
options.
[0023] For purposes of summarizing the invention, certain aspects,
advantages, and novel features of the invention are described
herein. It is to be understood that not necessarily all such
advantages may be achieved in accordance with any particular
embodiment of the invention. Those skilled in the art will
recognize that the invention may be embodied or carried out in a
manner that achieves one advantage or group of advantages as taught
herein without necessarily achieving other advantages as may be
taught or suggested herein.
BRIEF DESCRIPTION OF THE DRAWINGS
[0024] These and other features will now be described with
reference to the drawings summarized below. These drawings and the
associated description are provided to illustrate embodiments of
the invention and not to limit the scope of the invention.
Throughout the drawings, reference numbers are re-used to indicate
correspondence among referenced elements. In addition, the first
digit of each reference number indicates the figure in which the
element first appears.
[0025] FIG. 1 illustrates a high-level block diagram of one
embodiment of the present invention.
[0026] FIG. 2A illustrates a high-level block diagram of one
embodiment of the present invention.
[0027] FIG. 2B illustrates a high-level block diagram of an
additional embodiment of the present invention.
[0028] FIG. 3A illustrates a high-level block diagram of one
embodiment of the present invention.
[0029] FIG. 3B illustrates a high-level block diagram of an
additional embodiment of the present invention.
[0030] FIG. 4 illustrates a high-level block diagram of a price
comparison module.
[0031] FIG. 5 illustrates one embodiment of a pricing options
display.
[0032] FIG. 6 illustrates one embodiment of a pricing matrix.
[0033] FIG. 7 illustrates an additional embodiment of a pricing
matrix.
[0034] FIG. 8 illustrates an additional embodiment of a pricing
matrix.
[0035] FIG. 9 illustrates one embodiment of a flow chart of a
pricing options selection process.
[0036] FIG. 10 illustrates one embodiment of a flow chart of a
price matrix process.
DETAILED DESCRIPTION
[0037] Systems and methods which represent various embodiments and
example applications of the invention will now be described with
reference to the drawings. Variations to the systems and methods
which represent other embodiments will also be described. In one
disclosed embodiment, the systems and methods are used to provide
pricing information and is described in the context of a cruise
selling and booking system. The inventors contemplate that the
present invention is not limited by the type of environment in
which the pricing information is provided and that other types of
environments may be used, such as, for example, a real estate
system, an airline travel system, a car rental system, a car sales
system, as well as any other type of system that sells and/or
provides pricing information about various products and/or
services. The figures and descriptions, however, relate to
embodiments of the invention wherein the pricing information
relates to cruise packages.
[0038] The present invention relates to systems and method for
comparing multiple sets of pricing information. One embodiment of
the invention includes a system for displaying subsets of pricing
information in table format wherein the pricing information may be
readily compared with other sets of data.
[0039] One benefit of one embodiment is that users may select among
a variety of pricing options permitting users to narrow the range
of pricing information which is displayed. In some instances, a
particular customer may not qualify for certain pricing options and
thus, such options may be excluded from the pricing display.
[0040] Another benefit of one embodiment is that users are
presented with a price matrix of relevant pricing data. The users
may select pricing options for which the customer may qualify and
are presented with corresponding pricing information for the
selected pricing options in a discrete price matrix. The price
matrix displays two or more sets of pricing data enabling the users
to compare the details of the pricing data.
[0041] An additional benefit of one embodiment it that the users
may view various types of price matrices depending on the
individual customer and/or the amount of data.
[0042] A further benefit of one embodiment is that as the pricing
options, prices, and availability change, the changes are reflected
in the user's displays. The user is presented with up-to-date,
current information.
[0043] An additional benefit of one embodiment is that the customer
is able to find and book cruises in a more efficient manner saving
the travel agent and/or the customer time. The cruise selling and
booking system provides a tool for readily accessing up-to-date,
accurate cruise information without spending the large amount of
time often required when telephoning the cruise lines one-by-one to
collect cruise information and to book a cruise.
[0044] In one embodiment, these features are integrated into a
cruise selling and booking system that assists agents and customers
with finding cruises that meet the customers' preferences.
Furthermore, the cruise selling and booking system facilitates the
ability of the customers and agents to compare accurately the
various cruise pricing data.
I. Overview
[0045] In one embodiment, the systems and methods may be used in
the context of a cruise selling and booking system 110. FIG. 1
illustrates the cruise selling and booking system 110 of one
embodiment wherein a plurality of customers, agents, and cruise
lines interact with a cruise selling and booking system 110 via
communication mediums 120 such as the Internet 125. Cruise lines
may interact directly with the cruise selling and booking system
110 and/or via a cruise line interface system 130 that stores
information for one or more cruise lines. The cruise selling and
booking system 110, in the illustrated embodiment, provides an
interactive tool for compiling, reviewing, and processing
information obtained from the cruise lines, customers, and agents.
The customer is provided with information about various cruises
packages and may book a cruise package utilizing components of the
cruise selling and booking system 110 through interaction with an
agent.
[0046] Using the agent computer 240, as illustrated in FIG. 2A, the
agent accesses the components of the cruise selling and booking
system 110 to find information about the customer, to provide the
customer with information about cruise sailings from the cruise
line database 234, and to book cruise packages as desired by the
customer. Additionally, the agent may select various pricing
options for which the customer qualifies and then view the cruise
pricing information that corresponds to the selected pricing
options using one or more of the price matrices.
[0047] In one embodiment, a customer may also access the cruise
selling and booking system 110 without necessarily interacting with
an agent as illustrated in FIG. 2B. For example, a customer may
access the cruise selling and booking system 110 via a web based
service by utilizing a standard web browser on his own computer to
connect to the cruise selling and booking system 110 web page. In
one embodiment, should the customer desire the assistance of an
agent, the cruise selling and booking system 110 may store the
information entered by the customer in the database collection 230.
An agent with access to the cruise selling and booking system 110
may subsequently retrieve the information. This feature provides
improved customer/agent interactivity by saving the customers from
repeating information which was previously stored in the cruise
selling and booking system 110 to each agent with whom they
interact. As it is recognized that both customers and agents may
access the cruise selling booking system, the term "users" will be
used herein to refer to customers and/or agents.
[0048] In one embodiment, a system and method of comparing pricing
information may commence with a user accessing the cruise selling
and booking system 110 to search for cruise packages that meet a
customer's preferences. The user may utilize the cruise selling and
booking system 110 to select a set of pricing options for which the
customer may qualify. The user may then view detailed pricing
information that corresponds to the set of pricing options in one
or more of the available price matrices.
[0049] Pricing options, also referred to as rate options, are the
representative pricing categories that a user may select for the
customer. These pricing options may include discounts associated
with package deals for air and extended stay vacations as well as
other incentive packages that a customer may select prior to
booking. Other examples include local resident discounts, senior
discounts, child traveling rates, weekend getaway rates, group
rates, and so forth. Each cruise line has a variety of pricing
options that set the prices for the multiple categories of cabins
of the various cruise sailings and cruise ships. Travel agents use
the pricing options along with other pricing information to find
the best rate for the customers while at the same time maximizing
their own commission. Due to the large number of possible pricing
options for each of the multiple cabin categories, it is often
useful for the agent to limit the pricing information of each
sailing to a smaller subset of information based on the customer's
profile and preferences. In one embodiment, the number of pricing
options that may be selected may be restricted (e.g. to four or
five). In another embodiment, the pricing options presented to the
user may reflect current availability of the cabins and/or cabin
categories such that if a pricing option has expired or has been
used up, the pricing option is not presented to a user.
[0050] Price matrices, also referred to as cruise detail displays,
display information for the categories of each cruise sailing
allowing the user to select individual categories as well as limit
the display to selected categories by filtering out excess
information. The price matrices display prices for the available
cabin categories of the designated sailings and the selected
pricing options. The information may include real-time data such
that as the prices are changing, the prices presented to the user
reflect the changes.
[0051] In one embodiment, the price matrices may be adjusted, by
reducing the number of viewed items and/or displaying additional
detailed information regarding a specific sailing. Furthermore, in
one embodiment, the price matrices include features that give the
user access to more detailed information about the categories or
the sailings. This information may include, for example, locations
of cabins, lounges, and entertainment on any selected ship. In one
embodiment, the user may switch between a variety of price matrices
such as, for example, a price matrix with the "best price"
information, a price matrix with detailed information, a price
matrix with airfare information, and so forth.
II. Cruise Selling and Booking System
[0052] An overview of one embodiment of a cruise selling and
booking system 110 is shown in FIG. 2A. In the exemplary system, a
customer communicates with an agent via telephone and the agent
uses a computer (hereinafter "agent computer 240") to connect to
the Internet 125 to communicate with the cruise selling and booking
system 110. While the figure illustrates communication between the
agent and customer via telephone, it is recognized that the
communication between the customer and the agent may take any of a
number of forms including in-person conversations, mailed
correspondence, e-mail, facsimile, and so forth. Additionally, the
customer may use a computer (hereinafter "customer computer 250")
to interact with the agent through online methods which may include
email correspondence, live "chat" methods, dedicated software
programs designed to facilitate online communication, and the
like.
[0053] In one embodiment, the cruise selling and booking system 110
includes a server component 210, a cruise selling and booking
component 220, and a database collection 230. In one embodiment,
the database collection 230 includes a customer database 232, a
cruise line database 234, an activity database 236, an agent
database 238. It is recognized that the information stored in the
database collection 230 may be discretely stored in multiple
independent databases, combined in a single database, or a
combination thereof.
[0054] In one embodiment, the pricing options and price matrices
may be used as part of a cruise sailing and booking system wherein
the user chooses at least two pricing options and views the
corresponding detailed pricing information in a set of price
matrices. These price matrices represent various pricing schemes of
the various cruise lines and their cruise sailings. For example,
the user may select specific cruise sailings from the list of
available cruise lines. Next, the user is presented with pricing
options that correspond to the selected sailing. The user may then
select a set of pricing options. The user is then presented with a
price matrix that includes information pertaining to the selected
pricing options. From the price matrix, the user may view cruise
package and pricing information for selected categories in a
side-by-side comparison, also known as the compare display.
[0055] In one embodiment, the agents and/or customers interact with
computers to access the cruise selling and booking system 110 via
communication mediums 120.
A. Communication Mediums
[0056] The communication mediums 120 as shown in FIGS. 2A and 2B
include the Internet 125. The Internet 125 is a global network of
interconnected computers capable of sending and receiving
information between one another. The structure of the Internet 125,
which is well known to those of ordinary skill in the art, includes
a network backbone comprising communications channels such as
copper wire, optical fiber, or satellite based interconnections
between numerous computers, hubs, and routers which control,
direct, and maintain information passed between computers.
Additional networks branch from the above-mentioned backbone, and
these branches, in turn, have sub-networks branching from them, and
so on. Typically, information is passed through the network in the
form of packets which are discrete pieces the information desirably
sent through the network. These packets of information are encoded
in a form interpretable by the network infrastructure and may
support features such as data compression, encryption, and error
correction to optimize the speed and efficiency by which the
information is transferred. For a more detailed description of the
structure and operation of the Internet 125, please refer to "The
Internet Complete Reference," by Harley Hahn and Rick Stout,
published by McGraw-Hill, 1994.
[0057] One popular segment of the Internet 125 is the World Wide
Web (or Web). The World Wide Web comprises many thousands of
computers which utilize the Internet 125 infrastructure to serve
and distribute information. Typically, a server system is capable
of two-way communication with other computers and can desirably
send information to other computers which request the information
or content stored on the server system. The information stored on
the server system is typically interpreted using a software package
known as a browser, which is capable of displaying graphical,
textual, audio and/or visual information.
[0058] Some of the server systems, which provide information on the
World Wide Web, are often referred to as "websites" and interact
with other computers on the World Wide Web. Generally, each website
has an associated electronic page or series of electronic pages
which the server sends to those computers requesting the
information. The requested information generally takes the form of
an electronic page (or web page) encoded in one or more specific
languages that is interpreted by the requesting computer and the
browser which it runs. Several such languages commonly used by web
servers include, but are not limited to, Hypertext Markup Language
("HTML"), JAVA, JAVA Script, Extensible Markup Language ("XML"),
Active Server Pages ("ASP"), and CGI scripting. The web page
provides the requesting computer with a document that organizes the
presentation of the information into a display using text,
graphical images, audio, and/or video. Furthermore, the computer,
on which the online document is viewed, may communicate with the
website by sending and receiving information through interface
objects such as, for example, fields, buttons, pull down menus, and
key entered commands. For a more detailed description on the World
Wide Web, please refer to "How to Set Up and Maintain a World Wide
Web Site" by Lincoln D. Stein, published by Addison-Wesley
Publishing Company, 1995.
[0059] One of ordinary skill in the art will recognize that the
communication mediums 120 may be advantageously be comprised of one
or more types of networks without detracting from the invention.
The communication mediums 120 may include, by way of example, local
area networks ("LANs"), wide area networks ("WANs"), public
internets, private internets, a private computer network, a secure
internet, a private network, a public network, a value-added
network, interactive television networks, wireless data
transmission networks, two-way cable networks, interactive kiosk
networks, digital subscriber lines, cable modem lines, and the
like. The disclosed invention is thus suitable for providing
connectivity through many different forms of communication mediums
120, however, it will be further discussed in the context of
connecting through the Internet 125. In addition, it is recognized
that one or more networks may be used to access the cruise selling
and booking system 110. For example, a customer may interact with
the cruise selling and booking system 110 via the Internet 125, an
agent may interact with the cruise selling and booking system 110
via a LAN, and/or the cruise lines may interact with the cruise
selling and booking system 110 via a wireless data transmission
network. In another embodiment, the customers, agents, and cruise
lines may all access the cruise selling and booking system 110 via
the Internet 125.
B. User Computer
[0060] The agent computer 240 and/or customer computer 250 ("user
computers 240, 250") shown in FIGS. 2A and 2B are devices that
allow the customer or agent to interact with cruise selling and
booking system 110 via the communication mediums 120. In one
embodiment, the user computer 240, 250 is a conventional personal
computer equipped with a modem, Ethernet card, or other component
which allows the computer to send and receive information through
the communication mediums 120. Preferably, the user computer 240,
250 runs an appropriate operating system such as the Microsoft.RTM.
Windows.RTM. 3.1, Microsoft(t Windows.RTM. 98, Microsoft.RTM.
Windows.RTM. 98 Second Edition.RTM., Microsoft.RTM. Windows.RTM.
Millennium Edition.RTM., Microsoft.RTM. Windows.RTM. NT,
Microsoft.RTM. Windows.RTM. 2000, Microsoft.RTM. Windows.RTM. CE,
PalmOS.RTM., Apple.RTM. MacOS.RTM., Linux.RTM., Solaris.RTM.,
IRIX.RTM., UNIX.RTM., or IBM.RTM. OS/2.RTM. operating systems. As
is conventional, a preferred operating system further includes a
TCP/IP stack or other communications protocol which handles all
incoming and outgoing message traffic passed over the communication
mediums 120.
[0061] In other embodiments, the user computer 240, 250 may, for
example, be a computer workstation, a local area network of
individual computers, an interactive television, an interactive
kiosk, a personal digital assistant, an interactive wireless
communications device, cellular phone, or the like which interacts
with the communication mediums 120. While in such systems, the
operating systems may differ, the various operating systems may
continue to provide the appropriate communication protocols needed
to establish communication links with the communication mediums
120.
[0062] In one embodiment, the user computer 240, 250 utilizes
several operational modules (not shown) including a customer or
agent browser module. The browser module is a software program
which allows a consumer to access different content providers
through the communication mediums 120. In one embodiment, the
browser module is the Netscape.RTM. Navigator developed by
Netscape, Inc. or the Microsoft.RTM. Internet Explorer developed by
Microsoft Corporation. One of ordinary skill in the art, however,
will recognize that numerous other types of access software may
also be used to implement an embodiment of the present invention.
These other types of access software may, for example, include
other types of Internet browsers, custom network browsers, two-way
communications software, cable modem software, point-to-point
software, and the like.
[0063] While the agent computer 240 and customer computer 250 are
referred to as user computers 240, 250, it is recognized that the
agent computer 240 and the customer computer 250 may be implemented
using different or the same hardware and/or software.
C. Cruise Selling and Booking System
[0064] In one embodiment, the cruise selling and booking system 110
includes a server component 210, a cruise selling and booking
component 220, and a database collection 230 as illustrated in FIG.
3A.
[0065] As used herein, the words component and module refer to
logic embodied in hardware or firmware or to a collection of
software instructions, possibly having entry and exit points,
written in a programming language, such as, for example, C++,
VISUAL BASIC, JAVA, C, FORTRAN, JAVA Script, and so forth. A
software component/module may be compiled and linked into an
executable program, or installed in a dynamic link library, or may
be written in an interpretive language such as BASIC. It will be
appreciated that software components/modules may be callable from
other components or from themselves, and/or may be invoked in
response to detected events or interrupts. Software instructions
may be embedded in firmware, such as an EPROM. It will be further
appreciated that hardware components/modules may be comprised of
connected logic units, such as gates and flip-flops, and/or may be
comprised of programmable units, such as programmable gate arrays
or processors. The components described herein are preferably
implemented as software components/modules, but may be represented
in hardware or firmware.
1. Server Component
[0066] In one embodiment, the cruise selling and booking system 110
includes a server component 210, as shown in FIG. 3A, that
interacts with the cruise selling and booking component 220 and
with the user computers 240, 250 via the communication mediums 120.
The server component 210 may be configured to process messages from
the user computer, to send requests to the cruise selling and
booking component 220, and to send response messages to the user
computer.
[0067] In one embodiment, the server component 210 is implemented
as a web server which serves content over the Internet 125 using
languages such as, the Hyper Text Markup Language ("HTML"). The web
server may accept requests from browsers, such as, for example, the
Netscape.RTM. Navigator or the Microsoft.RTM. Internet Explorer,
and return the requested document(s) to the browsers. The web
server may also utilize scripting programs, such as, for example,
CGI scripts, SSL security, and Active Server Pages ("ASP") to
provide additional functionality. A wide variety of web servers may
be used to implement the server component 210, such as, for
example, AOLserver, the Apache server, the iServer, Microsoft IIS
v5.0 server, Microsoft Site server, Netscape Enterprise server,
WebSite Pro server, Xitami server, and so forth. Furthermore, the
server component 210 may also be implemented using a variety of
other servers, such as, for example, the BlueStone Sapphire server,
the Interop server, a Netscape Server, an Oracle server, a
SilverStream server, the Sybase Enterprise Server, the WebObjects
server, and so forth. In addition, the server component 210 may be
implemented using a variety of computer systems, such as, for
example, a conventional general purpose computer using one or more
microprocessors, such as, for example, a Pentium processor, a
Pentium II processor, a Pentium Pro processor, an xx86 processor,
an 8051 processor, a MIPS processor, a Power PC processor, or an
Alpha processor, running a variety of platforms, such as, for
example, Mac OS, OpenLinux, Red Hat Linux, Sun Solaris, SGI IRIX,
Novel NetWare, Windows NT Server 4.0, and/or Windows 2000
Server.
2. Cruise Selling and Booking Component
[0068] In one embodiment, the cruise selling and booking system 110
includes a cruise selling and booking component 220, as shown in
FIG. 3A, that interacts with the server component 210 and the
database collection 230. In other embodiments, it is recognized
that the cruise selling and booking component 220 may also interact
with external sources, such as, for example, proprietary cruise
line systems, banking/financial systems, other travel agencies,
external databases, and so forth. In one embodiment, the cruise
selling and booking component 220 processes search requests from
the server component 210, queries the database collection 230
and/or external sources for requested information, receives the
query results from the various sources, processes the results,
compiles the results into a set of data, and formats the results
for presentation to the user via the server component 210.
[0069] The exemplary cruise selling and booking component 220 of
FIG. 3A includes a cruise selling and booking process 310, a
customer module 320, a cruise module 330, and a booking module 340.
The cruise selling and booking process 310 guides the user through
searching for cruise packages and booking a selected package. The
exemplary customer module 320 includes a customer add process 322
that adds new customers to the customer database 232, a customer
search process 324 that queries the customer database 232, and a
customer update process 326 that updates an existing customer's
information. The exemplary cruise module 330 includes a cruise
information add process 332 that adds information about the cruise
lines, the cruise ships, the cruise sailings, and/or the cruise
packages to the cruise database, a cruise search process 334 that
queries the cruise database, a cruise qualification process 336
that receives a set of cruise preferences and finds cruise sailing
and/or cruise price information that matches the set of cruise
preferences, and a cruise comparison process 338 that receives
identifiers for multiple cruise sailings or packages and returns
detailed information about the identified objects in a comparison
format. The exemplary booking module 340 includes a cruise booking
process 342 that receives cruise reservation/booking information
and books the corresponding cruise package, and a cruise payment
process 344 that receives cruise payment information and forwards
the payment information to the appropriate entity.
[0070] An additional embodiment of a cruise selling and booking
component 220 is illustrated in FIG. 3B. In addition to the
customer module 320, the cruise module 330, and the booking module
340, the cruise selling and booking component 220 also includes an
agent ownership module 350 configured to track and manage agent of
record relationships, a customer qualification module 360
configured to match a customer's preferences with a variety of
cruise package options, a price comparison module 370 configured to
present the user with pricing options and to provide price matrices
of detailed pricing information, and a comparison module 380
configured to provide side-by-side comparisons of various cruise
package and pricing information.
[0071] It is recognized that in other embodiments, the cruise
selling and booking component 220 may include other processes (not
shown) that provide information from the database collection 230 as
well as other external sources.
[0072] The cruise selling and booking component 220 may be
implemented using a variety of software and hardware components.
For example, the cruise selling and booking component 220 may
include a set of electronic page documents that are written in HTML
code, ASP scripts, and so forth. As is well known in the art,
standard HTML documents are web documents wherein the structure and
layout are defined by a variety of tags and attributes and are
capable of being read by standard browsers. Active Server Pages
("ASP") is a server-based, script language developed by Microsoft
Corporation that allows for the dynamic generation of HTML code via
server and client program scripts. Rather than maintain separate
script programs and electronic page documents, the script programs
may be embedded in the active server pages to form a set of "smart"
electronic page documents. As is well known in the art, ASP
documents do not need to be compiled, they can run on any browser,
and may allow the transfer of information from the database
collection 230. For a more detailed description of Active Server
Pages, please refer to "ASP in a Nutshell: A Desktop Quick
Reference," by A. Keyton Weissinger, published by O'Reilly &
Associates, Inc., 1999.
[0073] In addition, the cruise selling and booking component 220
may include additional software modules programmed in variety of
languages for processing user requests, performing data lookup,
compiling sets of data, formatting data, and so forth.
[0074] In one embodiment, the cruise selling and booking component
220 is implemented on the same component as the server component
210, though it is recognized that in other embodiments, the cruise
selling and booking component 220 may be implemented in a separate
component. For more information on the types of computers and/or
platforms that may be used to implement the cruise selling and
booking component 220, please see the section above entitled
"Server Component."
3. Database Collection
[0075] In one embodiment, the cruise selling and booking system 110
includes a database collection 230, as shown in FIGS. 3A and 3B,
that stores data about the customers, the cruises lines, the
activities, and the agents. The exemplary database collection 230
includes four databases, a customer database 232, a cruise line
database 234, an activity database 236, and an agent database
238.
[0076] The customer database 232 includes information about the
customers. Such information may include name, address, phone
number, cruise history, cabin preference, family information, age,
travel destination preference, as well as other travel-related
information.
[0077] The cruise line database 234 may include information about
various cruise lines, various cruise ships, and various cruise
sailings. The information about specific sailings may further
include information such as ship name, number, sailing destination,
departure dates, number of cabins, cabin categories, dining room
capacity, viewable maps of the ship, as well as other detailed
cruise line information. In addition, the cruise line database 234
may include information such as cabin availability and pricing
data. In one embodiment, the cruise line database 234 data may be
entered manually by a travel agent or downloaded/received from the
cruise lines and/or other sources.
[0078] In one embodiment, the cruise line database 234 enables
information about the various cruise lines to be stored in a single
database or database collection. The cruise lines have a myriad of
data that is organized differently according to each cruise line.
For example, the cruise lines tend to use their own proprietary
naming and pricing schemes; they individually select how the data
is selected, stored, and configured; and some cruise lines may
provide data that other cruise lines do not. For example, many
cruise lines use their own system for categorizing cabins and have
also use their own pricing schemes.
[0079] In some embodiments, the cruise line database 234 may
normalize all of the data from the various cruise lines into a
uniform system. In other embodiments, the cruise line database 234
may be configured to accommodate a wide variety of data. For
example, the cruise line database 234 may include a table of
categories in which each cruise line may have its own unique set of
categories ranked from most luxurious to most economical thus
maintaining the individuality of each cruise line while at the same
time enabling the various cruise line data to be compared. The
cruise line database 234 may, for example, provide pricing
information for the most luxurious cabins for cruise sailings on
Cruise Line A and Cruise Line B even though the cruise lines use
different cabin naming nomenclature and different category
structures.
[0080] The activity database 236 includes information about the
activities in the cruise selling and booking system 110. These
activities may include brochures, leads, quotes, reservations,
bookings, as well as other ongoing activity information. In one
embodiment, the activity database 236 is closely linked with the
customer database 232, the cruise line database 234, and the agent
database 238.
[0081] The agent database 238 includes information about the agents
that use the cruise selling and booking system 110. Agent
information may include the agents' logins, passwords, access
privileges, company, address, phone numbers, booking history,
current commission, and so forth.
[0082] While the database collection 230 depicted in FIGS. 3A and
3B includes four separate databases, it is recognized that in other
embodiments, the database collection 230 may include other
databases and/or some of the exemplary databases may be
combined.
[0083] In one embodiment, the database collection 230 may be
implemented with Structured Query Language ("SQL") code. The
structured query language is a language standardized by the
International Standards Organization ("ISO") for defining,
updating, and querying a relational database. It is recognized
however, that other code may be used to access the database
collection 230. For example, in one embodiment, the database
collection 230 may interact with various accessory programs to
store, retrieve, and process the information of the databases, such
as, for example, dynamic link libraries ("DLLs"). DLLs (not shown)
may interact with the server component 210, the cruise selling and
booking component 220, and the database collection 230 directly, or
with the database collection 230 via a database manipulation
module, such as, for example, a Microsoft Database Access Object
("DAO"). The execution of the DLL may be called automatically from
within the scripts or routines of the web page documents as needed
and may not necessarily require the customer or agent explicitly
launch a separate program or series of programs.
[0084] In one embodiment, the database collection 230 is
implemented using a relational database, such as, for example,
those sold by Oracle Corp. or Sybase. It is recognized however that
other relational databases may be used and/or other types of
databases may be used, such as, for example, object oriented
databases, flat file databases, and so forth. Furthermore, the
database collection 230 may be implemented as a single database
with separate tables or as other data structures that are well know
in the art such as linked lists, binary trees, and so forth.
[0085] In one embodiment, the database collection 230 is
implemented as a separate component or separate components from the
cruise selling and booking component 220 and/or the server
component 210, though it is recognized that in other embodiments,
the database collection 230 may be implemented on the same
component as the cruise selling and booking component 220 and/or
the server component 210. For more information on the types of
computers and/or platforms that may be used to run the database
collection 230, please see the section above entitled "Server
Component."
[0086] As noted above, one embodiment that is implemented using a
web server ("web server environment") provides several advantages.
First, the web server environment does not require any dedicated
hardware or software to be installed on the customer or agents
computer which will utilize the cruise selling and booking system
110. This advantage may apply to both customers and agents in that
they do not have the burden of expense normally associated with
purchasing or licensing a dedicated system. Second, maintenance and
upgrades of the cruise selling and booking system 110 may be
centrally administrated and automatically processed with little or
no intervention by those using the cruise selling and booking
system 110. For example, the cruise line database 234 may be
updated without the customer's knowledge. In addition, each
computer which connects to the cruise selling and booking system
110 automatically receives and connects with the most appropriate
software as determined by the web server of the cruise selling and
booking system 110. In addition, the interactive interface of the
cruise selling and booking system 110, like many interactive web
pages, uses the familiar environment of a web browser running on
the computer the customer or agent uses, thus, minimizing the
learning time required to operate and become proficient with the
cruise selling and booking system 110.
[0087] A detailed description of embodiments of a cruise selling
and booking system 110 is disclosed in a concurrently filed
application having the title "SYSTEMS AND METHODS OF ON-LINE
BOOKING OF CRUISES," internal reference number TRAVL.002A, which is
incorporated herein by reference. A detailed description of
embodiments of a compare display is disclosed in a concurrently
filed application having the title "SYSTEMS AND METHODS OF
COMPARING PRODUCT INFORMATION," internal reference number
TRAVL.017A, which is incorporated herein by reference. A detailed
description of one embodiments of managing agent ownership is
disclosed in a concurrently filed application having the title
"SYSTEMS AND METHODS OF MAINTAINING CLIENT RELATIONSHIPS," internal
reference number TRAVL.019A, which is incorporated herein by
reference. A detailed description of embodiments of qualification
is disclosed in a concurrently filed application having the title
"SYSTEMS AND METHODS OF MATCHING CUSTOMER PREFERENCES WITH
AVAILABLE OPTIONS," internal reference number TRAVL.020A, which is
incorporated herein by reference.
III. Price Comparison Module
[0088] In one embodiment, the cruise selling and booking system 110
includes a price comparison module 370 used to present the user
with available pricing options and to provide price matrices of
real-time, detailed pricing and availability information.
[0089] FIG. 4 illustrates one embodiment of a price comparison
module 370 which includes a pricing options selection process 410
and a price matrix process 420. For more information on the price
comparison processes, please refer to the section below entitled
"Price Comparison Processes." In one embodiment the price
comparison module 370 may be implemented as part of the cruise
selling and booking component 220 and may interact with the server
component 210 and the database collection 230.
[0090] In one embodiment, the price comparison module 370 may
utilize several resources to find available pricing options as well
as pricing information. For example, the price comparison module
370 may query the database collection 230 for customer information
stored in the customer database 232, such as, for example, number
of passenger, age of passengers, home gateway city, past
destinations, credit approval, and so forth. The customer
information may be used to qualify each customer for various steps
in the process of purchasing a cruise. In addition, the price
comparison module 370 may also query the database collection 230
for cruise line information stored in the cruise line database 234,
such as, detailed information about the cruise lines, the cruise
ships, as well as category information and pricing information. The
price comparison module 370 may also query outside sources, such
as, for example external databases, cruise lines, travel agencies,
and so forth. For example, the price comparison module 370 may
query a cruise line to determine which pricing options are
currently available for the selected sailing. In one embodiment,
the price comparison module 370 may query another source to obtain
real-time pricing and availability data as well as the database
collection 230 for static data and use both sets of data to present
the user with rate options and/or price matrices. For example, the
price comparison module 370 may query a cruise line or a cruise
line interface system 130 to determine whether there are any
available cabins for the selected sailing and to request real-time
pricing information for the cabins.
[0091] In one embodiment, the database collection 230 may be stored
locally and content may be updated to a remote server on a periodic
basis. In other embodiments, the information entered by the user
may be transferred across a communication medium to a centralized
database. The database collection 230 may be accessed by certain
function calls enabling the agent to gather information through a
standard web interface. The database calls may be standardized to
permit web page requests to remotely access cruise provider
databases without errors.
[0092] In one embodiment, the price comparison module 370 is
implemented to provide the user with a selection of pricing options
and a matrix of pricing information. In one embodiment, the price
matrix displays various pricing information for the categories of
cabins that are available on the selected cruise ship sailing. The
price comparison module 370 may be implemented using one or more of
a variety of technologies such as, C++, VISUAL BASIC, JAVA, JAVA
Script, Active Server Pages ("ASP"), Extensible Markup Language
("XML"), as well as other scripting languages that may be used to
dynamically retrieve, generate, process, and/or format the data for
a web document.
[0093] As used herein, the word module refers to logic embodied in
hardware or firmware, or to a collection of software instructions,
possibly having entry and exit points, written in a programming
language, such as, for example, C++. A software module may be
compiled and linked into an executable program, or installed in a
dynamic link library, or may be written in an interpretive language
such as BASIC. It will be appreciated that software modules may be
callable from other modules or from themselves, and/or may be
invoked in response to detected events or interrupts. Software
instructions may be embedded in firmware, such as an EPROM. It will
be further appreciated that hardware modules may be comprised of
connected logic units, such as gates and flip-flops, and/or may be
comprised of programmable units, such as programmable gate arrays
or processors. The modules described herein are preferably
implemented as software modules, but may be represented in hardware
or firmware.
IV. Price Comparison Displays
[0094] FIGS. 5, 6, 7, and 8 illustrate embodiments of price
comparison displays that includes a cruise detail web page 510 with
a "Select A Cruise" section 520 and a "Cruise Detail" section 530.
FIG. 5 illustrates a pricing options display. FIG. 6 illustrates a
compare display for which two cruise packages have been
selected.
A. Pricing Options Display
[0095] One embodiment of a pricing options display 540 is
illustrated in FIG. 5 wherein the user has selected to view a set
of available pricing options for the Princes Dawn Princess cruise
sailing which departs on Sep. 8, 2001. The exemplary display 540
includes a title bar 541 designating the cruise line, the cruise
ship, the departure date, as well as a tag ("07SC3") that
corresponds to the call that was assigned to the database search.
The exemplary display 540 uses a table format to display the
pricing options with heading descriptions at the top of the table
such that each row includes information that corresponds to an
individual pricing option. The exemplary headings are identified as
"Rate Code" 542, "Rate Name" 543, "Start Date" 544, "End Date" 545,
and "Status" 546.
[0096] The rate codes 542 identify various pricing options for the
cruise sailing and in one embodiment may be presented based upon
their availability. For example, once a pricing option has expired
or has been exhausted, the pricing option may not appear in the
display. The rate code 542 may be determined by the cruise selling
and booking system 110, the cruise lines, the travel agents, and/or
a combination of the above. The rate names 543 designate the name
of the pricing option and may provide additional information about
each option such as for example, whether the code may be used in
conjunction with air fare or whether it only applies to cruises.
The start dates 544 and end dates 545 represent times for which the
pricing options are available signifying when the promotion ends
and/or how long the specific option has been in existence. The
status 546 signifies whether a pricing option has expired. In one
embodiment, if the pricing option is available, the status 546 is
OPEN, whereas if the pricing option has expired, the status 546 is
marked as CLOSED. In one embodiment, the pricing options display
540 filters out pricing options that are of the CLOSED status.
[0097] In one embodiment, the pricing option display 540 may also
include an expandable field 547 for displaying additional
information including rules that may apply for a specific rate
code. This information may be displayed or hidden underneath the
rate code by clicking on the right arrow 548, which becomes a down
arrow to represent the expanded field. The user may also select the
checkbox 549 located to the left of each rate code to include the
pricing option in a price matrix. The pricing option display 540
may also include an input field 550 at the top of the display
enabling an agent to enter manually a known rate code. Manual entry
may be useful in situations where a user is working with a special
promotion that may not be part of the system, a new promotion that
has not yet been added to the system, and/or common promotions with
which the user is familiar.
[0098] For example, rate code BNPTPXUSD represents the best
available past passenger rate that does not include air prices. The
BNPTPXUSD option was available beginning on Oct. 12, 1998 and ends
on Mar. 28, 2001. The expanded field 547 includes information about
BNPTPXUSD stating that the passenger must have booked a cruise
within the last two years to qualify for this rate code 542.
Furthermore, the checkmark in the checkbox 549 indicates that the
rate code 542 has been selected as a pricing option for the price
matrix.
[0099] It is recognized that in other embodiments, the pricing
options display 540 may include different sets of data and/or some
of the data may be excluded from the display. For example, in one
embodiment, the user may not be presented with the input 550 field.
Furthermore, in other embodiments, the pricing options display 540
may limit the number of pricing options that a user may select to a
predetermined number, such as, for example, three or four.
B. Price Matrix Display
[0100] One embodiment of a price matrix display 610 is illustrated
in FIG. 6 wherein the user has selected the Princes Dawn Princess
cruise sailing which departs on Sep. 9, 2001. The exemplary price
matrix display 610 includes a price matrix section 620 and a button
section 630.
1. Price Matrix Section
[0101] The exemplary price matrix section 620 displays the
real-time pricing information for the selected pricing options and,
in one embodiment, may include pricing information for pricing
options that are always included, such as, for example, a
promotional price, best TRAVL price, best price, and so forth. The
price matrix displays the pricing information in table format with
heading descriptions at the top of the table such that each row
includes information that corresponds to an individual pricing
category. The exemplary headings are identified as "Cat" 621,
"Type" 622, "GG/Promo" 623, "TRAVL Block" 624, "BF" 625, and so
forth.
[0102] The "Cat" column 621 represents the category code for the
description of the accommodations. The category code may be
determined by the cruise selling and booking system 110, the cruise
lines, the travel agents, and/or a combination of the above.
Furthermore, the category codes may be different for various cruise
lines and may vary in presentation. The "Type" column 622
represents the type of category, such as, for example, suite,
single room, double room, outside cabin, inside cabin, and so
forth. The next columns 623, 624, 625 represent the various pricing
or rate options. In one embodiment, each pricing or rate option
column 623, 624, 625 may be further segmented into sub-columns to
present the costs for double occupancy, single occupancy, shared
occupancy, third person of a triple occupancy, fourth person for a
quadruple occupancy, as well as other information, such as
availability, options, and/or upgrades. The upgrade column may be
populated if an upgrade is available either by special promotion or
as an opportunity for an upgrade based on group rates.
[0103] In the exemplary price matrix, the BB/Promo price 623
includes the port charges and displays a promotional rate price.
The "TRAVL Block" 624 displays prices that the travel agency may
offer. In some instances, a travel agency or group may purchase or
hold a block of cabins at a discounted price and may pass the
discount onto the customers. The "BF" price 625 is the best price
which may be retrieved from the system and/or calculated in real
time by taking the lowest price of all of the available pricing
options or one or more subsets of the available pricing options.
Pricing information for other selected pricing options may also be
displayed.
[0104] The exemplary cruise ship, the Princess Dawn Princess
includes several categories, 12, 6D, 6C, 6B, 6A, 5A, and so forth.
In one embodiment, the categories are sorted from most expensive to
least expensive, though in other embodiments, other sorting methods
may be used. In addition, if pricing information is not available,
or if there is no availability for a particular category, the price
matrix may display "N/A," designating not applicable. In other
embodiments, the category may be removed from the price matrix,
and/or the availability of a particular category may be checked at
a later time.
[0105] In one embodiment, the price matrix section 620 includes a
column of checkboxes 626 located to the left of each "Cat" column.
The checkboxes 626 enable the user to select from the set of
categories a subset of categories to view in a "Show Selected"
matrix discussed below. Furthermore, the price matrix section 620
includes a column of arrows 627 next to the checkboxes that enable
the user to open a window that will display the details regarding
the category such as detailed descriptions of the categories and
the associated amenities. For example, for category 12, the
additional information may state that 12 is a suite on the
promenade deck. Such information may be useful as many cruise lines
use their own set of categories. The price matrix also includes a
column of arrows 628 within each pricing option column that enables
the user to display the selected the pricing option and category in
the compare display.
2. Button Section
[0106] In one embodiment, the price matrix may also include a
button section 630 that enables a user to revise and/or refine the
pricing information. For example, the price matrix defaults to
providing information for cabins based on a two person per cabin
booking. By submitting a different number and selecting the "Modify
Pax" button 631, the user may request pricing information for other
numbers of persons per cabin.
[0107] The "Show Selected" button 632 works in conjunction with the
check boxes located to the left of the price matrix rows. The user
may select one or more of the categories for display and then
select the "Show Selected" button to limit the price matrix to only
the selected categories in a "Show Selected" matrix. The "Show
Selected" button then changes to a "Show All" so that the user may
return to the set of all categories. In one embodiment, the default
view includes all of the categories for the selected cruise
sailing, though it is recognized that other defaults may be
used.
[0108] The "Best Price" button 633 permits the user to view a Best
Price matrix wherein the best prices are displayed in a matrix.
Furthermore, the "Air/Sea" button 634 permits the user to view an
Air/Sea price matrix detailing price information that includes
airfare. If the "Best Price" button is selected, the "Best Price"
button then changes to a "Detail" button enabling the user to
return to the price matrix. Furthermore, if the "Air/Sea" button
634 is selected, the "Air/Sea" button 634 then changes to the
"Detail" button enabling the user to return to the price matrix.
For more information on the "Best Price" matrix, please refer to
the section below entitled "Best Price" matrix. For more
information on the "Air/Sea" price matrix, please refer to the
section below entitled "Air/Sea Price Matrix."
[0109] The "Deck" button 635 displays a pop-up window illustrating
the cruise ship's key locations as well as the specific locations
of cabins on every level of the ship. To close the window, the user
may select the "Close" button. In one embodiment, the "Deck" button
is inactive if the cruise ship's information is not available.
[0110] The "Rate Options" button 636 returns to the pricing options
display 520 discussed above. These buttons enable the user to
switch between a variety of price matrices permitting accurate
comparisons of pricing information.
[0111] In one embodiment, the user may select another cruise to
view pricing information on a different cruise sailing.
C. Best Price Matrix
[0112] The Best Price matrix 710 displays a subset of the available
pricing information wherein only the "best prices" are presented
for various categories as illustrated in FIG. 7. Similar to the
price matrix display 610, the Best Price matrix 710 includes a
"Cat" column 711, and "Upg" column 712, and a "Type" column 713. In
addition, the Best Price matrix 710 includes columns representing
the best price for various sets of options. For example, in FIG. 7,
the best prices for the Promotion rate 714, the full individual
tariff ("FIT") price 715, and the best TRAVL price 716 are
displayed. In one embodiment, the FIT price represents the best
price for the selected rate options and pricing categories wherein
the price comparison module 370 finds the prices for the selected
rate options for the categories, determines the best prices, and
displays the best price. The Best Price matrix may also include a
best price description column 717 which presents the user with
information on the pricing option that was used to find the best
prices.
[0113] In one embodiment, the best prices are by default based upon
double occupancy, though the user may change the number of persons
per cabin. Furthermore, in other embodiments, other default values
may be used. In one embodiment, the Promotion column 714 may be
populated with pricing information if there is a special theme
cruise that has been planned or if there is any other promotion
offered by the cruise lines. The FIT price 715 represents the best
price for the selected rate options and pricing categories. The
Best TRVL price 716 represents the best price an agent can offer
which may be affected by negotiated deals between agencies and
cruise line carriers. In many cases, it is beneficial for the agent
to see the multiple pricing options as to afford the customer an
upgraded room category at a lesser price while at the same time
maximizing commission. The last category 717 identifies the
description of the best price.
[0114] In one embodiment, the Best Price matrix 710 may be
presented to the user as the default view as it provides the user
with a concise summary of the best prices that may be offered to
the user. In other embodiments, however, other price matrices may
be used as the default. For example, if the travel agency has an
agreement with an airline, the Air/Sea price matrix may be used as
the default to help encourage airfare sales.
[0115] For a discussion of the buttons used with the Best Price
matrix 710 see the section above entitled "Price Matrix
Display--Button Section."
D. Air/Sea Price Matrix
[0116] The "Air/Sea" price matrix 810 displays pricing information
that includes airfare from a gateway city as illustrated in FIG. 8.
During the cruise selling and booking process 310, the user may
select a gateway city 811 from which the customer will depart. In
one embodiment, the gateway city 811 represents the starting point
for airline transportation rather than the port of departure. The
user may then have the option of manually requesting price quotes
for airline travel, using the cruise selling and booking system 110
to search for airfare information, or using another system to find
airline itineraries and prices that suit the customer's needs.
V. Price Comparison Processes
[0117] In one embodiment, the price comparison module 370 includes
a pricing options selection process 410 and a price matrix process
420.
A. Pricing Options Selection Process
[0118] An overview of one embodiment of a pricing options selection
process 410 is shown in FIG. 9. Beginning at a start state (block
910), the pricing options selection process 410 transitions to the
next state (block 920) and receives a selected sailing. The pricing
options selection process 410 then retrieves a set of pricing
options that correspond to the selected sailing (block 930). The
set of pricing options may be retrieved from an internal source
and/or an external source. In addition, the set of pricing options
may be based in part on cabin and/or pricing option availability.
Next, the pricing options selection process 410 formats the set of
pricing options and returns them to the user (block 940). The
pricing options selection process 410 then receives a set of
selected pricing options, wherein the selected pricing options is a
subset of the set of pricing options (block 950) and proceeds to an
end state (block 960).
[0119] It is recognized that other embodiments of a pricing options
selection process 410 may be implemented. For example, the pricing
options may be retrieved for each selected sailing after all
sailings have been selected.
B. Price Matrix Process
[0120] An overview of one embodiment of a price matrix process 420
is shown in FIG. 10. Beginning at a start state (block 1010), the
price matrix process 420 transitions to the next state (block 1020)
and receives a selected sailing and a set of selected pricing
options. In one embodiment, the price matrix process 420 may
receive the selected sailing and/or the set of selected pricing
options from the pricing options selection process 410. Next, the
price matrix process 420 retrieves pricing information for the
selected sailing (block 1030) and filters information to the
pricing information that corresponds to the set of selected pricing
options (block 1040). The pricing information may be retrieved from
an internal source and/or an external source. In addition, the
pricing information may include real-time pricing and availability
data. The price matrix process 420 formats the pricing information
and sends it to the user (block 1050) proceeding to an end state
(block 1060).
[0121] It is recognized that other embodiments of a price matrix
process 420 may be implemented. For example, the price matrix
process 420 may also filter the pricing information to include only
the best prices for a set of categories. The set of categories may
be retrieved from the database collection 230 and/or may be
received from the user. Furthermore, the price matrix process 420
may also add in airfare information and/or remove airfare
information depending on how the pricing information is stored.
VI. Accessing the Pricing Options and the Price Matrices
[0122] In one embodiment the user may access the pricing options
and the price matrices throughout the cruise selling and booking
process 310. Furthermore, in other embodiments, a user may access
directly the pricing options and/or the price matrices using the
price comparison module 370.
A. Accessing the Pricing Options
[0123] In one embodiment, user may access the pricing options
display after selecting specific cruise sailings from the cruise
line carriers. When the user selects a cruise sailing, the price
comparison module 370 receives the user's selection and determines
whether there are any pricing options available. This may include,
for example, querying a cruise line or a cruise line interface
system 130 to determine the availability of particular cabins
and/or pricing options. In one embodiment, the price comparison
module 370 searches for any pricing options, while in other
embodiments, the price comparison module 370 may retrieve only
those pricing options for which the user is qualified. In other
embodiments, the price comparison module 370 excludes pricing
options for which the user does not qualify. If there no available
pricing options, then the user may be presented with a price
matrix. Otherwise, if there are available pricing options, the
pricing options display may be presented to the user.
[0124] If there are available pricing options, the user may, in one
embodiment, select up to four pricing options for display in a
price matrix. These options may include, for example, best possible
fare "BF," resident pricing discount "PGR," and/or a senior pricing
"PGSR1."
B. Accessing the Price Matrices
[0125] In one embodiment, the user may access the price matrices
throughout the cruise selling and booking system 110. For example,
the user may select pricing options in the pricing options display
and select the continue button to view a price matrix that
corresponds to the selected pricing options. In addition, the user
may select the previously selected sailing thereby bypassing the
pricing options display and directly viewing a price matrix.
Furthermore, within the Option Recap screen, the user may select
the "Category Sailed" button. This selection will initiate a price
matrix in the place of the Option Recap screen and allow the user
to include a new category in the specific sailing.
VII. Conclusion
[0126] While certain embodiments of the invention have been
described, these embodiments have been presented by way of example
only, and are not intended to limit the scope of the present
invention. Accordingly, the breadth and scope of the present
invention should be defined in accordance with the following claims
and their equivalents.
* * * * *