Booking Agent





Booking



This function will be selected from a main menu and is used to book a passenger on a flight. In addition, any changes to the passenger personal information or their flight numbers can be modified using the Booking function. The passenger refund function can be accessed in case a full refund is required . If a passenger is booked on multiple flights and wishes to change his/her reservation or would like a brief description of their itinerary then it is best to use the passenger query screen as the booking screen is used only to modify one particular flight's information for a customer or to modify the passenger's personal information.


Completing Fields


When the agent selects this function, they will be presented with a screen that will allow them to enter all information needed to book a flight. Most information will be entered with the keyboard in the appropriate field. The agent can move to the next entry field with the tab key or move back with Shift-tab. The agent also can move to any field or window with the mouse.


All fields will have an association title that will be a short description of the field. The fields will be arranged in order of importance so that the agent can follow the booking process in a logical and convenient fashion. The booking screen ( or form ) will require the Name and Complete Address from the customer. The agent will enter all possible fields. Some fields will not be essential to booking a customer and those fields will be identified as such (perhaps underling unessential fields e.g. special requirements).


All fields are considered input and this includes passenger first and last name, complete address and phone number, class, destination, date and time of departure,arrival time, seating arrangement, and any special requirements the passenger may have, e.g. wheelchair access.



Destination and Departure



The destination and departure fields are used slightly differently than the other fields. The destination and departure fields are actually a list of possible choices the agent may select from.


A departure city must first be selected before any departure information will be displayed. This is primarily so that the agent only has to search through relevant data to pick an appropriate flight from that city. Depending on the location of the booking agent a default departure point is set on the computer in order to speed up the booking process. The departure city will be changed manually by the agent if a return flight is to be booked. By using the scroll buttons the agent has a pop up menu of lists of cities in which they choose as a destination or departure point. The agent can also fill in the month and day of departure to further minimize the list of possible departure times. These departure times are a function of the system administration and are out of the hands of the booking agent. The booking agent has no control over when a departure time may be. The agent will manually type in the month and day of the flight. (ie Mar 12 to signify March the 12th) It has been decided that the year can be easily added in a later revision of the software, if needed.


After the departure city, destination city and date boxes have been filled, the agent may now check the Flights List Box and scroll the through the possible flights for that particular day given the departure and destination cities.


There are 3 columns per entry in the Flights list box: Flight number, Departure time and Arrival time. The passenger is then questioned as to which time is best for them to depart. If more flights are listed than there is space, then the agent may use the scroll buttons next to the box to scroll through the matching flights for that day. The agent then chooses the desired flight by clicking it. Once the flight has been chosen, the Seating List Box, which has been blank up to this point is filled in.


Inside the Seating List Box exists a schematic of the seating arrangement for the plane. Each seat consists of a row and column identification letter or number. For example Seat 1a would signify the first row and the a would signify the first column a, which in all cases signifies a window seat. The remaining columns are specified as window, center, or aisle seats in the System Administration add aircraft screen.


Row numbers have been predefined in the administrative section to signify the class of the seat. Please refer to that section of this document for further details.


Please refer to the next section of the document for a complete description of the seat selection process.



Personnel Passenger Information


Personal Passenger Information may be entered before seat selection or after it, depending on the agent. The agent generally will start with the passenger's name. The first box leaves 20 character spaces for the agent to enter the first name of the passenger. The next box is the Sir Name or Last Name box which will handle names up to 20 characters long as well.


The address box will handle entries up to 25 characters long. It will leave enough room for a person to provide an apartment number and street address or a box number and postal station specification


The agent will then fill in the City box which will also be 15 characters long followed by the province box which will be 15 characters as well.


The Postal Code box is right after the Province box and will be 8 characters long.


The passenger's contact phone number will be entered after the Postal Code. It will consist of a three digit area code enclosed in parentheses plus a seven digit local number with a dash in between the third and fourth digits. The area code may not be omitted, but the local area code will be provided as a default.


