Subscribe to this calendar (Google, iCal, etc.)
September | ||||
Monday | Tuesday | Wednesday | Thursday | Friday |
26 | 27 | 28 | 29 | 30 |
October | ||||
Monday | Tuesday | Wednesday | Thursday | Friday |
03 | 04
11:30-12:50 Lecture
CSE2 387 Static and dynamic analysis. Read notes chapter 1; Static and dynamic analysis: synergy and duality; Lessons from building static analysis tools at Google; Read notes section 2.24 (Notes on "Static and dynamic analysis: synergy and duality") |
05
Read HW1 submissions.
|
06
11:30-12:50 Lecture
CSE2 387 Abstract interpretation. Read notes sections 2.0 - 2.14, exercises 4 and 5 (choosing a domain) and 15 and 16 (monotonicicy). |
07
23:59 Form groups for class project and inform the course staff
|
10 | 11
11:30-12:50 Lecture
CSE2 387 Abstract interpretation. Read notes rest of chapter 2, exercises 26 and 27 (Stein's algorithm); Abstract Interpretation: a semantics-based tool for program analysis sections 1.0-2.2; skim remainder of section 2. |
12
23:59 Project proposals due
|
13
11:30-12:50 Lecture
CSE2 387 Abstract interpretation wrapup & demo; exercise 29 (divide by zero design) |
14
Read project proposals.
|
17 | 18
11:30-12:50 Lecture
CSE2 387 Dynamic analysis: testing, paths. Read notes sections 3.0 - 3.6; "DART: Directed automated random testing"; exercises 31-33 (first 3 DART exercises) |
19
23:59 Re-submit project proposal; your project proposal should have received approval from the staff before submitting
|
20
11:30-12:50 Lecture
CSE2 387 Test generation. Read Feedback-directed Random Test Generation, EvoSuite: Automatic Test Suite Generation for Object-Oriented Software; exercise 30 (divide by zero implementation) |
21 |
24
23:59 Related work and methodology due (as part of your overall report)
|
25
11:30-12:50 Lecture
CSE2 387 Program repair. Read "A systematic study of automated program repair: fixing 55 out of 105 bugs for $8 each" |
26 | 27
11:30-12:50 Lecture
CSE2 387 15-minute project presentations about your proposal and methodology. Submit your slides on Canvas at least 1 hour before lecture, so that the instructors can print copies on which to take notes (please also use a light background for your slides, for the same reason). |
28 |
31 | 01
11:30-12:50 Lecture
CSE2 387 Program repair. Read "An Analysis of Patch Plausibility and Correctness for Generate-and-Validate Patch Generation Systems", "Angelix: Scalable Multiline Program Patch Synthesis via Symbolic Analysis" |
02 | 03
11:30-12:50 Lecture
CSE2 387 Static slicing. Read "Program slicing" by Mark Weiser. Read "Thin slicing", by Manu Sridharan, Stephen J. Fink and Ras Bodik, in PLDI 2007. |
04 |
November | ||||
Monday | Tuesday | Wednesday | Thursday | Friday |
07 | 08
11:30-12:50 Lecture
CSE2 387 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. |
09 | 10
11:30-12:50 Lecture
CSE2 387 ML for SE. Read Neural software analysis, code2vec: learning distributed representations of code; visit the code2vec website. |
11
Veteran's Day
|
14 | 15 | 16 | 17
11:30-12:50 Lecture
CSE2 387 15-minute project presentations about your project status. |
18 |
21 | 22
11:30-12:50 Lecture
CSE2 387 Model checking. Review linear temporal logic and buchi automaton. Read "CMC: a pragmatic approach to model checking real code" and "Finding and Reproducing Heisenbugs in Concurrent Programs". |
23 | 24
Thanksgiving
|
25
Fri. after Thanksgiving
|
28 | 29
11:30-12:50 Lecture
CSE2 387 Model checking. Read "The Model Checker SPIN", "Using predicate abstraction to reduce object-oriented programs for model checking", and "Counterexample-Guided Abstraction Refinement". |
30 | 01
11:30-12:50 Lecture
CSE2 387 TBD |
02 |
December | ||||
Monday | Tuesday | Wednesday | Thursday | Friday |
05 | 06
11:30-12:50 Lecture
CSE2 387 TBD |
07 | 08
11:30-12:50 Lecture
CSE2 387 TBD |
09 |
12 | 13 | 14
16:30-18:20 Final presentations
|
15 | 16 |