Introduction to Computer Science for non-Majors II James Tam Return to the course web page

CPSC 219: Assignment 5 (Marking Key)

 

    Your score Max score

Coding style (marks independent of program functionality)

   
 
  • Follows good programming conventions common to all programs (e.g., Appropriate source code white space, self documenting names, clear/simple expressions, methods implementing one task/max 30 lines of code, appropriate used of named constants): Never (0), Sometimes (4), Often (8), Mostly (12), Always (14)
  14
 
  • Follows good Object-Oriented conventions
   
    Information hiding: Never (0), Sometimes (1), often (2), Mostly (3), Always (4)   4
    Class attributes are logical to the definition (e.g., not variables that are just local to a method but belong to each instance): Never (0), Sometimes (2), Often (4), Mostly (6), Always (8)   8
    Each class (save the "Driver" and "Debug" class if implemented) consists of at least 3 methods   6
    Program decomposition into classes is logical e.g., Driver does not include code for the user interface   5
    Static variables employed (debugging flags excepted), -4 marks each instance with a max of 12 marks lost   -12
    The code for the classes are not included in its own file (-3 each instance, max of 15 marks lost): Driver, UserInterface, Manager, MovieNode, Movie   -15
 

Sub total

 

37

Documentation (marks independent of program functionality)

   
 
  • Header documentation includes full name and tutorial section
  8
 
  • Some form of versioning system is demonstrated in the header documentation
  2
 
  • Each method is documented (similar to documentation for the entire program but applies only to that method)
  6
 
  • Program limitations documented
  2
 
  • Program features documented (cut and paste out of the assignment specifications acceptable but it MUST be detailed, clear and specific...the marker must be able to know exactly what features in this marking key were actually working)
  20
 

Sub total

 

38

Functionality and design (only qualify for these marks if the program runs: note some features obviously requires other features to be implemented before credit will be granted)

   
 
  • Displays intro
  2
 
  • Displays signoff conclusion
  2
 
  • Defines Movie class skeleton
  2
 
  • Defines MovieNode class skeleton
  2
 
  • Defines Manager class skeleton
  2
 
  • Defines UserInterface class skeleton
  2
 
  • Declares and properly initializes list 'head'
  2
 
  • Displays main menu (add, remove nodes etc.)
  2
 
  • Program repeats (1) until user quits, checks validity of options (2) quit menu option working (1)
  4
 
  • Adds movie (marks will only be granted to one version of this feature)
  20
   
  • Simple version: adds to end of list (max of  4 marks)
   
   
  • Advanced version: adds in order (max of 20 marks)
   
 
  • Checks genre, allows user to cancel add
  10
 
  • Checks rating, allows user to cancel add
  10
 
  • Displays list
  10
 
  • Search list
  20
 
  • Removes movie (marks will only be granted to one version of this feature)
  20
   
  • Simple version: removes movie from end of list (max of  4 marks)
   
   
  • Advanced version: removes desired movie (max of 20 marks)
   
 

Subtotal

 

110

Design requirements (may modify the raw functionality score)

   
 
  • Implements static methods (other than 'main()' and methods that might access debugging flags)
Divide functionality marks by two1
 
  • Program consists of only one class (style marks will also be lost)
Divide functionality marks by two1
 
  • Functionality not assigned to the appropriate class as specified in the assignment description (e.g., list manager operations implemented in the Driver or user-interface classes).
Max loss of 8 marks to functionality (tallied after the above two modifiers, if applicable)

OVERALL ASSIGNMENT RAW TOTAL

 

185

GRADE POINT

 

4.0

1 These penalties are cumulative so if a program was written using only one class and was full of static methods then the student's program functionality mark would quartered. If all three requirements were missed then functionality marks would be divided by eight.

Min raw score GPA
0 0
35 0.7
40 1
45 1.3
50 1.4
55 1.5
60 1.6
65 1.7
70 1.8
75 1.9
80 2
85 2.1
90 2.2
95 2.3
100 2.4
105 2.5
110 2.6
115 2.7
120 2.8
125 2.9
130 3
135 3.1
140 3.2
145 3.3
150 3.4
155 3.5
160 3.6
165 3.7
170 3.8
175 3.9
180 4