| W 01/19/22 | What is Software Engineering? [overview]
 | Some homeworks 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) | 
	
		| M 01/24/22 | Process, Risk and Scheduling [overview]
 | 
 |  | 
	
		| W 01/26/21 | Measurement [overview]
 | HW0 due |  | 
	
		| M 01/31/22 | Quality Assurance and Testing [qa]
 | HW1a due |  | 
	
		| W 02/02/22 | Test Suite Quality Metrics [qa]
 | 
 |  | 
	
		| M 02/07/22 | Test Inputs, Oracles and Generation [qa]
 | HW1b,c,d due |  | 
	
		| W 02/09/22 | Code Inspection and Review [qa]
 | 
 |  | 
	
		| M 02/14/22 | Dynamic Analysis Tools [qa]
 | 
 |  | 
	
		| W 02/16/22 | Pair Programming and Skill Interviews [coding]
 | 
 |  | 
	
		| 02/20/22 | (None; this is a sunday) | HW2 due | 
 | 
	
		| M 02/21/22 | Static & Dataflow Analysis (1/2) [qa]
 | HW3 is due after Exam1. However, leaving much work of HW3 until after the exam typically works poorly for students! |  | 
	
		| W 02/23/22 | Static & Dataflow Analysis (2/2) [qa]
 | 
 |  | 
		| M 02/28/22 | Defect Reporting and Triage [bugs]
 | 
 |  | 
	
		| W 03/02/22 | Exam 1. | Exam Example, Key for Exam Example | 
 | 
	
		| 03/06/22 | (None; this is a Sunday) | HW3 due | 
 | 
	
		| 03/07/22 | Spring Break |  | 
 | 
		
		| 03/09/22 | Spring Break |  | 
 | 
	
	
		| M 03/14/22 | Fault Localization and Profiling [bugs]
 | 
 |  | 
	
		| W 03/16/22 | Debugging as Hypothesis Testing [bugs]
 | 
 |  | 
	
		| 03/20/22 | (None; this is a Sunday) | HW4 due | 
 | 
	
		| M 03/21/22 | Debugging as Hypothesis Testing (cont.) + Exam1 Discussion [bugs]
 | 
 |  | 
	
		| W 03/23/22 | Requirements and Specifications [design]
 | 
 |  | 
	
		| M 03/28/22 | Guest Lecture, Dr. Denae Ford Senior Researcher, Microsoft Research
 Note:  This lecture will be a remote lecture over Zoom. Zoom link will be emailed to students before the lecture.
 | The Next Generation of Software Developers (slides) | 
 | 
	
		| W 03/30/22 | Elicitation, Validation and Risk [design]
 | 
 |  | 
	
		| M 04/04/22 | Designing for Maintainability [design]
 | HW5 due |  | 
	
		| W 04/06/22 | Guest Lecture, Adam Brady Google
 Note:  This lecture will be a remote lecture over Zoom. Zoom link will be emailed to students before the lecture.
 | SRE, Service Levels, and Error Budgets | 
 | 
	
		| M 04/11/22 | Patterns
        and Anti-Patterns [design]
 
 
 | HW6a due |  | 
	
		| W 04/13/21 | Code Inspection and the Brain [coding, qa]
 | 
 |  | 
	
		| M 04/18/21 | Productivity [coding]
 (this lecture includes a participation component; you will need a coding laptop/environment)
 | 
 |  | 
	
		| W 04/20/22 | Guest Lecture, Dr. Chad Spensky 
 Note:  This lecture will be a remote lecture over Zoom. Zoom link will be emailed to students before the lecture.
 | Lecture SlidesM 04/25/22 | Automatic Program Repair [overview]
 | 
 |  | 
	
		| W 04/27/22 | Bonus Lecture: Human Factors in SE, AI4SE, SE4AI 
 
 TBA
 |  |  | 
	
		| F 05/06/22 | Final
          Exam (Exam2).  Online | Exam2 example (key included) HW6b due — Note that there are absolutely no extensions on HW6b.  It is already extended as long as possible.  The late policy does not apply.  Please plan accordingly. | 
 |