Back to the PSARE.COM Archive

Initial Customer Requirement

Here is the business proposition: A company that is successfully running a flight reservation service with offices and agents in numerous cities wants to expand the business by installing quick-ticketing machines in convenient locations. The idea is to increase business by making it quick and easy for customers to scrutinize flights, reserve flights, and purchase tickets. In short, the quick-ticketing machines should substitute for airline reservation agents as much as possible, and certainly for one-way or round-trip tickets for individuals or groups flying between two cities.

The quick-ticketing system should have some local intelligence about flight plans, prices, and so on, but it will have to interface with a central reservation system to determine the availability of seats. It will also have to interface with a central credit system to verify payment.

Our client has provided the following explanation of the processing that the quick-ticketing system should perform:

When the machine is available (that is, when no one is using it), the customer has a choice of accessing a list of available flights or reading how to operate the machine.

To browse through available flights, the customer enters the desired date, origin, and destination. The system contains a regularly updated subset of the flight information in the airline’s central reservation system. From this subset, it displays schedules for travel between customer-selected cities, such as the following selection from Seattle to Chicago:

ORIGIN

DESTINATION

FLIGHT #

DEPARTURE TIME

FLIGHT
DURATION

PRICE

SEATTLE

CHICAGO

UF140

7:20 AM

3:75

$345.00

SEATTLE

CHICAGO

XW712

8:10 AM

3:75

$365.00

SEATTLE

CHICAGO

UF144

9:20 AM

3:75

$365.00

SEATTLE

CHICAGO

UF147

10:20 AM

3:75

$385.00

SEATTLE

CHICAGO

TR351

11:00 AM

3:75

$345.00

SEATTLE

CHICAGO

XW714

12:00 NOON

3:75

$189.00

SEATTLE

CHICAGO

UF157

12:20 PM

3:75

$237.00

The system displays the appropriate information to the customer, who can make a selection or abort the operation. If proceeding further, the customer responds by selecting the desired flight, and if round-trip tickets are required, the operation is repeated with return flight information.

After receiving one or two flight requests, the system offers to make reservations, and requests more information, such as the number and names of the passengers and the seating class. Of course, the customer may abort the operation at any time.

At this point, the flight selections are sent to the main reservation computer. The reservation system responds with two pieces of information: the flight availability or nonavailability, and a flight confirmation code to be printed on the ticket.

If a flight is fully booked, the system displays a reduced schedule and requests another flight selection; this could be for either direction of the trip. The customer once again has the option of aborting the whole operation or proceeding further. If the customer aborts, the system must cancel any reservations made during this transaction.

If availability is confirmed and the customer enters a ticket request, the system requests payment information: the code for a credit card (such as Mastercard, Visa or American Express) or for a debit card for the customer's checking account. The system then transmits the payment information and the price of the ticket(s) to the bank's central credit computer, which responds with two pieces of information: the credit status and the credit approval code, the latter to be printed on the ticket. If the credit is valid, the system proceeds to issue the tickets.

If the customer simply walks away in the middle of a transaction, the system will automatically abort and reinitialize itself.

The system provides help to the customer in four possible circumstances: start-up, flight inquiry, reservation, and ticketing. For example, when the customer initiates the whole transaction, a help option is available that will display the operation of the whole system.

This description shows us that the customer must follow a certain sequence of operations. For example, one cannot make a reservation before choosing a flight, and the machine only issues tickets for reserved flights. This suggests that the system exhibits sequential behavior, which we can sketch in a state transition diagram.

This diagram captures the system’s behavior as perceived by a customer. The system starts in the idle state, where the customer can either get help or immediately inquire about schedules. The rest of the diagram maps the processing described in the client statement.

The Challenge

OK, folks: Where do you think we should go with this? What is the first step? Should we analyze this customer requirement independently, or should we start sketching a first-cut H/H/P model? It's your call!

   Back to the PSARE.COM Archive