Overview

Welcome to Software Design! Most class meetings will have preparation that you should do beforehand and learning objectives that you should be comfortable with before class and after class.

I know that this first one you might not be able to get done before class, so please just get it done as soon as you can after.

Basic Learning Objectives

These are the learning objectives that each student is responsible for having proficiency at BEFORE the class meeting. Sometimes there will be checks, but since this is an upper-level class, sometimes you will need to just assess for yourself if you are proficient at these objectives.

If you aren’t sure of any of them, you should definitely aim to reach out before the class meeting to clear things up.

Before class, you should be able to:

  • Explain how your grade in this course will be determined
  • List the learning goals of the course
  • Explain very basically what the concepts of software design are

Advanced Learning Objectives

After class, you should be able to:

  • List the assignments and structure of the class
  • Explain the goals of the course
  • Explain at a basic level some ways software can be badly designed

Readings

To achieve the basic learning objectives, you should read the following:

Checks

Complete the following:

  • Join CampusWire and post an introduction in “General” with the following:
    • Your preferred name and optionally your pronouns
    • Your class year
    • Why you decided to take this class/what you’re hoping to get out of this class
    • One hobby/thing you like to do for fun