CS 312 - Software Development

Course Information
Piazza
Class GitHub
Gradescope
Socrative

Schedule

This is a living schedule and subject to change

Week Date Topic Assignments
1 09/10 Introduction (slides) and JavaScript (slides) Attendance, Getting Started
09/12 Node, npm, Unit testing, Linting (slides)
npm practical
Attendance
2 09/17 JavaScript and the DOM
DOM practical
09/19 React, Design patterns (MVC) (slides)
React Color Picker example
09/20 Assignment 1 due
3 09/24 More React, Styling, Composition vs. inheritance(slides)
FilmExplorer-Standalone
09/26 DevOps(slides)
4 09/30 Assignment 2 due
10/01 AJAX, Promises, Consuming REST APIs (slides)
Fetch practical
10/03 React testing (slides)
React TDD practical
5 10/07 Assignment 3 due
10/08 Behavioral testing, User stories, Lo-fi Mockups (slides)
React BDD practical
Project proposals due 5p
10/10 Agile development processes (slides)
Feature practical (optional)
6 10/15 Sprint 0 planning
10/17 Servers, Creating REST APIs, Models (M in MVC) (slides)
Server practical
10/18 Assignment 4 due
7 10/22 No Class - Fall break
10/23 Sprint 0 deliverables due
10/24 Sprint 1 planning
8 10/29 Databases, Models, Associations, RDBMS (slides)
RDBMS practical
10/31 RDBMS practical (cont.)
9 11/05 Sprint 1 demos, retrospective Sprint 1 deliverables due
11/05-7 Take home midterm
11/07 Sprint 2 planning
10 11/12 NoSQL (and MongoDB) (slides)
MongoDB practical
11/14 Login practical
11 11/19 Sprint 2 demos, retrospective Sprint 2 deliverables due
11/21 Sprint 3 planning
12 11/26 Beyond correctness (slides)
11/28 No class - Thanksgiving
13 12/03 The moral developer (slides)
12/05 Wrap up
14 12/09 Presentations 1:30