Date Topic and Notes Assignments Reading For This Class
T 01/09/24 What is Software Engineering?
[overview]
All homeworks (almost :)) are posted. Start early!
  • HW0 Specification. HW0 is optional, but students have reported in previous semesters that they have to create a Virtual Machine anyway for HW1 through HW5. HW0 walks you through it. HW0 also contains a video tutorial on terminals/bash.
  • HW1 Specification.
  • HW6 Specification is worth reading early (trust me, you will regret if you don't read it early).
(none; first day of class)
TR 01/11/24 Process, Risk and Scheduling
[overview]

01/14/24 (None; this is a Sunday) HW0 due
T 01/16/24 Measurement
[overview]
TR 01/18/24 Quality Assurance and Testing
[qa]
01/21/24 (None; this is a Sunday) HW1a due
T 01/23/24 Test Suite Quality Metrics
[qa]

TR 01/25/24 Test Inputs, Oracles and Generation
[qa]
01/28/24 (None; this is a Sunday) HW1bcd due
T 01/30/24 Unit Testing-jUnit
[qa]
Th 02/01/24 Code Inspection and Review
[qa]

T 02/06/24 Dynamic Analysis Tools
[qa]

Th 02/08/24 Pair Programming and Skill Interviews
[coding]

02/11/24 (None; this is a Sunday) HW2 due
T 02/13/24 Guest Lecture, Aakash Bansal, Continue on Job Interview
ABD PhD Candidate, University of Notre Dame
Context Aware Models for Automatic Source Code Summarization
Th 02/15/24 Static & Dataflow Analysis (1/3)
[qa]
T 02/20/24 Static & Dataflow Analysis (2/3)
[qa]

Th 02/22/24 Static & Dataflow Analysis (3/3)
[qa]

T 02/27/24 Exam 1 (Midterm) Review + HW3 Review
TR 02/29/24 Defect Reporting and Triage
[bugs]

03/03/24 (None; this is a sunday) HW3 due
T 03/05/24 Exam 1 (Midterm)
Th 03/07/24 Fault Localization and Profiling
[bugs]

03/10/24 (None; this is a Sunday) HW4 due (I'm adding a new fun homework here)
03/12/24 Spring Break
03/14/24 Spring Break
T 03/19/24 Debugging as Hypothesis Testing I
[bugs]

TR 03/21/24 HW5 + GitHub Review
T 03/26/24 Debugging as Hypothesis Testing II
[bugs]

Th 03/28/24 Automatic Program Repair
03/31/24 (None; this is a Sunday) HW5 due
T 04/02/24 Requirements and Specifications + Elicitation, Validation and Risk
[design]
TR 04/04/24 Designing for Maintainability
[design]
04/07/24 (None; this is a Sunday) HW6a due
T 04/09/24 Productivity
[coding]
(this lecture includes a participation component; you will need a coding laptop/environment)

TR 04/11/24 Bonus Lecture: Human Factors and Human-centered AI for SE


T 04/16/24 Final Exam Review.
TR 04/18/24 Final Exam (Exam2).
04/21/24 (None; this is a sunday) HW6b due — Note that there are absolutely no extensions on HW6b. The grace period and late policy do not apply. Please plan accordingly.