Welcome to CPSC 310!

Introduction to Software Engineering | UBC-CPSC 310 - 2021 W T 1, 101

PIAZZA | CLASSY | GITHUB | LECTURE ZOOM | DISCORD

Instructor: Elisa Baniassad (ebani@cs.ubc.ca). (Zoom office)

Office hours & TA List: Labs and Office Hours page.

Lectures: All on Zoom.

Deadlines, Recordings, Slides: Schedule page

The expectation in this course is the final exam is written in person. You may be in a situation that prevents you from coming to campus (e.g. geographic location, medical or extenuating circumstances). If you are in this situation, you must apply for alternate format assessments through Science Advising. Application and more information available online. https://science.ubc.ca/students/blog/applying-alternate-format-assessments-online-courses

About Lectures

These are attended virtually over Zoom and will be recorded.

If a class has to be cancelled because Elisa is unable to come to class, we will try to find a replacement instructor, or, failing that, the topic will be moved to the subsequent day. There is room in the schedule for a couple of cancellations, though obviously, we hope not to use them. If a lecture is outright cancelled, this *might* have an effect on the quiz dates, because we want to leave sufficient time after the end of the topic to study for the quiz.

Entire semester schedule is on the Schedule page

About LABS

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 TA. If you are absent please contact Trey cpsc310-admin@cs.ubc.ca

You must also submit a weekly progress/work report individually.

About QUIZZES

There will be 4 quizzes, but we only count your top 3.

Dates are on the Schedule page

They will be take-home - to be done within a 24-hour period.

They are open book/open notes, but collaboration/communication with others in the class is not allowed and will be considered academic misconduct if detected.

About the Project

The project has 4 checkpoints (C0..3).

All project deadlines are on the Schedule page

See the Project page for more details!

Course Questions: Piazza

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.


Chatting: Discord

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.

ACCOMMODATION/EXTENSION: TREY

If you have a request that is time-sensitive (such as the need for an extension due to a medical/personal issue) or if you want to inform us of a time sensitive CFA, faculty, medical, or any other kind of accommodation, mail Trey (cpsc310-admin@cs.ubc.ca)

Admin Problems: Trey

For admin-related questions (need to get into Piazza but can't, Need to supply a CFA accommodation letter for extra time on exams or another semester-long accommodation), please contact: cpsc310-admin@cs.ubc.ca to ensure a timely and accurate response. This is the same procedure as for first and second year CS classes.

Reaching out: Elisa

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.

About the waitlist:

Unfortunately, we cannot sign course registration forms and have no knowledge or control over the class composition or waitlists. If you have any questions about registration, please contact the CS advisors. The waitlists will be frozen in the first week of the semester. You will be contacted if you were not admitted into the course. Please watch SSC to make sure you know if you are admitted.

More waitlist instructions are available here.

About the labs:

This is a pair-programming course: If you want to work with someone specific for your project, be sure that both of you register for the SAME lab section. We do not have the ability to move people around between labs; please either monitor the SSC for space in your preferred lab sections, move to another lab with space, or find a partner in the lab you are registered in. Teams must be firm by the time of your first lab following the add/drop deadline. If you do not have a partner, it is your responsibility to notify the TA in lab that week so you can be paired up. If you do not have a partner at the end of your lab that week, you will not be able to complete the project. Finding a partner is your responsibility and is key to your having a great term, please take the time to do this right.

Cheating:

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). Cases will be referred to the dean and students have received 0 in the course, and been suspended for copying in past terms.

Respectful Environment:

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.

License

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.