Grading Criteria for Assignment 2
Grading Criteria for Assignment 2
-- This Criteria is not for Correctness -- we will detect this through testing.
I. Good Modular Design -- 60%
A. You should have a main routine and several Classes
1. The classes should include:
a. Person
b. Gender
c. Id
d. Names
e. Name
f. Alpha_String
B. Each Class should have the following
1. Logical Domain Definition
2. Logical Behavior Definition
a. Default Constructor
b. Copy Constructor
c. Destructor
d. = operator
e. == operator
f. for this assignment many of the classes should have a
1. << friend operation
2. >> friend operation
3. .h file
4. .c file -- Physical Operation Implementation
5. .tst file
6. another copy of the .h and .c file instrumented for white box
testing using my whitebx.c class
7. Each method should have a Pre- and Post Condition
8. Meaningful Sectioning:
a. Constructors
b. Destructor
c. Query Operations
d. Commands
e. I/O operations
9. Physical Domain Implementation
D. All functions and methods are to be of functional strength
-- does one thing to one object
II. Style -- 20%
A. Meaningful Variable Names
B. Proper Indentation
C. Good Use of Whitespace
D. Proper Use of Comments
III. Good Makefile -- 20%
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 May 13
A. All .h files
B. All .c files
C. All .tst files
D. Your Make file
Last updated 30 Apr 1996