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
© Copyright 2024