Project 3 - Grading Scheme


You can use the following guidelines to interpret your scores. The total points is distributed and graded under Execution (40%) and Code (60%). The meaning and distribution of marks in each category is given below.

Execution (40 points)

Here, the source code submitted was (without looking into the code) compiled and run with two test files, one containing a valid expression and the other an invalid expression. (These two test files can be found on the file server in the "project3_solution" folder. They are named "a" and "b.") In this category, marks were deducted in the following way:
 
       * Not Compiling     		 	 -40  
       * Incorrect output		   up to -30
       	 * No output
       	 * File contents not printed
	 * File contents partially printed or printed incorrectly
	 * Incorrect numerical result for valid expression
	 * Error message printed for valid expression
	 * Numerical result printed for invalid expression
	 * No error message printed for invalid expression
       * More than 3 files on disk		  -5
       * Files named incorrectly		  -5
       * No program listing turned in		  -5

Code, Comments, Style and Logic (60 points)

Here, the source code submitted (as hard copy) was evaluated. Marks in this category were deducted in the following way .
       * No comments			          -5
       * Convoluted and/or incorrect logic 	  -5
       * Incorrect file handling	   up to -20
       * Errors in the Expression class    up to -30
         * Class did not follow project guidelines
	 * Variables were not declared in private portion of interface
	 * Implementation errors
	 * Expression object used incorrectly in main program
    

Comments from the grader




(i) Even though it was emphasized in class that only three files should be included on the disk and that the file names had to be project3.cpp, expression.cc, and expression.h, some people still forgot to do so; those who failed to meet this requirement lost points.

(ii) On CodeWarrior, when using the string class, the header file string.h should be included instead of CPstring.h. Including CPstring.h causes compiler errors.

(iii) The most common error was that the program ended after processing an invalid file. The program needed to continue until the user entered "quit" for the file name. Therefore, whether a particular expression was valid or not, after printing the result or error message, the user should have been prompted for another file.




Elizabeth Burkhalter
April 21, 1997