Project Mocha E-Ticket Airline Reservation System Programmers: Kevin, Iris, Brad.

21
E-Ticket Airline E-Ticket Airline Reservation System Reservation System Programmers: Kevin, Iris, Programmers: Kevin, Iris, Brad Brad

Transcript of Project Mocha E-Ticket Airline Reservation System Programmers: Kevin, Iris, Brad.

Page 1: Project Mocha E-Ticket Airline Reservation System Programmers: Kevin, Iris, Brad.

Project MochaProject MochaE-Ticket Airline Reservation SystemE-Ticket Airline Reservation System

Programmers: Kevin, Iris, BradProgrammers: Kevin, Iris, Brad

Page 2: Project Mocha E-Ticket Airline Reservation System Programmers: Kevin, Iris, Brad.

Package StructurePackage Structure(Application Organization)(Application Organization)

The main package

The database package

The logging packageThe model package

The user interface packageThe utility packageThe utility package

The xml package

The main application class

Page 3: Project Mocha E-Ticket Airline Reservation System Programmers: Kevin, Iris, Brad.

Quick UpdateQuick Update

Current class hierarchy contains 17 classes and Current class hierarchy contains 17 classes and growing… (predicted 20 – 30)growing… (predicted 20 – 30)

Presentation Classes are an extremely high level viewPresentation Classes are an extremely high level viewCurrent CRCs DO NOT account for anonymous classes, Current CRCs DO NOT account for anonymous classes, inner classes, abstract classes and interfacesinner classes, abstract classes and interfacesClasses DO NOT account for classes used in the Java Classes DO NOT account for classes used in the Java API except by stating “Common Java Classes”API except by stating “Common Java Classes”

The methodology used is rapid prototyping, thus class The methodology used is rapid prototyping, thus class structure changes with each examination of the structure changes with each examination of the application. Iterative development plan, with small application. Iterative development plan, with small releasesreleases

Page 4: Project Mocha E-Ticket Airline Reservation System Programmers: Kevin, Iris, Brad.

The main packageThe main packageedu.fullerton.cpsc461edu.fullerton.cpsc461

ETRS (b)ETRS (b)

•starts applicationstarts application•closes applicationcloses application•displays main framedisplays main frame•displays available displays available flightsflights•handles search uihandles search ui•handles payment uihandles payment ui•handles user helphandles user help•handles about dialoghandles about dialog

•SearchView shows SearchView shows searchuisearchui•PaymentView shows PaymentView shows payment uipayment ui•SplashWindow shows SplashWindow shows splash screensplash screen•(Logger)(Logger)•(HelpView)(HelpView)•(AboutDialog)(AboutDialog)•Common Java ClassesCommon Java Classes

Page 5: Project Mocha E-Ticket Airline Reservation System Programmers: Kevin, Iris, Brad.

The database packageThe database packageedu.fullerton.cpsc461.dbedu.fullerton.cpsc461.db

ETRSDbETRSDb

Queries for flight Queries for flight informationinformation

Queries for Airport Queries for Airport informationinformation

Queries for Queries for

Common Java ClassesCommon Java Classes

Page 6: Project Mocha E-Ticket Airline Reservation System Programmers: Kevin, Iris, Brad.

The model packageThe model packageedu.fullerton.cpsc461.modeledu.fullerton.cpsc461.model

AirplaneAirplane

Common Java ClassesCommon Java Classes

Page 7: Project Mocha E-Ticket Airline Reservation System Programmers: Kevin, Iris, Brad.

The model packageThe model packageedu.fullerton.cpsc461.modeledu.fullerton.cpsc461.model

AirportAirport

Common Java ClassesCommon Java Classes

Page 8: Project Mocha E-Ticket Airline Reservation System Programmers: Kevin, Iris, Brad.

The model packageThe model packageedu.fullerton.cpsc461.modeledu.fullerton.cpsc461.model

AvailableFlightAvailableFlight

Common Java ClassesCommon Java Classes

AirplaneAirplane

Page 9: Project Mocha E-Ticket Airline Reservation System Programmers: Kevin, Iris, Brad.

The model packageThe model packageedu.fullerton.cpsc461.modeledu.fullerton.cpsc461.model

CustomerCustomer

Common Java ClassesCommon Java Classes

Page 10: Project Mocha E-Ticket Airline Reservation System Programmers: Kevin, Iris, Brad.

The model packageThe model packageedu.fullerton.cpsc461.modeledu.fullerton.cpsc461.model

FlightScheduleFlightSchedule

Common Java ClassesCommon Java Classes

Page 11: Project Mocha E-Ticket Airline Reservation System Programmers: Kevin, Iris, Brad.

The model packageThe model packageedu.fullerton.cpsc461.modeledu.fullerton.cpsc461.model

PaymentForm (b)PaymentForm (b)

•contains payment datacontains payment data Common Java ClassesCommon Java Classes

Page 12: Project Mocha E-Ticket Airline Reservation System Programmers: Kevin, Iris, Brad.