Below the phone number appears the Special box. The Special box is up to fifty characters long. In the special box the booking agent may enter any special needs the customer may have. This information will be forwarded to the flight attendents on the flight that the passenger will be flying on. The special box may inform the flight crew of a variety of special conditions or needs the passenger may have. For example, if the passenger is a vegetarian then the food catering companies can be informed ahead of time of the number of vegetarian meals they will be required to prepare for that flight. If the passenger is under age than the flight attendents will be made aware of this fact and check on the child frequently during the flight and special arrangements can be made for the ground agents to accompany the individual to a guardian at either end of their trip. Other special needs the passengers may have include access to a wheel chair or possibly heath conditions that the flight crew may need to be aware of during the flight so that they may increase the comfort of the passenger and the rest of the people on that plane.


Class,Seat Preference, and Seat Number are below the Special box in the window and are described in detail in the seat selection section.


Below Seat Number lies one of the most important data fields of all, the Ticket Number.

The ticket number is a six digit number that is the primary key for most of the functions in the program. Each passenger is given a distinct ticket number for each booking. The ticket number does not appear until the agent is finished with the booking and presses the add button. By pressing the add button the agent is telling the system that he/she is indeed making a genuine booking and the system responds by issuing a ticket number and storing the passenger information and booking information. The ticket number will appear on the screen at this time. Each reservation will have its own ticket number. ( ie each reservation may contain several flights one of which may be a return flight) The ticket number can not be modified by the agent and can only be changed by re-booking the passenger.



Functional Buttons

The functional buttons are used to manipulate the data entered by the agent at the time of booking or sometime after. They are listed below.



Clear

If the passenger decides to cancel the reservation BEFORE the add key is pressed then the clear button is used. After the passengeršs file is completed or modified and a new personšs file is to be entered or modified then the clear button is used as well.


If the user wishes they may clear the screen so all entries are blank. This process will result in the loss of any information that was on the screen previous to clearing. This function would ideally be used when an agent has decided not to book a customer or has made a mistake and starting over clean, would be the most efficient option.


The user can also at any time clear a field by simply placing the mouse over the field and clicking the left button. This would arrange the cursor to reside in that field. The agent can now edit the field normally.


Refund

If the passenger wishes to cancel a reservation then after bringing up the reservation and presses the Refund Button. This removes the reservation and brings the passenger to the refund screen where a 100% or 10% refund is issued.



Add

As described earlier, once the passenger has agreed to the flight time of the trip and all personal information has been entered the Add button is pressed. This enters the booking into the system.



Delete

The delete button is used for an instance where the reservation must be canceled prior to the payment of the ticket . Once the ticket is paid for the refund procedure must be followed for the customer to be de-booked. One example may be if the person has not paid for the booking within the certain time allocated by the airline. In this case the booking is canceled with out a refund issued.



Modify

The modify button is important in that it allows the agent to modify any of the fields AFTER the add button has been pressed. The personšs information file may be brought up from the passenger query screen. The passenger query screen has a list box that allows for scrolling through names alphabetically . Once the personšs information has been displayed the modify button in the passenger query screen transfers the information to the booking screen where it can be modified. If the ticket number is known then the file may be accessed directly from the booking screen. Please note using modify from the booking screen only permits changes to the flight information for that particular flight. The agent simply makes the requested changes and presses the Modify button to save the changes.



Help Function

The agent has the option to search the help function if they have any problems. The help function will be categorized according to the form the agent is currently in, but will also allow the user to browse all possible help topics. The help topics will be arranged so as to be of the most benefit to the agent. The help topic will begin with very basic function and procedure description and as the description increases so will the complexity and depth of the subject. Help topics will include examples and walk-throughs to better accommodate the user's needs.


Confirmation of Booking

If the agent has entered all essential information fields they may proceed with the booking so as to finalize the process. This screen is primarily to confirm that all essential booking information has been entered correctly. If some information has been entered incorrectly the agent can either clear the information or modify it if itšs an existing booking.


If the user presses the add button the reservation is finalized and all information is stored in the programs database. It is assumed at the time of confirmation that all funds have been paid in full or that arrangements have been made to do so.


