Grading Homework 1

Point Distribution:
Style:
   High-Level Documentation: 5 pts
   Low-Level Commenting: 5 pts
   Design/Architecture: 5 pts
Functionality:
   I/O Correctness: 10 pts
   AND Correctness: 10 pts
   Complexity Correctness: 10 pts
Hand-In:
   Complexity Analysis: 15 pts
   Graphs: 15 pts
   Questions: 10 pts

How:
Your code was checked automatically by a script that fed it different files containing specifically designed lists. These lists were all small and should have been ANDed in less than a second. Thus, if the code ran for longer than 3 seconds, it was terminated and counted as an infinite loop. Core dumps were also noted, and it was observed whether or not these were due to assertions.

Error-Testing:
For error-testing, we checked nine potential errors that could occur in input. The first five are what we considered first priority and more points were awarded for detecting these. The remaining four counted for significantly less points. The e-mailed comments give the names of the tests your code did not find errors on.

  1. outoforder: contains numbers in non-ascending order
  2. zero: contained 0 (zero)
  3. repetition: repeated an integer
  4. noleftparen: no initial left parenthesis
  5. norightparen: no ending right parenthesis
  6. doubleleft: contains two consecutive ('s
  7. doubleright: contains two consecutive )'s
  8. extraleft: contains an extra ( in the middle of the data
  9. earlyend: contains a ) followed by more data and a )

AND-Testing:
For AND-testing, your code was run on a number of situations for each AND method. The e-mailed comments give the name of the test and which method the trouble occurred on.

  1. empty list1 tests: An empty list is anded with a non-empty list
  2. empty list2 tests: A non-empty list is anded with an empty list
  3. genAND: two somewhat similiar lists anded together
  4. delete head: the anding requires deleting the head node of of the first list
  5. fullAND: a list is anded with itself
  6. emptyAND: two disjoint lists are anded together to form an empty list

The lists used for all testing can be found here.

CSE 326 Winter 2002 Home