The model packageThe model packageedu.fullerton.cpsc461.modeledu.fullerton.cpsc461.model

SearchForm (b)SearchForm (b)

•contains search datacontains search data Common Java ClassesCommon Java Classes

Page 13: Project Mocha E-Ticket Airline Reservation System Programmers: Kevin, Iris, Brad.

The model packageThe model packageedu.fullerton.cpsc461.modeledu.fullerton.cpsc461.model

FlightTableModel (b)FlightTableModel (b)

•contains table datacontains table data Common Java ClassesCommon Java Classes

Page 14: Project Mocha E-Ticket Airline Reservation System Programmers: Kevin, Iris, Brad.

The model packageThe model packageedu.fullerton.cpsc461.modeledu.fullerton.cpsc461.model

TransactionTransaction

Common Java ClassesCommon Java Classes

Page 15: Project Mocha E-Ticket Airline Reservation System Programmers: Kevin, Iris, Brad.

The ui packageThe ui packageedu.fullerton.cpsc461.ui.splashedu.fullerton.cpsc461.ui.splash

SplashWindow (b)SplashWindow (b)

displays splash screendisplays splash screen Common Java ClassesCommon Java Classes

Page 16: Project Mocha E-Ticket Airline Reservation System Programmers: Kevin, Iris, Brad.

The ui packageThe ui packageedu.fullerton.cpsc461.ui.viewedu.fullerton.cpsc461.ui.view

SearchView * (b)SearchView * (b)

•Displays search uiDisplays search ui•Handles basic search Handles basic search information validationinformation validation•Handles search for Handles search for available flightsavailable flights

•SearchEngine handles SearchEngine handles searching for available searching for available flightsflights•SearchEngine handles SearchEngine handles searching for airportssearching for airports•SearchForm (Model) SearchForm (Model) contains Search datacontains Search data•ETRSUtil handles input ETRSUtil handles input validation and valid date validation and valid date generationgeneration•Common Java ClassesCommon Java Classes

Page 17: Project Mocha E-Ticket Airline Reservation System Programmers: Kevin, Iris, Brad.

The ui packageThe ui packageedu.fullerton.cpsc461.ui.viewedu.fullerton.cpsc461.ui.view

PaymentView* (b)PaymentView* (b)

•Displays payment uiDisplays payment ui•Handles basic user Handles basic user information validationinformation validation•Handles credit card Handles credit card authorizationauthorization

•CreditCardManager CreditCardManager handles credit handles credit authorizationauthorization•PaymentForm (Model) PaymentForm (Model) contains the contains the PaymentView dataPaymentView data•ETRSUtil handles input ETRSUtil handles input validationvalidation•Common Java ClassesCommon Java Classes

Page 18: Project Mocha E-Ticket Airline Reservation System Programmers: Kevin, Iris, Brad.

The utility packageThe utility packageedu.fullerton.cpsc461.utiledu.fullerton.cpsc461.util

ETRSUtil (b)ETRSUtil (b)

•Validates user inputValidates user input• NameName• AddressAddress• CityCity•Validates search criteriaValidates search criteria•Validates payment Validates payment informationinformation

Common Java ClassesCommon Java Classes

Page 19: Project Mocha E-Ticket Airline Reservation System Programmers: Kevin, Iris, Brad.

The utility packageThe utility packageedu.fullerton.cpsc461.utiledu.fullerton.cpsc461.util

SearchEngine (b)SearchEngine (b)

Retrieves flights based Retrieves flights based on search criteriaon search criteria

Retrieves airportsRetrieves airports

Retrieves customer Retrieves customer informationinformation

Retrieves transaction Retrieves transaction information information

ETRSDbETRSDb

SearchFormSearchForm

AirportAirport

AirplaneAirplane

TransactionTransaction

CustomerCustomer

Common Java ClassesCommon Java Classes

Page 20: Project Mocha E-Ticket Airline Reservation System Programmers: Kevin, Iris, Brad.

The utility packageThe utility packageedu.fullerton.cpsc461.utiledu.fullerton.cpsc461.util

CreditCardManager (b)CreditCardManager (b)

Communicates with the Communicates with the Credit Card vendors to Credit Card vendors to authorize credit card authorize credit card purchasespurchases

ETRSDbETRSDb

PaymentFormPaymentForm

BookBook

Common Java ClassesCommon Java Classes

Page 21: Project Mocha E-Ticket Airline Reservation System Programmers: Kevin, Iris, Brad.

Additional ClassesAdditional Classes

TestingTesting Package test.edu.fullerton.cpsc461Package test.edu.fullerton.cpsc461 All classes have an associated test classAll classes have an associated test class Test classes have the same name as the class with Test classes have the same name as the class with

“Test” pre-pended to the beginning of the class name.“Test” pre-pended to the beginning of the class name. Tests initial methodsTests initial methods

Testing MethodologyTesting Methodology After each development cycleAfter each development cycle Guarantees functionality of the previous cycleGuarantees functionality of the previous cycle