Title: Project Mocha E-Ticket Airline Reservation System
1Project MochaE-Ticket Airline Reservation System
- Programmers Kevin, Iris, Brad
2Package Structure(Application Organization)
The main package
The database package
The logging package
The model package
The user interface package
The utility package
The utility package
The xml package
The main application class
3Quick Update
- Current class hierarchy contains 17 classes and
growing (predicted 20 30) - Presentation Classes are an extremely high level
view - Current CRCs DO NOT account for anonymous
classes, inner classes, abstract classes and
interfaces - Classes DO NOT account for classes used in the
Java API except by stating Common Java Classes - The methodology used is rapid prototyping, thus
class structure changes with each examination of
the application. Iterative development plan, with
small releases
4The main packageedu.fullerton.cpsc461
ETRS (b) ETRS (b)
starts application closes application displays main frame displays available flights handles search ui handles payment ui handles user help handles about dialog SearchView shows searchui PaymentView shows payment ui SplashWindow shows splash screen (Logger) (HelpView) (AboutDialog) Common Java Classes
5The database packageedu.fullerton.cpsc461.db
ETRSDb ETRSDb
Queries for flight information Queries for Airport information Queries for Common Java Classes
6The model packageedu.fullerton.cpsc461.model
Airplane Airplane
Common Java Classes
7The model packageedu.fullerton.cpsc461.model
Airport Airport
Common Java Classes
8The model packageedu.fullerton.cpsc461.model
AvailableFlight AvailableFlight
Common Java Classes Airplane
9The model packageedu.fullerton.cpsc461.model
Customer Customer
Common Java Classes
10The model packageedu.fullerton.cpsc461.model
FlightSchedule FlightSchedule
Common Java Classes
11The model packageedu.fullerton.cpsc461.model
PaymentForm (b) PaymentForm (b)
contains payment data Common Java Classes
12The model packageedu.fullerton.cpsc461.model
SearchForm (b) SearchForm (b)
contains search data Common Java Classes
13The model packageedu.fullerton.cpsc461.model
FlightTableModel (b) FlightTableModel (b)
contains table data Common Java Classes
14The model packageedu.fullerton.cpsc461.model
Transaction Transaction
Common Java Classes
15The ui packageedu.fullerton.cpsc461.ui.splash
SplashWindow (b) SplashWindow (b)
displays splash screen Common Java Classes
16The ui packageedu.fullerton.cpsc461.ui.view
SearchView (b) SearchView (b)
Displays search ui Handles basic search information validation Handles search for available flights SearchEngine handles searching for available flights SearchEngine handles searching for airports SearchForm (Model) contains Search data ETRSUtil handles input validation and valid date generation Common Java Classes
17The ui packageedu.fullerton.cpsc461.ui.view
PaymentView (b) PaymentView (b)
Displays payment ui Handles basic user information validation Handles credit card authorization CreditCardManager handles credit authorization PaymentForm (Model) contains the PaymentView data ETRSUtil handles input validation Common Java Classes
18The utility packageedu.fullerton.cpsc461.util
ETRSUtil (b) ETRSUtil (b)
Validates user input Name Address City Validates search criteria Validates payment information Common Java Classes
19The utility packageedu.fullerton.cpsc461.util
SearchEngine (b) SearchEngine (b)
Retrieves flights based on search criteria Retrieves airports Retrieves customer information Retrieves transaction information ETRSDb SearchForm Airport Airplane Transaction Customer Common Java Classes
20The utility packageedu.fullerton.cpsc461.util
CreditCardManager (b) CreditCardManager (b)
Communicates with the Credit Card vendors to authorize credit card purchases ETRSDb PaymentForm Book Common Java Classes
21Additional Classes
- Testing
- Package test.edu.fullerton.cpsc461
- All classes have an associated test class
- Test classes have the same name as the class with
Test pre-pended to the beginning of the class
name. - Tests initial methods
- Testing Methodology
- After each development cycle
- Guarantees functionality of the previous cycle