|
Introduction to Computer Science II for majors by James Tam |
|
|
Actual mark |
Max |
|||||
| Naming conventions | Poor -2 | Some poorly named identifiers +0 | Good and clear throughout +2 | 2 | |||
| Code layout (alignment, formatting, whitespace) | Very cluttered, no whitespace -2 | Slightly too much/too little +0 | Appropriate use of whitespace: +2 | 2 | |||
| Program output layout | Very cluttered, no whitespace, formatting -2 | Slightly too much/too little +0 | Appropriate use of whitespace: +2 | 2 | |||
| Appropriate use of named constants | 1 | ||||||
| Each method implements one well defined task | Never -4 | Seldom +1 | Sometimes +2 | Usually +3 | Always +4 | 4 | |
| Each class (save the Driver) consists of at least 3 methods | Never -4 | Seldom +1 | Sometimes +2 | Usually +3 | Always +4 | 4 | |
| Each method doesn't exceed a screen size in length, 40 lines | Never -4 | Seldom +1 | Sometimes +2 | Usually +3 | Always +4 | 4 | |
| TOTAL | 19 | ||||||
|
|
|
|
|
|
|
|
|
DOCUMENTATION1 |
|
||||||
|
|
Actual mark |
Max |
|||||
| Header documentation. 'Driver' class (Program limitations) | 1 | ||||||
| Header documentation. 'Driver' class (Program versioning) | 1 | ||||||
| Header documentation. 'Driver' class (Assignment features implemented) | 8 | ||||||
| Header documentation. All classes other than the Driver | 4 | ||||||
| Missing contact information in submission (name and student number). Other marks will be granted only if we can determine authorship | -4 | ||||||
| TOTAL | 14 | ||||||
PROGRAM DESIGN1 |
|||||||
| Actual mark | Max | ||||||
| Class UserInterface definition | 3 | ||||||
| Class RaceSim definition | 1 | ||||||
| Class Runner definition | 3 | ||||||
| Class Track definition | 3 | ||||||
| Class Weather definition | 3 | ||||||
| TOTAL DESIGN MARKS | 13 | ||||||
PROGRAM FUNCTIONALITY2 |
|||||||
| Actual mark | Max | ||||||
| Displays intro | 1 | ||||||
| Displays signoff conclusion | 1 | ||||||
| Program runs until user quits | 1 | ||||||
| Can determine end of race and end segment of track displayed | 2 | ||||||
| Tie can be determined | 2 | ||||||
| Win can be determined | 2 | ||||||
| Loss can be determined | 2 | ||||||
| Shows main menu | 1 | ||||||
| Shows track one screen at a time | 2 | ||||||
| Shows each runner's status (mode, distance, state) | 6 | ||||||
| Weather: affects distance traveled | 4 | ||||||
| Weather: temperature can increase chance of getting winded (run and sprint) | 6 | ||||||
| Weather: temperature can increase chance to permanantly burn out runner (sprint) | 3 | ||||||
| Runners can be distracted if running or sprinting | 4 | ||||||
| Running speed of competitor 'P' can be chosen by player (program checks for physical tiring and mental distraction) | 6 | ||||||
| Running speed of competitor 'C' is randomly chosen (program checks for physical tiring and mental distraction) | 6 | ||||||
| Debug mode implemented | 4 | ||||||
| Program displays output graphically instead of using text | 6 | ||||||
| Program has audio effects | 4 | ||||||
| TOTAL FOR PROGRAM FUNCTIONALITY |
63 |
||||||
TOTAL RAW SCORE FOR ASSIGNMENT |
109 | ||||||
2 These marks will only be awarded if the correctness of implementation can be determined as the program is running.
Item |
Effect on grade |
| Uses static methods (other than the main method) | Divide functionality marks by two1 |
| Program consists of only a single class: | Divide functionality marks by two1 |
| Functionality not assigned to the appropriate class as specified in the assignment description | Max loss of 8 marks (tallied after the above two modifiers, if applicable) |
1 These two 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.
| Min score | Grade point |
| 0 | 0 |
| 20 | 0.7 |
| 25 | 1 |
| 30 | 1.1 |
| 33 | 1.2 |
| 36 | 1.3 |
| 39 | 1.4 |
| 42 | 1.5 |
| 45 | 1.6 |
| 48 | 1.7 |
| 51 | 1.8 |
| 54 | 1.9 |
| 56 | 2 |
| 58 | 2.1 |
| 60 | 2.2 |
| 62 | 2.3 |
| 64 | 2.4 |
| 66 | 2.5 |
| 68 | 2.6 |
| 70 | 2.7 |
| 72 | 2.8 |
| 74 | 2.9 |
| 76 | 3 |
| 78 | 3.1 |
| 80 | 3.2 |
| 82 | 3.3 |
| 84 | 3.4 |
| 86 | 3.5 |
| 88 | 3.6 |
| 90 | 3.7 |
| 92 | 3.8 |
| 94 | 3.9 |
| 96 | 4 |
| 97 | 4.1 |
| 98 | 4.2 |
| 99 | 4.3 |