1. This project is worth 600 points
Due on March
30th
2. The program must include the following 14 items. Each item is worth 25 points.
1. Wrapper classes – Integer AND Double ( with int Value(), double
Value() methods )
2. Relational (==, !=, >, >=, <, <=) and Logical Operators ( &&,
||, !) - At least 5 total
3. One or more “if-then-else” statements
4. One or more “while/for loops”
5. At least ONE interface and THREE classes (one of which MUST be abstract),
not including class Test in “Test. java” – which brings
the total to FIVE.
6. Interaction between all four classes/interfaces (i.e. each class must interact
with AT LEAST one other class (not-including class Test in “Test. java”)
7. An Inheritance hierarchy must be implemented with the student-designed
classes (i.e. not
the action Listener interface)
8. At least one interface must be implemented with student-designed classes.
9. Polymorphism must be implemented with the student designed classes.
10. Class Array List must be used in at least ONE student designed class and
it MUST be traversed through AND accessed via an Iterator.
11. Comments explaining logic and operation of program at “key points”
12. Animation OR Graphical Interface must be implemented
13. Meaningful variable names
14. “javadocs” must created for your project (n.b. each method
should be commented according to javadoc specifications)
With pencil, place a box around each section of code that satisfies a requirement.
Therefore, you should have 13 sections of boxed code that represent the 14
required sections of code. A hardcopy of the javadocs generated for your project
should be placed after the source code printout.
Subtotal = 350 points
3. A TWO-page single-spaced TYPED description and computer generated UML class
diagrams describing your project is due AT THE BEGINNING OF CLASS ON 2/5_____________.
It should outline what your project will do (whether it be a game or some other
program). At this time I will let you know whether the project is too simple
or too complex for a final project. This does not have to be a final design;
you may (and probably will) make design changes. The proposal is worth 50 points.
Subtotal = 400 points
4. A SECOND TWO page single-spaced TYPED description and computer generated
UML class diagrams describing your project is due AT THE BEGINNING OF CLASS
ON __2/13_________. This SECOND proposal should include any changes/additions/deletions
that you make to your first proposal. Do not just submit the first proposal
and few changes . This should be an enhancement to the first proposal. The second
proposal is worth 50 points.
Subtotal = 450 points
5. Some ideas for projects are:
1-Program to Check a Sudoku Solution
2-Frequency Histograms*
3-How Many Letters and Histogram them?
4-Wild About Wildcards UNO
5-Parking Meter(Running @ violating) time left/5,10,25,1.00/
6-15-puzzle 4 x 4 array (1-15 + open index)
7-Bar Code genrator(POS)
8-ATM or CC - Card and transactions
9-Non attacking queen
10-3d Maze
11-Video rental store
12 -Calculator
13-Banking account
14-Ed-line like
15-Vending machine
16-Slot machine
17-Phone Book (310-generator or locator)
18-Hotel reservation
19-Air line ticketing / boarding
20-PVPHS library chick (in/Out)
21-Billing system
22-DMV registration (vehicle)
6. The Final Project is due on your assigned lottery date. ONE HUNDRED
(100) POINTS WILL BE DEDUCTED FOR LATE PROJECTS (per week) .
7. A Powerpoint presentation should be given on your lottery date. The presentation
will be worth 120 points. The presentation shall have, at minimum, the following
slides:
a. Title
b. Description of program operation (or how game is played)
c. Demonstration of Program (Task switch from Powerpoint presentation to your
program using Alt-Tab)
d. UML Diagrams for each class
e. Use of classes/objects in project - elaborate on how classes represent
physical objects in your program (be prepared to justify class names, class
data member names, class method names…)
f. Description of class interaction (be prepared to talk about which classes
create each of the other classes)
g. Description of use of an inheritance hierarchy (be prepared to justify
structure)
h. Description of use of an interface (be prepared to justify its use with
other classes)
i. Description of use of polymorphism (include a code snippet that demonstrates
polymorphism)
j. Special features implemented in program - elaborate on tricks/special things
you did
k. Known bugs in program
l. Citation of “second-party” code used in program (be able to
explain code)
m. Conclusion - Summary of what you thought of writing the program
i. Difficulty level,
ii. "Fun" level,
iii. Your evaluation of the final product,
iv. What you learned (be specific)
n. Questions? (this is simply a slide that says “Questions?” that
keys the audience for any questions they might have)
Subtotal = 570 points
8. Source code and disks should be submitted in a 1” THREE RING BINDER
(see example in class). The items that should be turned in are as follows:
A. Printouts
- Source Code with complete comments and javadocs (printed in landscape mode)
- Computer-generated UML Diagrams
- Powerpoint presentation slides (print 6 slides per page)
B. Disks - include TWO copies of your CD, both of which should include the
following:
- Source Code with complete comments
- javadocs
- Computer-generated UML Diagram
- Powerpoint presentation
DO NOT INCLUDE ANY MISCELLANEOUS FILES FROM ANY OTHER CLASS ON YOUR
DISKS. IF ANY OTHER FILES ARE LOCATED ON THE DISK, IT WILL RESULT IN A 50 POINT
DEDUCTION.
Any deviation from these guidelines will result in a 100 point deduction in
points.
Point Distribution
Project Proposal I 50 points
Project Proposal II 50 points
Requirements 1-14 350 points (disk and printout is required
for full credit)
PowerPoint Presentation 120 points (disk and printout is required
for full credit)
Progress sheet 30 points (this is a weekly check on your project
by me)
Total points 600 points
Pointers for your final project:
1. START EARLY!! Don’t wait until the last week to begin your project!!
2. Make sure you have all printouts on the presentation day!!
3. Make sure you have MANY copies of your disk with PowerPoint presentation,
source code and executable file (you can never have too many copies).
4. Test your program on the presentation computer before the presentation
date.
5. Use of block comments ( /* */ ) for commenting large sections of code.
6. Using System.out.println statements to display values during the debugging
process.
7. MAKE BACKUPS OF YOUR WORK!!
8. And, of course,…
HAVE FUN :-) !!