E-Ticket Reservation System CPSC 461 – Software Engineering Professor Holliday

E-Ticket Reservation
System
CPSC 461 – Software Engineering
Professor Holliday
Agenda



Application Overview
Class Diagrams
Use Case Scenarios / Sequence Diagrams (if needed)
Request Available Flights
 Choose Flight or Flights
 Book Flight or Flights


Demo
Application Overview

Language – Java 1.4.1
Swing
 JDBC/ODBC




Database – Microsoft Access
Used JavaDoc comments on all public methods
Used Sun’s Coding Convention

http://java.sun.com/docs/codeconv/
Application Overview




The application allows users to search for available flights,
choose flights, and book flights.
The application credit card validation based on month and 16digit credit card number
The application returns a unique confirmation number with the
users flight information.
There are eight airport with two hubs:

PHX – Phoenix, AZ (HUB) services:




SLC - Salt Lake City, UT
LAX – Los Angeles, CA
COS – Colorado Springs, CO
ATL – Atlanta, GA (HUB) services:



ALB – Albany, NY
BOS – Boston, MA
MIA – Miami, FL
319
853
229
1222
158
625
798
210
918
174
927
1122
1715
Numbers denote
Available Flight Numbers
687
Class Diagrams

Scaled Down Version - Bare Bones
Nine of the Main Classes
 file://C:\projects\461\docs\ETRSClassDiagram2.gif


Complete Version
Fairly big
 File://C:\projects\461\docs\CompleteClassDiagram2.gif
 JavaDoc for the project
 File://C:\projects\461\docs\api\index.html

What does it look like?
Use Case Scenarios – Request Available Flights
Name Requests available flight information
Summary The user provides a destination and dates to the E-Ticket Reservation
System (ETRS). The system inquires the airline database about
available flights and presents them to the customer.
Basic Events Customer
1. Launches ETRS application
3. Selects origination city
4. Selects destination city
5. Selects type of flight (round trip
or one-way)
6. Selects direct or nonstop flights
7. Selects flexible or specific dates
of travel
8. Selects departure date
9. Selects departure time range
System
2. Displays UI for user to search
available flights.
Use Case Scenarios – Request Available Flights
10. Selects return date
11. Select return time range
12. Submit criteria
13. Validates customer data.
Data is valid if customer enters a
start and end cities that the
system provides service to and
valid dates; such that the start
date is not prior to the end date
and vice versa. System only
provides cities that it services
11. Shows list of flights that met
customer’s criteria.
Use Case Scenarios – Request Available Flights
Exceptions Customer
System
1. If search criteria is invalid
system displays error message.
Invalid data is return dates before
departure dates and/or the same
departure airport and arrival
airports
2. User acknowledges the
message.
3. Displays UI with current
criteria, allowing user to modify
desired flight information;
continues at basic event 9.
1. If data is valid and a flight
cannot be found, the system
displays a messages informing
the user that no flights are
available that met the current
criteria.
Use Case Scenarios – Request Available Flights
2. User acknowledges the
message.
3. Displays UI with current
criteria, allowing user to modify
desired flight information;
continues at basic event 9.
Triggers Customer needs flight information.
Assumptions The customer knows travel information dates, and available budget.
Application will display Airports by Airport Code, City and State.
Application provides valid dates, like 28 days in February, 31 days in
December, January, etc.
Preconditions Customer has ETRS application installed.
Postconditions Customer will have a list of flights that met specified travel criteria.
Use Case Scenarios – Choose Flights
Name Choose a flight.
Summary The customer has been presented with options for flights to go to
his/her destination and a list of returning flights (if round trip
travel is selected). The customer chooses a preferred flight. The
application puts the seat(s) on hold, and payment information
becomes available for the user once flights are on hold.
Basic Events Customer
System
1. The customer chooses a
preferred flight or flights.
Flights are chosen by
checking the flights check box
to hold a seat on the flight
2. Requests the chosen flight and
seat(s) be put on hold while
the application is running.
Note: that seats are held by
decreasing the capacity for
selected flights
Basic Events
3. Displays UI for the user to input
payment information once a flight
or flights are put on hold. This is
done by enabling the payment tab
for the customer to input payment
information.
Alternatives User doesn't like the flight or
flights, user can change the criteria
of the schedule (Continue at UseCase: Request flight information)
Exceptions Customer
1. Customer closes application
after flights are held.
System
2. Upon closing the application
releases seats on held flights
Triggers Customer wants hold flights for travel.
Assumptions None
Preconditions Customer has a list of available inbound and outbound flights that meet
there criteria. User received a list of flights with available seats. All
flights remain available while the user decides which flights to select for
travel.
Postconditions Customer will have a flight and seating on hold.
Use Case Scenarios – Book Flights
Name Customer books flight or flights
Summary The application contacts credit card authorization service for payment
approval. The service books the flight or flights on hold, and
returns a confirmation number to the customer with a brief
summary of travel information.
Basic Events Customer
System
1. Displays flight(s) on hold and
enables the payment form.
2. Confirms flight(s) through a
held flight view and inputs
preferred payment
information.
3. Prompts for final purchase
verification.
4. Confirms purchase
5. The application sends the
request to purchase the
ticket(s) (Updates database).
Use Case Scenarios – Book Flights
Basic Events
6. The application provides the
customer with a confirmation
number and displays the
customer’s iternary and wishes
them a good flight.
Alternatives None
Exceptions Customer
1. Customer is not satisfied with
flight arrangement on hold,
he/she will be able to cancel and
reschedule. Continue at UseCase: Request available flights
System
Use Case Scenarios – Book Flights
1. If the customer’s payment
information is declined; the
application displays an error
message and continues at basic
event 1.
Invalid data are empty data, or
incorrect/incomplete credit card
information. All credit cards with
16 digit numbers and expiration
dates later than the current date
are approved.
Triggers Customer wants to purchase flight or flights and seating arrangements
on hold.
Assumptions Credit Card authorization is 100% reliable
Preconditions Customer has placed flight and seating on hold.
Postconditions Customer has confirmation number and valid e-ticket to travel.
Customer’s credit card will reflect the transaction in the next billing
statement.
Demo