CSE 503 Spring 2022
Course Calendar

Subscribe to this calendar (Google, iCal, etc.)

 Show color key
March
MondayTuesdayWednesdayThursdayFriday
28 29
11:30-12:50 Lecture
LOW 105
Introduction
30 31
11:30-12:50 Lecture
LOW 105
Static and dynamic analysis. Read notes chapter 1 and section 2.24 (Notes on "Static and dynamic analysis: synergy and duality"); Static and dynamic analysis: synergy and duality; Lessons from building static analysis tools at Google
01
23:59 HW1: Development difficulties; submit via Canvas
April
MondayTuesdayWednesdayThursdayFriday
04 05
00:01 Exercises 4 and 5 from the notes; submit via Canvas
11:30-12:50 Lecture
LOW 105
Abstract interpretation. Read notes sections 2.0 - 2.14.
23:59 Form groups for class project and inform the course staff; optional: read potential research projects (note 3 other lists of projects are linked from it)
06 07
00:01 Exercises 15 and 16 (monotonicicy) and 26 and 27 (Stein's algorithm) from the notes; submit via Canvas
11:30-12:50 Lecture
LOW 105
Abstract interpretation. Read notes rest of chapter 2; Abstract Interpretation: a semantics-based tool for program analysis sections 1.0-2.2; skim remainder of section 2.
08
23:59 Project proposals due; submit via Canvas
11
Read project proposals.
12
00:01 Exercise 29 (divide by zero design) from the notes; submit via Canvas
11:30-12:50 Lecture
LOW 105
Abstract interpretation wrapup & demo
13 14
00:01 Exercises 31-33 (first 3 DART exercises) from the notes; submit via Canvas
11:30-12:50 Lecture
LOW 105
Dynamic analysis: testing, paths. Read notes sections 3.0 - 3.6; "DART: Directed automated random testing".
15
23:59 Re-submit project proposal, via Canvas; your project proposal should have received approval from the staff before submitting
18 19
23:59 Exercise 30 (divide by zero implementation) from the notes; submit via Canvas
20 21
00:01 Reading questions on program repair (1); submit via Canvas
22
23:59 Related work and methodology due (as part of your overall report); submit via Canvas
25 26
11:30-12:50 Lecture
LOW 105
15-minute project presentations about your proposal and methodology. Submit your slides on Canvas at least 1 hour before lecture, so that Mike and Martin can print copies on which to take notes (please also use a light background for your slides, for the same reason).
27 28
00:01 Reading questions on program repair (2); submit via Canvas
29
May
MondayTuesdayWednesdayThursdayFriday
02 03
00:01 Reading questions on program slicing (1); submit via Canvas
11:30-12:50 Lecture
LOW 105
Static slicing. Read "Program slicing" by Mark Weiser. Read "Thin slicing", by Manu Sridharan, Stephen J. Fink and Ras Bodik, in PLDI 2007.
04 05
00:01 Reading questions on program slicing (2); submit via Canvas
11:30-12:50 Lecture
LOW 105
Dynamic slicing. Read Debugging Reinvented: Asking and Answering Why and Why Not Questions About Program Behavior by Amy J. Ko and Brad A. Myers, in ICSE '08, "Cost Effective Dynamic Program Slicing", by Xiangyu Zhang and Rajiv Gupta, in PLDI 2004.
06
23:59 Address feedback on related work and methodology due (as part of your overall report); submit via Canvas
09 10
11:30-12:50 Lecture
LOW 105
No Class. Work on your projects: initial results due Friday.
11 12
00:01 Reading questions on ML4SE (1); submit via Canvas
13
23:59 Initial results due; submit via Canvas
16 17
11:30-12:50 Lecture
LOW 105
ML for SE. Read "Suggesting accurate method and class names".
18 19
11:30-12:50 Lecture
LOW 105
15-minute project presentations about your project status.
20
23 24
00:01 Reading questions on model checking (1); submit via Canvas
25 26
00:01 Reading questions on model checking (2); submit via Canvas
27
30
Memorial Day
31
00:01 Reading questions on typestate; submit via Canvas
01 02
00:01 Reading questions on accumulation, which should be submitted via Canvas; class evaluations (in class; all you need to do is bring a laptop)
11:30-12:50 Lecture
LOW 105
Accumulation analysis. Read Chapter 3 of Lightweight Verification via Specialized Typecheckers, titled "Lightweight Verification via Accumulation Analysis."
03
23:59 Final report due; submit via Canvas
June
MondayTuesdayWednesdayThursdayFriday
06 07 08
00:01 Final presentation slides due; submit via Canvas
16:30-18:20 Final presentations
09 10
23:59 Revised final report; submit via Canvas