Welcome to the COMP 2522 midterm!
This midterm is designed to be a "time trial," by which I mean that you are given more questions than you could possibly answer well in the allotted time. Questions are tiered into Basic, Intermediate and Advanced. Intermidate and Advanced questions include tests of the same skills that Basic questions test, so it is possible to get full marks answering only Advanced and Intermediate questions without answering any Basic questions. Points per question are estimated since I will reweight the points allotted per question according to class statistics, e.g., questions that many people have gotten correct may be weighted down vs. questions that few people have gotten correct may be weighted up. Extra marks will be given for good coding practices, i.e., clear comments, good coding practices, readable code, following SOLID principles.
The best strategy to attempt as many questions as possible in order of Advanced, then Intermediate, then finally to Basic.
You are required to bring your own computer. Make sure it is CHARGED since there is no guarantee of enough power outlets in the room.
You should bring a pen for writing answers to diagram questions. Paper will be provided.
You are allowed any number of written materials or physical items that are not internet-capable or able to run arbitrary code. So, e.g., calculators and geometry sets are allowed, but no smart phones or watches.
You are allowed to access a limited number of websites:
- Anything from GitHub.com is allowed to be READ only.
- Anything from Docs.Oracle.com is allowed to be READ only.
- Anything from DevDocs.io is allowed to be READ only.
- Anything from W3Schools.com is allowed to be READ only.
No other web access is allowed, i.e.,
- NO communication platforms of any kind
- NO Q&A sites such as Stack Overflow
- NO Google (use the internal search tools for GitHub/Oracle)
- NO downloading and using external packages
However, anything that is already installed/given to you through the course IDE installation is allowed. So, no extra plugins, but using the current plugins, even if they access the internet for some of their operations, is allowed.
Otherwise, the exam is open book. Anything that's on your own computer already is allowed, including previous lab assignments, etc. Standard plagarism rules still apply: if I can tell that you're just copy-pasting without modification, even from your own previous work, it will be considered plagiarism. You are welcome to review your previous work and type out new solutions to it, but not to copy-paste. I'll be running the exams through my own NLP system to check for this.
Last, there shall be NO DISTRIBUTION of this exam to others in your own class or others. Sharing answers and questions will be considered academic dishonesty and grounds for a citation.
You have two hours for the exam. The latest commit to GitHub BEFORE the deadline will be marked, all later commits will be automatically removed, so commit early and often. Questions about diagrams will be answered on paper only. Papers for diagrams will be collected at the end of the exam period.