Summer 2022 — Final exam guide
Tentative plan
When and Where
- Test date / time: Saturday 18-June-2022.
The exam will be available
11:00am — 11:00pm EST (12-hours period)
- Test location: Your place (require internet connection to download an exam copy and to submit your exam copy to Collab)
- Time limitation: Although the final exam is designed to be completed within 3 hours,
you have 12 hours in total
(if you start at 11:00am EST)
to complete and submit your exam electronically.
-
Please note, before the COVID-19 pandemic,
a similar but *much* longer exam was given as a paper-based, closed book / note / Internet / IDE, 3-hours, in-person exam.
The records from past semesters (when a 12-hours, open book / note / Internet / IDE, take-home exam was given) showed that
many students spent more than 3 hours to complete the take-home exam.
The time differences were mainly due to "open" vs. "closed" environments, and
"writing code using IDE" vs. "writing code on paper."
- You are recommended to start early if you may need more time to complete the exam.
- You are recommended to start early, in case technical difficulty is encountered.
- The submission site will close at exactly 11:00pm EST (based on Collab's timestamp)
of the exam date.
- Please plan your time carefully and be prepared for any technical difficulty,
do not wait until the last minutes (or hours) to submit your final exam.
Conflicts
- All conflicts should have been reported and
an alternative exam date must be arranged in advanced.
- Due to the Summer session's time constraint and
a hard deadline that grades must be submitted to the registrar,
a later alternative exam date may be extremely challenging.
If you have any conflicts, please consider taking an exam early to
ensure that we have your grade ready to be submitted by the deadline.
SDAC accommodation
- Since the exam is designed to be completed within 3 hours
but the period that you are allowed to take the exam is 12 hours,
SDAC has confirmed that no special accommodation will be needed / provided.
How the final exam will be held
- The exam will be made available through Collab / Assignments / Final-Exam.
- You must take the exam individually, no collaboration.
Please remember that the UVA Honor Code is in effect.
- The exam is open book / note / Internet / IDE / anything that does not involve human being.
- Any forms of discussion or collaboration — including but not limited to,
phone call, email, text messaging, in-person communication,
social networking communication software or media such as Facebook, Slack, chat or messaging software —
that may be related to the final exam content are prohibited during
11:00am to 11:00pm EST of the exam date
- You can download a copy of the exam from Collab / Assignments / Final-Exam.
- You are required to type your answer, type your program source code, no handwriting.
We have to assign a zero grade to any violation.
- If you need to draw your answer, you may draw it (i) electronically, using some software or
(ii) by hand — must be *legible* (if we cannot read it, we have to assign a zero grade),
take a screen, and embed it in your exam file. Do not submit it separately.
We have to assign a zero grade to any violation.
- If you find a question ambiguous or unclear, type that down on the exam next to the question.
We'll consider that when we grade.
- With the 12-hour period and the exam being taken in multiple locations,
we cannot fairly answer questions during the exam.
Therefore, we will not answer any questions during the exam.
- Read the instructions carefully.
Some questions may ask you to answer in the provided spaces and thus a .pdf file must be submitted.
Some questions may ask you to submit your source code file(s).
- No word document or .txt file will be accepted.
We have to assign a zero grade to any violation.
- If you are unsure how to produce a .pdf file, please reach out to the course staff by the last day of our class.
- You are required to submit your exam copy (.pdf and soure code files) to Collab / Assignments / Final-Exam.
- The number of resubmissions allowed is 1 (one). No exception or additional attempt will be accepted.
- The exam submission site will close at
11:00pm EST of Saturday 18-June-2022 and will
not be reopened.
- Please do not email your exam copy (.pdf and source code files)
before / after the submission site has been closed.
No email submission will be accepted.
- Only the exam copy officially submitted to Collab will be graded.
- Please also note. UVA email blocks certain kinds of files.
Thus, if you attempt to email you exam copy to the instructor,
it is most likely that your email will be blocked.
- To be fair to everyone, no submission will be accepted after the site has been closed.
- Please manage your time.
- Making your submission available to the course staff (instructor and TA) is your responsibility;
if we cannot access your file then you will not get credit (we need to assign a zero grade to your final exam).
- Be sure to test access to your file before the deadline.
- Be sure to verify your submission before the deadline.
Test specific
- The final exam is comprehensive
- Only what have been introduced or discussed in Summer 2022 CS 4640 will be covered.
We will not ask you anything that has not been covered in this course this semester.
- The format of the exam will be similar to POTDs and activities.
- You may expect the following kinds of questions
- Short answer
- Problem solving
- Discussion
- Design and diagram drawing
- Code reading and fixing
- Code writing questions (HTML, CSS, JavaScript, Angular, Ajax, PHP,
using database with PHP, using JSON in web development)
- Skip XML since we did not have a chance to discuss much in class
- Very minor syntax errors are acceptable.
Major syntax errors result in points deduction.
Major things you can expect
- Some questions related to material discussed in class
- Some questions related to POTDs and activities
- Some questions related to homework assignments (project)
Coverage
- General understanding of web development
(meetings 1-3, and concepts we discussed throughout the summer session)
- Usability and web app and web design
(meeting 4, and concepts we discussed throughout the summer session)
- Client side software – HTML, CSS,
JavaScript, DOM manipulation, event, form enhancement, and
general understanding of Bootstrap and responsive design,
(meetings 5-11)
- Backend development, HTTP request handling
(meeting 12)
- Server side software - PHP, file processing, form handling,
database access, database programming with MVC pattern,
state handling mechanisms
(form hidden inputs, URL rewriting, Cookies, server-side sessions)
(meetings 12-20)
- Angular
(meetings 21-26)
- Connecting client-side and server-side components
(meetings 25-26)
- Ajax
(meetings 27-28)
- Your homework assignments (project)
- Applying what we discussed (all the above) to your project
Final exam instruction page
The following image is from the exam cover page.
Study guide
- Review the lectures / materials / slides / online resources / class recordings
- Redo POTDs and activities
- Review homework assignments
- Practice writing code
-
Similar to any programming language courses, you are introduced new languages
which typically involve syntax memorization.
In this course, we touched on a subset of languages,
focusing on fundamental features and commonly used syntax.
You may find that your course project includes features and syntax beyond course coverage.
- As in any programming language courses,
you are expected to remember the fundamental and syntax covered in class
and be able to write programs with correct syntax.
- A few very minor syntax errors is OK.
But if you are really off we will take off points.
- A sample exam from previous semester is available in Collab/resources folder
- Note: the exam's focus depends on the materials covered in class;
i.e., ours may be different from the previous semester
- Get a good night's sleep
Grades
- The following grade(s) will be posted on Collab ASAP
- POTD grades
- Homework grades plus extra credits
- The final exam scores will be posted on Collab after grades are turned in
- Final exam extra credit opportunities (final exam extra credit cap = 10 points —
If you win the vote(s) and correctly implement Ajax,
you will receive the total of 10 points extra credit on the final exam).
- [5 points] Win
the "best usable" project project or
the "coolest" project.
- If the winners of both votes are the same project,
the winners will receive the total of 5 points extra credit on the final exam.
- Refer to the project's Showtime page.
- [5 points] Ajax extra credit
- The AJax code must be explicitly implemented using XMLHttpRequest object.
- Asynchronous requests and promises must be properly implemented in your own JavaScript.
- Asynchronous requests must be sent to PHP server-side component(s),
PHP component(s) must properly process and handle the asynchronous requests and return proper response to Ajax, Ajax must use the response appropriately.
- Refer to the project's Ajax extra credit section of Assignment 4 page.
- You have the right to review your final exam.
An announcement will be sent as soon as the graded exam is available.
- How to compute your grade
Final grades
Your overall score will be mapped to a letter grade as follows:
You get | If you score |
A+ | >= 98 |
A | >= 93 |
A- | >= 90 |
B+ | >= 87 |
B | >= 83 |
B- | >= 80 |
C+ | >= 77 |
C | >= 73 |
C- | >= 70 |
D+ | >= 67 |
D | >= 63 |
D- | >= 60 |
F | < 60 |
Rounding: By default, grades will not be rounded or curved in this course.
Please refer to the course syllabus.
A few final notes
- Many companies who are successful at achieving usability
view it as improving efficiency of their users
- Demand for better usability is heavily influenced
by good examples (the "iPhone effect")
- Companies will pay gold for programmers who know how to build
web apps and mobile apps well
- Especially if they also understand usability
- "Wrapping paper UI" : Usability added as a thin layer that's not really integrated
- This doesn't really work ...
Here is A Time-effective Strategy for Taking Exams
by Professor Jeff Offutt.
Good luck !
Copyright © 2022 Upsorn Praphamontripong
Released under the
CC-BY-NC-SA 4.0 license.
Last updated 2022-06-15 13:42