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
– 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
• Aug 9
– Final Project due (no extensions!!)
– Final exam (no makeup exam!)