Lecture notes for Computer Science II by James Tam | Return to the course web page |
Item |
Effect on grade |
Uses static methods (other than the static methods specified in the assignment description) | Divide marks by two (rounded down)1 |
Program consists of only a single class. | Divide marks by two (rounded down)1 |
Missing contact information in submission (name and student number) |
-8 marks (assuming the source of the submission can be determined) |
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.
How often are general style requirements followed (approaches that applies to all programming paradigms O-O or procedural) e.g., good naming conventions, appropriate use of named constants, code uses alignment and whitespace to make it easier to read and understand, methods/functions implement one well defined task and don't exceed a screen in length etc. | Actual mark | Max | ||||||
Never (0 marks) |
Sometimes (2 marks) |
Mostly (4 marks) |
Always (6 marks) |
|||||
Sub-total | 6 | |||||||
How often are Object-Oriented style requirements followed e.g., appropriate decomposition into classes, class definition encapsulate appropriate attributes and behaviours, information hiding employed, decomposition relatively balanced among classes (i.e., there isn't one class that includes all or most of the functionality) etc. | Actual mark | Max | ||||||
Never (0 marks) |
Sometimes (2 marks) |
Mostly (4 marks) |
Always (6 marks) |
|||||
Sub-total | 6 | |||||||
STYLE TOTAL | 12 | |||||||
DOCUMENTATION: INTERNAL TO PROGRAM |
|
|||||||
Example things to include: some sort of versioning system, a description of the features of the program (what it does rather than how it does it), limitations of the program (features not implemented or cases that it can't handle). | Actual mark | Max | ||||||
|
No documentation (0 marks) |
Major omissions (4 marks) |
Minor omissions (10 marks) |
Appropriate level (12 marks) |
||||
TOTAL FOR DOCUMENTATION | 12 | |||||||
DOCUMENTATION: EXTERNAL README FILE (formats allowed: text, doc, html, pdf |
|
|||||||
Includes instructions about how to run the program (especially important if there's additional multimedia requirements such as images), what functional requirements (listed in the assignment) were actually implemented. Your mark for this component will be determined by the completeness (e.g., don't omit crucial instructions) and correctness (e.g., don't list features that you didn't complete) of the README file. | Actual mark | Max | ||||||
TOTAL FOR EXTERNAL DOCUMENTATION | 10 | |||||||
PROGRAM STRUCTURE |
|
|||||||
Marks will be awarded for defining the classes in the fashion specified in the assignment description: Implementation marks for filling in the bodies of these classes is extra. For the class definition marks you essentially get these marks for properly laying out the skeleton or design for these classes. | Actual mark | Max | ||||||
Driver | 1 | |||||||
Simulator | 4 | |||||||
Biosphere | 4 | |||||||
Prey | 2 | |||||||
Flyer | 3 | |||||||
GroundBased | 2 | |||||||
TOTAL FOR STRUCTURE | 16 | |||||||
PROGRAM FUNCTIONALITY |
|
|
|
|||||
Marks can be awarded for the preceding categories (style, documentation and structure) independent of program functionality (e.g., you could theoretically receive up 50 marks for a non-functional program - plus marks for the UML diagram - assuming that the program demonstrated how the above requirements were met (e.g., it would be difficult to demonstrate good style with a completely empty program). However functionality marks will be awarded as the marker runs your program (non-compiling programs or programs with excessive amounts of run time errors will be awarded few, if any marks for functionality). | Actual mark | Max | ||||||
Displays intro | 1 | |||||||
Displays conclusion | 1 | |||||||
Program can read starting positions from input file | 2 | |||||||
Displays simulation world with numbered grid around elements | 2 | |||||||
Simulation runs for a user-specified number of turns | 2 | |||||||
A turn is broken down into correctly ordered sub-turns with the program pausing and displaying the world as appropriate | 6 | |||||||
Debug mode is implemented and can be toggled at the transition of each full turn | 4 | |||||||
Wounded prey heal (up to their max) | 2 | |||||||
Prey move in the fashion specified in the assignment (half marks if movement wasn't implemented by calling the 'move' and 'positionToCoordinate' methods). | 8 | |||||||
Randomly moves to adjacent squares (4 marks) | ||||||||
Moves to empty squares (2 marks) | ||||||||
Checks array bounds (2 marks) | ||||||||
Prey procreate in the fashion specified in the assignment | 6 | |||||||
GroundBased predators move in the fashion specified in the assignment (half marks if movement wasn't implemented by calling the 'move' and 'positionToCoordinate' methods). | 8 | |||||||
Randomly moves to adjacent squares (4 marks) | ||||||||
Moves to empty squares (2 marks) | ||||||||
Checks array bounds (2 marks) | ||||||||
Flyers move in the fashion specified in the assignment (half marks if movement wasn't implemented by overriding the 'move' and 'positionToCoordinate' methods). | 12 | |||||||
Randomly moves to adjacent squares (4 marks if moves with range = 1, 8 marks if moves with range = 2) | ||||||||
Moves to empty squares (2 marks) | ||||||||
Checks array bounds (2 marks) | ||||||||
Predators attack prey | 12 | |||||||
Flyers override the attack method and inflict the damage specified in the assignment (6 marks / 4 marks if it attacks more than one prey) | ||||||||
GroundBased predators override the attack method and inflict the damage specified in the assignment (6 marks / 4 marks if it attacks more than one prey) | ||||||||
Program correctly tracks and displays the statistics specified (1 mark for each) | 5 | |||||||
TOTAL FOR PROGRAM FUNCTIONALITY | 71 | |||||||
Program overview |
|
|
|
|||||
Actual mark | Max | |||||||
UML diagram (should be the 'full' version that shows method signatures, return values and all the relationships) | 13 | |||||||
Extra bonus |
||||||||
Actual mark | Max | |||||||
Program displays output graphically instead of using text | 10 |
Total score | Letter |
A+ | 125+ |
A | 115 - 124 |
A- | 105 - 114 |
B+ | 95 - 104 |
B | 85 - 94 |
B- | 75 - 84 |
C+ | 65 - 74 |
C | 55 - 64 |
C- | 45 - 54 |
D+ | 35 - 44 |
D | 25 - 34 |
D- | 15 - 24 |
F | 0 - 14 |
TOTAL MARKS |
LETTER GRADE |