-
Total of 64 marks. Starter code: None
As a Final Project, we would like to give you the opportunity to explore the new ideas and tools you learned in CS 106 to create something of your own. This Final Project is very open-ended: you can basically choose any theme or concept you want, as long as it uses a sufficient number of CS 106 topics/features.
Below you will find nine course-related topics. Your project must use five of them. If you use more than five, then only the five you document below are graded.
-
1) Week 2: Arrays and Strings.
-
2) Week 3: Input and Output.
-
3) Week 4: Advanced Shapes.
-
4) Week 5: Randomness and Noise.
-
5) Week 6: HTML and CSS (User Interface).
-
6) Week 7: Data Processing and Text.
-
7) Week 8: Tables.
-
8) Week 9 and 10: Trees (JSON).
-
9) Week 11: Geometric Context.
[ 24 Marks ] Write-Up
You need to create a pdf document “readme.pdf” that describes your project and includes:
a) [ 3 marks ] Description: What is your project? One paragraph is enough for this. Your description will also be graded as follows.
o Correctness: Your description needs to explain your project correctly. [ 1 mark ]
o Effectiveness: Your description should make it easy to understand. [ 2 marks ] b) [3 marks ] Inspiration: What was your inspiration?
o What inspired you to create your specific project?
c) [ 3 marks ] Instructions: Explain how to run your sketch, and how to use its features. The lengthof this section depends on how complex your sketch's user interface is.
o Correctness: It needs to explain how to run your sketch correctly. [ 1 mark ]
o Effectiveness:Itshouldmakeiteasyforthecoursestafftounderstandhowtouseyoursketch. Bullet point recommended; try to mimic assignment PDFs. [ 2 marks ]
d) [ 3 marks each for a total of 15 marks] Topics: List the five topics from the menu above you usedin your sketch that you want graded (you can use more than 5, but only 5 will be graded). For each one, give a paragraph explaining how you used that feature.
[ 30 Marks ] Your sketch will be graded as follows:
-
[ 3 marks each for a total of 15 marks] Correctness. Whether you're able to make the five features work as intended.
-
[ 3 marks each for a total of 15 marks] Effectiveness (whether the feature is making a useful, non-trivial contribution to your project). The effectiveness mark is a bit of a judgment call, but we will be generous. The goal is to make sure you do something interesting with your feature. For example, adding a single line reading save(); to your sketch, saving a screenshot of your sketch window, would not be considered effective use of Input and Output.
[ 6 marks ] Make a short video demo of your Final Project.
-
Your video must be 30-60 seconds.
-
You must submit this vide to the Final Project dropbox (in additional to the other 3 items you
are submitting to the Final Project dropbox).
-
Grading is as follows:
o 0 marks if you don’t submit a video to the Final Project dropbox o 2 marks if you submit a video but there are major errors.
o 4 marks if you submit a video but there are minor errors.
o 6 marks if you submit a video and there are no errors. -
Note: If you cannot create a video for technical reasons then you must email us at CS106@uwaterloo.ca and ISAs will discuss the issue with you. They can probablyhelp but if you cannot create a video then we will not deduct marks.
o Ifyoucannotcreateavidethenweneedtoknowthiswhengrading,sothatwedon’t deduct marks. If you cannot create a video, then create a pdf file named NoVideo.pdf. In that pdf briefly explain why you could not create a video. This might only be a sentence or two, but we need to know or otherwise you will get a grade of zero for your video. Also, state that you have emailed CS106@uwaterloo.ca to discuss your issues.
[ 4 marks ] Coding Style and Efficiency
Follow the course coding style for whitespace and comments. Consult the “Code Style Guide” on LEARN.
-
1) [ 0.5 ] Include your name and student ID number at the beginning of your code.
-
2) [ 0.5 ] Comment your code appropriately. Avoid superfluous comments.
-
3) [ 0.5 ] Correctly and consistently indent your code blocks.
-
4) [ 0.5 ] Use correct inline spacing.
-
5) [ 0.5 ] Use good line spacing to chunk sections of your code.
-
6) [ 0.5 ] All variable names are meaningfully chosen.
-
7) [ 0.5 ] No variables are declared but not used.
-
8) [ 0.5 ] You may not use any functions or statements not covered in lecture or labs
-
University of Waterloo 滑铁卢大学
CS 106 Introduction to Computer Science
咨询 Alpha 小助手,获取更多课业帮助