CSC 172
Homework 3

Assigned Oct 26, due Nov 21?

Develop a computerized address book that allows the user to add records (with name, address, phone number, and e-mail address), search for records, delete records, save to disk, open a disk file, etc. We discussed in class on Oct. 26 how we want this thing to look, and eventually settled on a tabular display with columns for name, address, phone number, and e-mail address; each row of the table corresponds to an individual in the address book. An "add record" button (or menu selection) will add a blank record, into which the user can type data; the user can likewise type data into an existing record to change it.

As usual, don't try to do this all at once. Pick one "baby step" at a time, and make sure it compiles, runs, and passes its tests before you go on to another feature. And always keep in mind that I might change the assignment slightly on the day that it's due; prepare for changes.

Every "interesting" method in your program should, if possible, be accompanied by a "testing" method (I recommend using JUnit) that runs various test cases on it and indicates whether it passed all its tests. (Some methods don't lend themselves to this kind of testing, in which case you should describe, in English, how you would test them and tell whether they were working correctly.)

While you work on this program, keep an error log recording mistakes you make. For each one, write down

  1. symptoms, or how you discovered that something was wrong;
  2. diagnosis, or what you had done wrong to cause the problem;
  3. treatment, or how you fixed it; and
  4. prevention, or what you might do in the future to avoid making the same mistake again. (If all you have to say here is "be more careful," don't bother.)
You may do this using the PSP forms, or (if you prefer) a plain text file or on paper.

Grading standards

TO BE FILLED IN
Last modified:
Stephen Bloch / sbloch@adelphi.edu