CPSC 310 101 2020W

Instructor(s)
Online Adaptations

Lectures, labs, and office hours, will all be online in Zoom.  Links are available through the Piazza course (linked from the website).

Certain things must be attended in person:

  • Several mini-midterms in class time (listed in the course calendar)
  • Retrospective meetings with your TA's in labs the week following Checkpoint deadlines
  • The final exam

Lectures will be recorded and can be viewed asynchronously. They will be linked from the course website. 

Extended Description

CPSC 310 will be a challenging course that we have designed to integrate many of the ideas and concepts from your prior courses in order to help you to learn how to apply them to engineering modern software systems. The official course learning outcomes (CLOs) for CPSC 310 are:

    1. Evaluate software engineering processes used to build modern industrial-calibre systems by justifying their benefits and tradeoffs.
    2. Elicit, deconstruct, and refine functional requirements and quality attributes such that they are described succinctly, completely, and precisely.
    3. Devise and justify high- and low-level designs to support a given set of requirements and in support of future evolutionary needs.
    4. Iteratively derive implementations of a design of reasonable complexity incorporating emergent design implications, and applying code-level restructuring for the sake of facilitating changes.
    5. Carry out the implementation of a design incorporating ethical and security implications of code-level choices and software process and methodological approaches.
    6. Independently acquire and apply modern and unfamiliar technology and language stacks.
    7. Validate systems using both black-box and white-box approaches to reason about, and improve the quality of a software system.
Course Info
Section
101
Term
Term 1
Session
2020W
Dates
Days
Tue Thu
Time (start)
12:30 PM
Time (end)
2:00 PM
Date (start)
Date (end)