Jan 4 Wed |
What is Software Engineering?
[overview]
(no attendance/participation check, for both sections)
|
Some homeworks are posted.
Start early!
|
|
Jan 9 Mon |
Process, Risk and Scheduling
[overview]
(no attendance/participation check, for both sections)
|
Quiz 0 Due
(future reading quizzes may not be posted on this page)
|
|
Jan 11 Wed |
Measurement
[overview]
(no attendance/participation check, for both sections)
|
HW 0 (Dev Setup) Due
A sample non-graded reading quiz due
(see Gradescope)
|
|
Jan 16 Mon |
— (No Class: MLK)
|
—
|
—
|
Jan 18 Wed |
Quality Assurance and Testing
[qa]
|
HW 1a (Test Coverage) Due
|
|
Jan 23 Mon |
Test Suite Quality Metrics
[qa]
|
|
|
Jan 25 Wed |
Test Inputs, Oracles and Generation
[qa]
|
HW 1b, 1c and 1d (Test Coverage) Due
|
|
Jan 30 Mon |
Code Inspection and Review
[qa]
|
|
|
Feb 1 Wed |
Dynamic Analysis Tools
[qa]
|
|
|
Feb 6 Mon |
Pair Programming and Skill Interviews
[coding]
|
HW 2 (Test Automation) Due
(reminder: assignments are due at this time
even if there are temporary power or networking issues)
|
|
Feb 8 Wed |
Daniel Hoekwater (Google)
[guest]
|
|
|
Feb 13 Mon |
Defect Reporting and Triage
[bugs]
|
(putting off HW 3 typically works poorly for students)
|
|
Feb 15 Wed |
Static & Dataflow Analysis (1/2)
[qa]
|
You should pretend that HW 3 (Mutation Testing) is Due:
studying for the exam while completing HW 3 is difficult
|
|
Feb 20 Mon |
Static & Dataflow Analysis (2/2)
[qa]
|
HW 3 (Mutation Testing) Due
|
|
Feb 22 Wed |
Fault Localization and Profiling
[bugs]
|
|
|
Feb 24 Fri |
—
|
Exam #1 Due
(you pick a 2-hour window within this 24-hour day)
|
|
Feb 27 Mon |
— (No Class: Vacation)
|
—
|
—
|
Mar 1 Wed |
— (No Class: Vacation)
|
—
|
—
|
Mar 6 Mon |
Debugging as Hypothesis Testing
[bugs]
|
(looking into HW 6a projects
early on
improves outcomes)
|
|
Mar 8 Wed |
Requirements and Specifications
[design]
|
HW 4 (Defect Detection) Due
|
|
Mar 13 Mon |
Elicitation, Validation and Risk
[design]
|
|
|
Mar 15 Wed |
Designing for Maintainability
[design]
|
(we recommend overlapping HW 6a with HW 5)
|
|
Mar 20 Mon |
Patterns and Anti-Patterns
[design]
|
HW 5 (Debugging Automation) Due
|
|
Mar 22 Wed |
Automatic Program Repair
[overview]
|
|
|
Mar 27 Mon |
Program Synthesis (Part 1)
[overview]
|
|
|
Mar 29 Wed |
Program Synthesis (Part 2)
[overview]
|
HW 6a (Contribution) Due
|
|
Apr 3 Mon |
José Cambronero (Microsoft) (slides)
[guest]
|
|
|
Apr 5 Wed |
Productivity
(bring a coding laptop!)
[coding]
|
|
|
Apr 10 Mon |
Multi-Language Projects
[coding]
|
|
|
Apr 12 Wed |
Roscoe Bartlett (Sandia National Laboratories) (slides)
[guest]
|
|
|
Apr 17 Mon |
Off-Topic: Software Engineering Practices in Scientific Computing (slides)
[other]
|
You Should Pretend HW 6b (Contribution) is Due
(see below about no late submissions)
|
|
Apr 20 Thu |
—
|
Exam #2 Due
(you pick a 2-hour window within this 24-hour day)
|
Apr 21 Fri |
—
|
HW 6b (Contribution) Due
All Course Materials Due
(cannot be accepted later than this, please plan accordingly)
|