Many times reservations are made for more than one person at a time. Once the first personšs reservation has been made and saved using the add button the companionšs reservation can be made. Instead of clearing the fields to start from scratch the booking agent may change only the pertinent information. Then a new ticket number would be issued by pressing the add button. Note that an error would come up if the agent hadnšt chosen another seat for the companion.



Example:

The agent would select the Modify booking function from a main menu. They would then be presented with a new screen that will allow them to enter all needed information.

The agent would enter the passenger's first name, then the last name, moving through each field with the tab key. The agent will continue to enter information in this fashion until they reach the destination field.

This field presents a list of all possible destinations. The agent has many options available to select a destination. They could scroll down the list using the arrow keys or mouse until the desired destination was selected. Or they could start typing the first characters of the destination until the one the agent wants is selected (highlighted). When a destination is selected, pressing tab will place the cursor in the next field.

Proceeding to the next field will allow the program to make a list of all departure dates for that destination. So if dates and times for other destinations are required the agent must select a different destination accordingly. The agent can move to the destination list box with the mouse or by pressing the shift-tab.

Then the agent would select the Month and day the passenger would like to leave. When these values have been entered a field similar to the destination field will be updated presenting to the agent all possible time and dates the customer can leave on. The agent will pick the seating arrangement for the passenger. The customer will simply choose if they want one of a Window seat, Aisle seat, or center seat and the class they wish to be seated in.

