Grading Criteria for Assignment 4

Grading Criteria for Assignment 4


-- This Criteria is not for Correctness -- we will detect this through testing.

I. Good Modular Design -- 70%
    A. You should have a main routine and many Classes -- 35%
	10%	1. I am not going to tell you all of the classes you should have but
		   you better have many good classes
			a. Using a sequence for a set is not a good design
			b. This applies to the past assignments
	15%	2. You should have classes for the inverted index
			a. It is better if you have one template class
        10%     3. I am not going to tell the the exact design you should have but
                   points will be taken off if your design is not good.
    B. Each Class should have the following -- 25%
        4%  1. Logical Domain Definition
        4%  2. Logical Behavior Definition
                  a. Default Constructor
                  b. Copy Constructor
                  c. Destructor
                  d. = operator
                  e. == operator
        2%   3. .h file
        2%   4. .c file -- Physical Operation Implementation
        4%   5. .tst file
        4%   6. Each method should have a Pre- and Post Condition
        2%   7. Meaningful Sectioning:
                  a. Constructors
                  b. Destructor
                  c. Query Operations
                  d. Commands
                  e. I/O operations
        3%   9. Physical Domain Implementation
    D. All functions and methods are to be of functional strength -- 5%
             -- does one thing to one object
    E. Good and Proper Use of Inheritance -- for the old and new code -- 15%
		1. Proper Use of Inheritance -- for IS A and NOT Uses
		2. This Problem can be simplified through the use of inheritance
II. Style -- 10%
    A. Meaningful Variable Names
    B. Proper Indentation
    C. Good Use of Whitespace
    D. Proper Use of Comments
III. Good Makefile -- 5%
    A. Easy to use -- make x to build program x
    B. Proper use of dependencies
        1. There should be one entry to create the .o file
                   for every class
                2. There should be one entry to create and run the black box
                   testing file for every class
IV. Bring to Class on Jun 17 
    A. All .h files -- for this assignment
    B. All .c files -- for this assignment
    C. Your Make file

CS Dept Home Page  BYU Home Page  OSM Home Page
Last updated 14 Jun 1996