QuickNotes™ 
Program Analysis, Part I
Correctness: Does the program work correctly and does what it is suppose to do.
Testing verifies the correctness of a program.
In isolation: testing individual modules
Boundary: checking the program with maximum and minimum values allowed and values larger and smaller than max and min.
Integration: Combining modules together and testing them to make sure they work together correctly.
Testing techniques: White Box and Black box testing are most common methods.
Types of errors: Syntax, Logical, and Run time.
Debugging means finding and correcting errors in a program.
Error handling: Defensive programming to prevent errors before they cause any problems, Exceptions, what to do if an error occurred. Java has many exception handlers built in.













