Transcript slides

COMS S1007
Object-Oriented Programming
and Design in Java
July 31, 2007
Advanced Topics
• Artificial Intelligence and machine learning
• Software Engineering
– how large software projects are run
• Software design patterns
– how to decide what classes to write
•
•
•
•
More Java GUI and other Swing classes
More Java networking
Java and the Internet (Servlets and JSP)
Enterprise JavaBeans (distributed Java apps)
Final Project Grading
• 75% for the program itself
– It does what you proposal said it would.
– The design of your classes.
– The style of your programming, including
adherence to coding conventions.
– The readability of the code, including
meaningful variable names and good use of
comments throughout.
– The durability of the program. It should not
crash when given invalid inputs from the user.
Final Project Grading
• 15% for robustness and testing
– every public method in your program should
have an "assert" statement that checks that all
input parameters are within certain legal
bounds
– you must choose one class from your
program and write a complete set of unit tests
for all of its public methods (at least two)
Final Project Grading
• 10% for documentation
– a "README" file which describes all of the
classes in your program, what they do, how
they relate to each other, and why you made
the design decisions that you did
– a one page user manual for your application
that describes how to run your program and
how to use it
Final Project Presentation
• Please notify Chris by 5:30pm Monday if you
would like to present on Tuesday Aug 7.
• Your program should have at least 80% of the
functionality working properly.
• 7-8 minutes or so describing what the program
does, the classes you created, how they relate
to each other, and why you made the design
decisions that you did.
• 2-3 minute demo of your program.
Important Dates
• Aug 7
– Final Project presentations (optional, for extra
credit)
• Aug 9
– Final Project due (no extensions!!)
– Final exam (no makeup exam!)