Your programs will be graded based on how well you can explain and demonstrate the following items in your program. In order to explain your code, you need to include detailed comments for your code. You may also be asked to demonstrate your code. If you cannot explain nor demonstrate your code, you did not write it and you won’t get credit for it. After grading the assignment, you can go back and fix your code to improve your grade except for the following:
- You cannot explain or demonstrate your code.
- Your code does not come close to performing what it is supposed to. Basically, if you did not run it and check it properly before turning it in, I take off points that you cannot earn back.
.
A
B
C
D-F
Explanation
You can explain and demonstrate everything in your code well.
You can explain and demonstrate all of your code.
You cannot explain or demonstrate one small part of your code.
You cannot explain or demonstrate a major part of your code.
In addition to being able to explain and demonstrate your code, your code needs to meet the following requirements for the assignment.
.
A
B
C
D-F
Delivery
Completed between 90-100% of the requirements.
Delivered on time, and in correct format (disk, email, etc.)
Completed between 80-90% of the requirements.
Delivered on time, and in correct format (disk, email, etc.)
Completed between 70-80% of the requirements.
Delivered on time, and in correct format (disk, email, etc.)
Completed less than 70% of the requirements.
Not delivered on time or not in correct format (disk, email, etc.)
Compile and Run
Executes without errors
Excellent user prompts, good use of symbols, spacing in output.
Thorough and organized testing has been completed and output from test cases is included.
Executes without errors.
User prompts are understandable, minimum use of symbols or spacing in output.
Thorough testing has been completed.
Executes without errors.
User prompts contain little information, poor design.
Some testing has been completed.
Does not execute due to errors.
User prompts are misleading or non-existent.
No testing has been completed.
Algorithm Efficiency
Algorithm solution is elegant and efficient.
Solution is easy to understand and maintain.
Solution is efficient
Solution is easy to follow (i.e. no confusing tricks).
Solution is logical but not very efficient.
Solution is easy to follow.
Solution is difficult and inefficient.
Coding Standards
Excellent use of white space.
Creatively organized work.
Excellent use of variables
Object-oriented standards are correctly and consistently followed.
Good use of white space.
Organized work.
Good use of variables
Object-oriented standards are correctly and consistently followed most of the time.
White space makes program fairly easy to read.
Organized work.
Good use of variables.
Object-oriented standards are occasionally followed.
Poor use of white space (indentation, blank lines).
Disorganized and messy
Poor use of variables.
Object-oriented standards are incorrectly and inconsistently followed.
In-Code Comments
Clearly and effectively documented following the guidelines in the detailed code commenting page.
Specific purpose is noted for each function, control structure, input requirements, and output results.
Clearly documented including descriptions of all variables.
Specific purpose is noted for each function and control structure.
Basic documentation has been completed including descriptions of all variables.
Purpose is noted for each function.
No documentation included.
Effort and Support
Student persevered through challenges, utilizing various resources, including other students, and asked for help when necessary.
Student had a positive attitude throughout the project.
Student willingly assisted other students with the project.
Student made it through challenges and asked for help when necessary.
Student had a positive attitude throughout the project.
Student struggled to finish the project and rarely used outside help.
Student attitude varied through the project.
Student struggled to finish the project.
Student often had a poor attitude during the project.