Programming Assignment 1 Grading:
--------------------------------------------------------------------------------
First, create a grading directory (e.g., in your private CS directory) and
copy the testOne script to your grading directory.
You may need to run the command: chmod a+x testOne
to make it executable.
For each student:
1) Create a subdirectory for that student within your grading directory, e.g.,
mkdir Student_Annie
2) Download the student's submission from the Learn@UW Program 1 dropbox into
the student subdirectory
3) Go into the subdirectory and unzip the file
cd Student_Annie
unzip Program*.zip
4) If the student has any classes in addition to CustomerDatabase.java and
InteractiveDBTester.java, you will need to rename these by hand.
5) From your grading directory, run the testOne script giving it the name of
the student's subdirectory
testOne Student_Annie
This will do the following:
- create subdirectories inside the student's subdirectory
JAVA/ - containing appropriately renamed CustomerDatabase and
InteraactiveDBTester files from which to run the tests
ERR/ - containing the output of diff'ing student results from expected
results
- compile and run tests, displaying some info about compiling to the
console and saving results from running tests to files
- the CustomerDatabaseTester is used to test the student's CustomerDatabase
class
- the student's program is tested using the files below (if the student's
InteractiveDBTester doesn't compile, the script tests it with the
solution InteractiveDBTester)
- the student's InteractiveDBTester is tested with our CustomerDatabase
(which can help identify inappropriate interactions between the two)
Only input3 is tested here.
Test files and user input
input1.txt - input file of 5 customers, 5 products, no tie for most popular
sf1.txt - tests search and find (as well as i)
d1.txt - tests discontinue (followed by s, f, and i)
r1.txt - tests remove (followed by s, f, and i)
case1.txt - tests case insensitivity with s, f, d, and r
input2.txt - input file of 10 customers, 6 products, ties for most popular
i2.txt - tests i, removing 5 most popular products followed by i
input3.txt - sample input provided to students
user3.txt - user input for sample
6) Look through the ERR subdirectory to see how the student's output differs
from our input
7) Make sure to look at the student's code as well (for style and
documentation, among other reasons).
Comments to add to student's gradesheet (as an overall comment):
Good job!
Note: for each top-level part (like CustomerDatabase class) that a student gets
completely correct, make sure to add the comment:
Good job!
so the student's gradefile contains some feedback for that part
Overall Comments:
Warning: please try to correct the compiler warnings in the future
Warning: you should not throw the errors after catching them in this case
Style and documentation:
Comments:
Good commenting!
Good coding style!
Warning: file header comments missing some information
Warning: missing some class/method header comments
Warning: some class/method header comments are not javadoc style
Warning: use more comments within methods
Warning: use more vertical whitespace
Warning: use more horizontal whitespace
Warning: some indentation is inconsistent
Warning: some lines are longer than 80 characters
Warning: place file header comments before import statements
Warning: avoid excessive vertical whitespace
Warning: make sure to use @return statements in your javadoc
Warning: some class/method header comments are missing some information
Warning: use the file header format given