Welcome to CPSC 310!
Introduction to Software Engineering | UBC-CPSC 310 - 2021 W T 2, 201
PIAZZA | CLASSY | GITHUB | LECTURE ZOOM | LAB AND OFFICE HOURS | DISCORD
Introduction to Software Engineering | UBC-CPSC 310 - 2021 W T 2, 201
PIAZZA | CLASSY | GITHUB | LECTURE ZOOM | LAB AND OFFICE HOURS | DISCORD
Instructor: Elisa Baniassad (ebani@cs.ubc.ca). (Zoom office)
Office hours & TA List: Labs and Office Hours page.
ALL STUDENTS: START CHECKPOINT 0 NOW! It takes a lot of time to get set up and started. It is due on add/drop
Please don't contact the instructional staff about the waitlist - we don't have any information about it, and can't tell you your position on it or the likelihood you'll get into the class. We can't sign people into the class. Please contact CS advisors. More waitlist instructions are available here
If you are on the waitlist, you still need to do the project!!! If you wait until you get into the class, you will not have enough time to complete Checkpoint 0 (due on the add/drop date) by the deadline.
This is another weird semester! It's anticipated that people will be off sick for some of it. Also other life things come up. Also sometimes the stress is too much and you need a break. Here's what we're doing:
The quizzes can be taken any time from when they are released to the last day of classes.
We will offer grade accommodations (not extensions) for the project to those who have suffered absences or for those who are experiencing longer running situations that are severely impacting their ability to do work (such as caring for unwell dependents). Absence Form Here
The ClientBot will provide feedback on each checkpoint twice (up from once) for Checkpoints 1-3
If you're needing support because of personal reasons (like personal tragedy or crisis) please get in touch. We have more we can do for students in really difficult situations.
There's more information on each of the above in the sections below....
These are attended virtually over Zoom and will be recorded. You do not need to attend lecture synchronously, though it will be great to see you there :)
If a class has to be cancelled because Elisa is unable to come to class, the topic will be moved to the subsequent day. If this happens such that there is a squeeze, topics may be shortened and additional resources made available to preserve learning outcomes.
Entire semester schedule is on the Schedule page
Labs and office hours are all online. Times are here. During Checkpoint 0 (C0), labs are drop-in office hours.
After the Checkpoint 0 deadline labs are mandatory. You must attend a weekly Scrum with your mentor TA. If you are absent please contact Emily cpsc310-admin@cs.ubc.ca
If you can't get into the lab you want, please just watch SSC for availability. We can't help with lab registration.
All office hours are online and there is a queue system to process students fairly. Wait times can be long before deadlines, so plan accordingly.
There will be 4 quizzes, but we only count your top 3.
Quiz release dates are on the Schedule page. You can do quizzes any day after their release date before the end of the semester.
They will be online quizzes and you will have a set amount of time to complete once you've started. You must complete the quizzes ALONE.
They are open book/open notes, but collaboration/communication with others (tutors, other students, anyone) is not allowed and will be considered academic misconduct if detected.
Because we are allowing flexible quiz-taking, you are not allowed to post any content or question about any quiz to any forum (Piazza, reddit) or to communicate with any other student about a quiz. Any such communication is considered academic misconduct and will be treated seriously.
The project has 4 checkpoints (C0..3).
All project deadlines are on the Schedule page
See the Project page for more details!
You will need a partner for Checkpoints 1-3, and that person must be in your lab. Teams are declared the week after the add/drop date. If you don't have a teammate at that time we will assign you to a team.
Checkpoints 1-3 are due at the end of the semester, graded by the ClientBot. The ClientBot will also run 5 other times through the semester to let you check your progress. Those ClientBot runs are not recorded - they are just for your information. You should be checking your own progress using your own tests, and using our autobot Smoke tests.
You may NOT use a tutor to help you with the project content. You may not look for project-specific help online. This will be considered academic misconduct.
You must also submit a weekly progress/work report individually.
It is highly recommended that you sign up with your cs email (the r2d2 email address you are given) so that we can identify you in case we need to be in touch over Piazza.
Piazza is intended to be your mechanism to communicate with the teaching team.
There are no private posts available. To individually contact a TA you must attend lab or office hours.
If you can't get into Piazza, contact cpsc310-admin@cs.ubc.ca
You are encouraged to use Discord to hang out like you would in the DLC. You can not post code, or dictate code, or in any way help someone remotely to *do* their project, because that would violate the no copying policy, but you can discuss project approaches there! You can chat about potential algorithms (without posting pseudocode), and strategies.
We suggest making a new Discord user ID if you don't want us to see you playing Genshin Impact on your main when we both know you're not done C0.
The project has some hard deadlines: Checkpoint 0 at the drop date, and the Checkpoint 3 deadlines at the end of the semester. We won't be offering extensions on these deadlines for any reason, because of the way our grading works. But we will offer grade accommodations for the project to those who have suffered absences or for those who are experiencing conditions that are severely hurting their ability to do work (such as having kids home from school, caring for another person because they are unwell, etc). FILL OUT THIS FORM. You don't need to provide proof - just provide an explanation so we can assess the accommodation that's right for you. Fill the form out once the situation has resolved.
Please inform Emily (cpsc310-admin@cs.ubc.ca) of all accommodations from the Centre for Accessibility.
For anything else related to the administration of the course contact cpsc310-admin@cs.ubc.ca
For personal issues that do not have any urgent academic implications, and for which you don't need a speedy response, contact Elisa at ebani@cs.ubc.ca. Elisa will not answer lecture questions over email -- instead ask those over Piazza, and everyone will have a chance to answer. Email Elisa only for personal issues that cannot be discussed in a public forum.
IMPORTANT: DO NOT CHEAT ON THE PROJECT. Don't copy code from others or the web. Don't share code. Don't look at old projects if you happen upon them while searching the web, and do not look at project code belonging to students in the class currently. Concrete details are given here. Make sure every line of code you commit is either provided by us, or originated (conceived of and written) by you (or your partner). Tutors can not help you do your project work. You must do all your own work. Cases will be referred to the dean and students have received 0 in the course, and been suspended for copying in past terms.
Everyone involved with CPSC 310 is responsible for understanding and abiding by UBC's Respectful Environment Statement.
The Statement of Principle of UBC's Respectful Environment Statement is "The best possible environment for working, learning and living is one in which respect, civility, diversity, opportunity and inclusion are valued. Everyone at the University of British Columbia is expected to conduct themselves in a manner that upholds these principles in all communications and interactions with fellow UBC community members and the public in all University-related settings." More details can be found on the department's resource page.
The readings and slides for this course are licensed using CC-by-SA. However, it is important to note that the videos, deliverable descriptions, code implementing the deliverables, exams, and exam solutions are considered private materials. We go to considerable lengths to make the project an interesting and useful learning experience for this course. This is a great deal of work, and while future students may be tempted by your solutions, posting them does not do them any real favours. Please be considerate with these private materials and not pass them along to others, make your repos public, or post them to other sites online.