This would bring the agent to a seat selection list that would display all relevant data, including the Flight Number, and Ticket Number. If all information is correct the agent can press the new button to finalize the booking. If any corrections need to be made the agent also has an option to modify the information by using the modify button at the bottom of the screen. If at anytime during the booking, an agent wishes to quit the booking and lose all immediate information, they may do so by pressing the cancel button. This would return them to the main menu.


  • Booking Tests




    Seat Selection



    The booking agent can further accomodate the customer's needs by allowing the customer to choose their own seating position, such as window, aisle, or center seat. Couples, families, or groups can be seated near each other easily, when possible.

    The agent can select the desired seat position from the available seats grid on the booking tab. The grid will identify which columns are window, aisle, and center seats with a W, A, or C above the appropriate columns. The row clss will be identified along the right hand side of the grid, with a 1, 2, or 3. The seats inside the grid will be labelled, such as 1A and 3D. Seats that are already assigned to passengers will be greyed out.

    To select a seat, the booking agent clicks on the desired seat with the mouse pointer. The class and seat number fields on the left will then be filled in. The seat preference field must be filled in by the agent. This allows the passenger's preference to be recorded even though the passenger's request may not be satisified at this time. When the agent issues a boarding pass, and the passenger's preference can be satisified, the agent may change the seat assignment.




    General Information Query


    There are two information query available for the user to choose from. The user can query either flight information or passenger information. The query flight information will give the user a list of all the passengers that are booked on the plane along with their ticket numbers.

    The passenger query will give the user information about a passenger such as his ticket number, flight number, address, phone number, etc.

    The user can select the "Flight" or the "Passenger" tab on the top of the menu in order to perform the query flight or query passenger information task. The user may do so by using the mouse and double click on the corresponding box.





    Query Flight Information



    This query function is used to obtain information about a certain flight. For example, an agent might want to find out the date and time the flight is leaving or arriving. Also, the agent might want to see who are currently booked on the plane.

    The function can also be used to retrieve a list of flights that go from a specific departure point to a specific destination on a certain date or some combination of those three (detail will be discussed below). This function will be useful for the booking agents to give out information to their customers about the flexibility of departure dates and times to a desired destination.

    The user can enter this query mode by selecting the "Flight" tab near the top of the screen by a mouse. The query flight information screen will be presented.

    There are three search boxes on the top of the screen. They are "Dep" (short for departure point), "Dest" (short for destination) and "Date". The default of the "Dep" is the first departure point ordered alphabetically of all the available ones in the database. Therefore, it will most likely start will the character 'a'. Similarly, the default of the "Dest" wil most likely be a destination that starts with the character 'a'. Also, each of the "Dep" and the "Dest" boxes contains a pull down arrow key. When the arrow key is being clicked, a list of departure points will be showed in alphabetical order. The user can go up and down the list by moving the scroll bar. The default for "Date" is the current date represented by three characters for month, a space, and a 2 digit number for day. There is no pull down arrow key for this box.

    On the left hand side of the screen, there are flight information fields describing a specific flight. These fields are "Make", "Model", "Capacity", "Available" (1st, 2nd, 3rd), and "Flight number". These fields are orginally greyed out and are blank. The only exception for this is the "flight number". This is because the user may wish to search for a flight information by the corresponding flight number.

    On the right hand side of the screen, there are two listboxes. One is labelled "Flights". There are three columns within this listbox. The columns are: flight numbers, departure times, and arrival times of the corresponding flights. There is a scroll bar on the left of the window in which a user may scroll up and down the window by using a mouse. The default of this window will be blank with the scroll bar grey out. The other listbox labelled "Passenger List" which is located below the "Flights" listbox. It contains a list of passenger names and their ticket numbers. Again, there is a scroll bar on the left of the window and the default will be blank.

    Below the "Flight Number" and the "Passenger List" listboxes are three buttons. The one on the left hand side is labled "Clear", the middle is labelled "Boarding Pass", and the one on the right hand side is "Cancel".

    The "Clear" button allows the user to clear all the information that was previously entered on the screen. In other words, "Clear" will cancel the current search and start a new one. If a search is successful and the user wants to do another search, he or she can hit "Clear" to clear the search result and continue with a new search.

    The "Boarding Pass" button will bring the user to the "Boarding Pass" window along with the list of passengers transfered from the "Flights" window to the "Boarding Pass" window. This button is useful for checking in passengers to a flight.

    The "Cancel" button will bring the user out of the current screen to a blank screen with only the tabs display. These tabs are "Booking", "Boarding Pass", "Flight", and "Passenger".

    At the very bottom of the screen are three more buttons -- "Add", "Delete" and "Modify". These buttons are greyed out because the query flight information function does not modify any information of the flights. Therefore, when the user first selects the "Flight" option from the top of the menu, the only active boxes are the "Dep", "Dest", "Date" and "Flight Number". The user may search flight information by either a ticket number or the combination of the "Dep", "Dest", and "Date".

    The user may search for information on one specific flight by its flight number. In this case, the user may use a mouse and click on the "Flight Number" entry box so the user can edit the box and start to enter a flight number. When done, the user is expected to press the "enter" key in order to process the request.

    Note that the flight number should be 2 characters followed by a 4 digit numbers.

    If the user searches by flight number and enters a flight number that does not exist in the database, the next closest flight number will be displayed in the "Flights" window. That is, the system will perform a dynamic search on the flight numbers. (i.e. if `Ca1' is entered, the output will be: 'Ca1234', 'Ca1236', 'Ca1238'...) The list of flight numbers that match the first few characters of the flight numbers will be displayed on the "Flights" window.

    This method is very useful in the case that the user does not remember the full flight number. Therefore, the user can just pick one from the list that he or she wants to search by clicking on the number. Then, the field "Flight Number" will be filled.

    Then the information of the corresponding flight will be displayed. This includes departure point, destination, date, make, model, capacity, and available seats for each of the three classes. The pull down arrow keys for "Dep" and "Dest" will be greyed out at this point in time. The flight number and its departure time will be shown on the "Flights" window on the right side of the screen. A list of the passengers' name and their ticket numbers will be displayed on the bottom listbox. There are three columns in this listbox. The heading of the first column is "Last Name", the second column is "First Name" and the last one is "Ticket #". When there are more rows than the window can display, the scroll bar will be activiated so that the user may scroll up and down the window.

    Besides, the user may want to find out:

    (1) all the flights that leave from a specific departure point (on certain date),
    (2) all flights that go to a specific destination (on certain date), or
    (3) all the flights that go from one departure point to a specific destination (and on a certain date).

    The user may perform task (1) by selecting one departure point from the "Dep" list. In order to do this, the user has to click on the pull down arrow key and get a list of departure points. The user may go up and down the list by using the scroll bar. When the desired departure point is found, the user is expected to click on it so it will be hightlighted. Then, the list of all flights that leave that city will be displayed. The date search field is optional. The default for "Date" is the current date. If the user does not modify the "Date" entry field, then the list will contain only flights that leave on that current day. If the user clears the "Date" entry box, then the output will be a list of flights that go to the selected departure point from today to the near future.

    Similarly, the user may perfrom task (2) by selecting one destination from the "Dest" list. Then the list of all flights that go to that specific destination will be displayed.

    To perform task (3), the user has to first select the departure point, as described above, the list of flights that leave on that departure point will be displayed . Then, the user will select a destination from "Dest". In this case, the list will be decreased as all the flights that do not go to that destination will be filtered out. The user may also select the desired date to search.

    In the above cases, only the "Dep", "Dest", "Date", "Flight Number" boxes, the "Flights" fields are active. The rest of the fields and listbox are blank and are greyed out.

    If the user wishes to obtain more information for the flight than is displayed in the "Flights" window, the user may do so by clicking on the flight number and hightlight the row. Then the information for that specific flight will be shown as described above.

    To clear a query, the user may click on the "clear" button.


  • Query Flight Tests



    Query Passenger Information


    This function is used to obtain information about a certain passenger. For example, an agent might want to find out the list of flights that a passenger has booked. They might also want to know the seat number, class and/or the seat position (window, centre or aisle) for a particular passenger.

    The query function might be useful for the booking agent in the case that a customer wants to confirm his/her flight(s) or he/she forgot his/her flight number, seat number, etc.

    The user can enter this query mode by selecting the "Flight" box on the top of the menu by a mouse. Then the query flight information screen will be presented.

    Again, there are three search boxes on the top of the screen. They are "Dep" (short for departure point), "Dest" (short for destination) and "Date". Note that there are no scroll bars for any of these boxes. The default for these boxes is blank.

    On the left hand side of the screen, there are boxes representing the information for one customer. They are "First Name", "Last Name", "Address", "City", "Province", "Phone", "Special", "Class" (1st, 2nd, 3rd), "Seat Pref" (Window, Aisle, Centre), "Seat Number" and "Ticket Number". The default for these boxes are blank and the words are grey out. The exception are the "First Name", "Last Name" and the "Ticket Number". This is because those are the search term in which the user is expected to enter the search key from there.

    On the right hand side of the screen are two small windows. One is labelled "Name Index". There are two columns in this window. One is a list of last names and the other is the list of first name. There is a scroll bar on the left of the window in which a user may go up and down the window with the mouse. The default of this window will be blank with the scroll bar greyed out. Below the "Name Index" window is the "Flights" window, there are three columns in which the first one contains a list of the flight numbers and the middle one contains a list of departure times and the last column contains a list of arrival times. The departure time and the arrival time is base on a 24 hours clock. Again, there is a scroll bar on the left of the window and the default will be blank.

    Below the field "Ticket Number" and the bottom window, there are two buttons. One is labled "Clear", the other is "Cancel". The "Clear" button allows the user to clear all the information that was previouly entered. This option is useful in the case that the user might have entered the wrong inputs or when the user wants to clear everything after a search. The "Clear" button allows the user to clear the record so every field will be set to the default.

    At the very bottom of the screen, there are three button -- "Add", "Delete" and "Modify". The "Add" and "Delete" button will be greyed becasue the query passenger information function does not allow the user to add or delete any information. The add function can be performed by the "Booking" function. However, the "Modify" button is activiated. This is necessary because a user may want to modify or delete a record, he/she may do so by first searching for the record, then, choose "Modify". The information will then automatically be transferred to the "Booking" function and the user can modify or delete the record.

    Therefore, when the user first selects the "Passenger" option from the top of the menu, the only active boxes are the "First Name", "Last Name" and the "Ticket Number".

    The user may search for information on one specific customer by the customer's ticket number. In this case the user may use a mouse and click on the "Ticket Number" box so the user can edit the box and start to enter a ticket number. When done, the user is expected to press the "enter" key in order to process the request.

    The system will perform a dynamic search on the ticket number. (i.e. if `12' is entered, the output will be: '120000', '120001', '120002'...) The list of ticket numbers that match the first few numbers of the ticket numbers will be displayed in the "Name Index" list box.

    This method is very useful in the case that the user doesn't remember the full ticket number. Therefore, the user can just pick the one from the list that he/she wants to search on by clicking on the number. Then, the field, "Ticket Number" will be filled and the "Flights" window will be cleared.

    Note that the ticket number should be exactly six digit long. If the correct input is entered, then the information of the corresponding customer will be displayed. This includes the "First", "Last Name", "Address", "City", "Province", "Phone", "Special", "Class" (1st, 2nd, 3rd), "Seat Pref" (Window, Aisle, Centre), "Seat Number" and "Ticket Number". Also, the "Dep", "Dest" and "Date" of the specific flight according to the ticket number will be displayed. The last name and first name of the customer will be displayed on the upper box which labelled "Name Index" on the right hand side. The flight number, departure time and the arrival time will be displayed on the bottom window which labled "Flights".

    Also, the user may want to search for a customer by name. This is useful in the case that the customer has mutiple flights.

    To search by name, the user may enter:

    (1) the customer's first name, or
    (2) the customer's last name, or
    (3) both the customer's first name and last name.

    The system will perform dynamic search on the inputs. Thererfore, the window will display all the names that match each character the user input. (i.e. if `An' is entered, the output will be: 'Andy', 'Anna', 'Annie'...)

    If the user enters only the first name or only the last name of a customer, then, a list of names of the input first name or last name will be displayed on the window labelled "Name Index".

    If the user enters both the first and last name of the customer, then the list will decrease down to only the names that match both of the first name and last name.

    Then, all the personal information on the left hand side of the screen will be filled. This includes: the "First Name", the "Last Name", the "Address", the "City", the "Province", the "Phone" and the "Special". If the customer has booked only one flight, then the rest of the information will be filled. However, if the customer has booked mutiple flights, then the rest of the information will not be displayed until the user hightlights one flight number on the "Flights" table. In other words, there will be a list of flights showed in the "Flights" window for that particular person and the user has to select one flight number by mouse in order to obtain further information (i.e. class, seat pref, seat number, ticket number, destination, departure point, date)


  • Query Passenger Tests




    Issue Boarding Passes


    This function is used to generate boarding passes prior to the time of departure. When passengers check in at the airport, and after confirmation on seat reservations on the plane, boarding passes will be issued.

    Before the agent can check passengers in, he or she must retrieve a list of passengers that are booked on the departing plane. To get this list of passenger names and ticket numbers, the agent needs to select the tab called "Flights". While in the "Query Flights" screen, he or she will search for the flight number that is departing. The instructions to search for a flight are given in detailed in the "Query Flight Information" section described above.

    After a successful search for the flight number, a list of all passenger names will appear in a list box accompanied by the associated ticket numbers. This list will be sorted by passengers' last names and displayed in this fashion:

    	_________________________________________________
    	| Last name	| First name	| Ticket #	|
    	|-----------------------------------------------|
    	| Brown		| Steve		| 123566	|
    	| Smith		| John		| 546742	|
    	| ....		| ....		| ....		|
    	-------------------------------------------------
    

    There will be a button at the bottom of the screen called "Boarding" in which the agent must select it to bring him or her to the "Boarding Passes" window. When the agent sees the "Boarding Passes" window show up on the screen, he or she will also see that the same list of passenger names and their ticket numbers are also transfered to this screen in a scrollable list box.

    Brief description of "Boarding Pass" screen layout:

    Along the top of the "Boarding Pass" screen, there will be fields of departure point, destination, and date. These fields are automatically filled in by the computer system after the agent has selected the "Boarding Pass" button from the "Query Flight" screen. Hence, the departure point and destination will correspond to the flight number that was searched for. The date will of course be current date because the flight is departing soon on the current day.

    On the left side of the screen, there will be passenger information fields. These fields include:


    On the right side of the screen, there will be two scrollable list boxes displayed vertically. One list box contains names and ticket numbers of passengers that are booked on the departing plane. The other list box is displayed below the passenger list and is a scrollable grid representing the seatings on the plane.

    At the very bottom of the screen there are four buttons labelled "Clear", "Issue Pass", "Refund", and "Cancel".


    Brief description of the functionality of buttons:

    "Clear" will clear all of the passenger information fields.

    "Issue Pass" will print out a boarding pass.

    "Refund" will issue a check and bring the agent to the booking screen.

    "Cancel" will bring the user to a blank screen containing only the tabs:

    Booking, Boarding Pass, Query Flight, Query Passenger.


    ** Note:

    Since the booking system allows a flight to be overbooked by 15%, that 15% overflow passengers are not allowed to make reservation on seats. Therefore, those do not have reserved seats must wait until 15 minutes prior to the time of departure to request boarding passes. Those with reserved seats can obtain their boarding passes at time of check in.

    Issue boarding pass within the "Boarding Pass" screen:

    The process of issuing boarding passes involves the agent to select a passenger's name from the passenger list displayed on the right side of the screen. If there are identical names, the agent can look at the ticket number corresponding to the matched names and since the ticket number is unique, if it matches, the agent can be sure that he checks in the right person. After a passenger is selected, the left side of the screen will display the passenger's information, that is, the information fields that were blank now automatically filled with the correct information by the computer.

    In case the agent accidentally selects the wrong name from the passenger list, he or she can match the name of the ticket holder and the name displayed in the passenger information field and also the ticket number before he or she issues a boarding pass. If the both matches, the agent can print out the boarding pass, or else, he or she can cancel the request by pressing the "Clear" button. This will only clear the passenger information fields on the screen and not the passenger list. Now, the agent can re-select the passenger name, and hopefully, this second time around he or she will select the right one.

    After confirming that the key information on the screen matches those on the passenger's ticket, the agent can press the button called "Issue Pass". The boarding pass will be printed and given to the current check in passenger.

    The information on the boarding pass will include:

    If the agent presses the button "Issue Pass" before he or she assigns a seat to one of the 15% overbooked passengers, the computer will pop up an error message saying, "Please assign a seat first." The agent will need to press the button "OK" at the bottom of the error message to let the computer know that the message has been read. The computer will then remove the error message and let the user back to the "Boarding Pass" screen with the previous passenger information displayed.

    After the agent has requested boarding pass, the passenger information fields will be cleared so that the agent can select the next passenger name from the passenger list and the computer will fill in the information fields and so on. This step is repeated until all passengers have checked in, or the plane is full, or when it is time to depart.

    How seats are assigned and updated:

    As mentioned above, on the right side of the screen and below the passenger list, there will also be a scrollable grid which represents the seating on the plane. Each square of the grid will have a number, which is a seat number. Those seats that are taken or checked in by someone will be grayed out. The agent can only select or assign the seats that are not grayed out. The agent can select a seat by a mouse double click on one of the seat number in the grid. When a seat is selected, that seat number will appear on the seat number field on the passenger information side of the screen.

    Every seat number on the seating grid will initially be available. ie, none of the seats will be grayed out. Whenever a passenger checks in and a boarding pass is issued, one of available seats will be grayed out. This means that the computer updates the seating grid every time a boarding pass is issued. The seating grid does not show which seat is previously reserved or not. Because of this, even when a plane is not fully booked to 100%, agents cannot re-assign seats to passengers that already have reserved at time of check in unless it is 15 minutes prior to departure time. If the agent does re-assign seatings, then one passenger might take someone else's reserved seat.

    The computer spontaneously updates or confirms the seat reservations for every boarding pass issued. Therefore, during the 15 minutes prior to departure time, the remaining reserved seats which were not confirmed by the computer became available for others to book. According to the number of available seats, those 15% overbooked passengers are then allowed to select their seats during the request of boarding passes. Hence, the agent who issue boarding passes must have the authority to assign or re-assign seats to passengers at the time of issuing boarding passes.



    ** Note:

    While in the "Boarding Pass" screen, the agent can view all the passenger information fields but is unable to modify any of them EXCEPT the seat number and the seat preference. This is done to prevent the agent from assigning a first class seat that has not been confirmed taken to someone who pay for a second class fare. If the agent were allowed to modify the class field then that would definitely change the price of the plane ticket.


  • Boarding Passes Tests






    Refund



    A passenger who cannot get a boarding pass because the plane is full, and hence, cannot board the plane, that passenger will be refunded 10% of the ticket price and will be booked on one of the next flights to their destination. The agent of course will also have the authority to issue refunds to those people. The agent needs to select a name from the passenger list and again match the ticket number if there are identical names and request a refund by clicking on the "Refund" button on the "Boarding Pass" screen. The computer will then calculate the amount of refund and send a message to the accounting department to issue a refund to the passenger.

    After a refund is calculated and issued to the passenger, the computer allows the agent to start rebooking the passenger onto another flight by bringing the agent back to the "Booking" screen with the same passenger's information fields already filled in exept the folowing fields:



    Also on the right side of the "Booking" screen will be a scrollable listbox containing all flights that are still available, ie. not yet booked to 115%, with same destination and departure point. The list will only contain flights that are leaving within the current day. If the passenger wishes to leave on another day, the agent can change the date field on the top right corner of the screen. This will allow the computer to search for a different list of flights that leave on the specified date.

    The list is displayed sorted by time:


    	_________________________________________________
    	| Flight #	| Dept Time	| Arr Time	|
    	|-----------------------------------------------|
    	| sa1234	| 11:45		| 14:45		|
    	| dg1356	| 13:35		| 18:35		|
    	| ....		| ....		| ....		|
    	-------------------------------------------------

    The passenger can then state the time they would like to travel and the agent can simply select the flight number by double clicking on it with the mouse.

    At this point, the computer has filled in the flight number in the flight number field. Also, the blank listbox below the flight listbox now contains a scrollable grid that represents the seating arrangement on the plane. Now the agent must assign a seat to the passenger by selecting a seat from the listbox if not all of them are grayed out. If all of them are, then the flight is fully booked but not yet 115% full. Hence the passenger can request to book on another flight or he or she can be one of the 15% overbooked passenger again.

    The last step to rebook a passenger is to hit the button "Add". This will book the customer on the selected flight and the reserved seatings on that flight will be updated.


    ** Note:

    The agent can change any information on the screen EXCEPT the class field because if this class field changes, the price of the ticket will be changed as well. Also, since this is a re-booking procedure, the passenger has already paid for the ticket and already received a refund of 10%.



    Design Appendix



    Data Dictionary

    Passenger= @ticket number + @last name+ first name + flight number + class
    number + seat position + seat number + address + phone number + special requirement
    (object: represent passenger booked to flight)


    Flight Info= @flight number + @ticket number + source + destination +
    departure date + departure time + seat number + class number + seat position

    ticket number = integer (key attribute of object passenger and flight info 6 digits long)

    last name = string (key attribute of object passenger; max 20 characters ) first name = string (non key attribute of object passenger; max 20 characters) flight number = string + integer
    (non-key attribute of object passenger & key attribute of object flight
    info; 2 characters followed by 4 digit integer)

    class number = ["1"|"2"|"3"]
    (non-key attribute of object passenger & object flight info; 1 indicates first class, 2 second class, and 3 third class )

    address = string of length 25 ( non-key attribute of object passenger )

    city = string of length 20

    province= string of length 15

    postal code= string of length 7

    phone number = integer (non-key attribute of object passenger; should be 10 digits with 3 digit area code first)

    special requirement= string (non-key attribute of object passenger )

    departure = string (non-key attribute of object flight info)

    destination = string (non-key attribute of object flight info)

    departure date = string+ integer (non-key attribute of flight info; of form month ,day ie Jan 30)

    departure time = integer (non-key attribute of object flight info; using 24 hour clock ie. 14:00)

    seat number = integer+letter
    ( 1 or 2 digit number + letter; non-key attribute of object flight info)



    Data Base Tables



    Passenger Table

    Stores personal information on a passenger. It is written by the modify booking tab, and read by all the tabs in the Booking Agent sub-system tabs. Look in the data dictionary for the field definitions and descriptions.


    Booking Table

    Stores information about each passenger booked on a specific flight. It is written by the modify booking tab, and read by all the Booking Agent sub-system tabs. Look in the data dictionary for the field definitions and descriptions.