Tentative Schedule
Week 1
(8/25)
Introduction
Slides
Program Representation
Slides
Reading:
Book Chapters
Dynamic Program Analysis Primitives - Tracing
Slides
Reading:
Valgrind:a framework for heavyweight dynamic binary instrumentation
Suggested Reading:
Whole Execution Trace
(Section 4 only)
Week 2
(9/1)
Profiling
Slides
Reading:
Efficient Path Profiling
Week 3
(9/8)
Logging and Replay
Slides
Reading:
Jockey:A Userspace Library for Recordreplay Debugging
Suggested Reading:
Flashback
Student Presentation
Experience with Mirth: An Open Source Health Care Integration Engine
by Al-Ansari, Salman R.
Dynamic Slicing
Slides
Week 4
(9/15)
Dynamic Slicing
Execution Indexing
Slides
Reading:
Efficient Program Execution Indexing
Student Presentation
TODO or To Bug: Exploring How Task Annotations Play a Role in the Work Practices of Software Developers
by Mussabek
Delta Debugging
Week 5
(9/22)
Delta Debugging
Slides
Reading:
Simplifying and Isolating Failure-Inducing Input
Student Presentation
A Tale of Four Kernels
by Tao
Dynamic Analysis Applications
Slides
Week 6
(9/29)
Propositional Logic
Slides
Reading: Chapter one of
Logic in Computer Science
.
Logic
Student Presentation
Precise memory leak detection for java software using container profiling
by William
CNF
Week 7
(10/6)
SAT solving
Student Presentation
jPredictor
by Brandon
Model Checking C Programs
Slides 1
Slides 2
Slides 3
Reading:
CBMC
.
Week 8
(10/13)
Student Presentation
Static Detection of Cross-Site Scripting Vulnerabilities
by Jayaram
Model Checking Java Programs
Slides
Reading:Model Checking Programs
Week 9
(10/20)
JPF-Predicate Abstraction
Slides
Suggested Reading:
Lazy Abstraction
Student Presentation
Incremental state-space exploration for programs with dynamically allocated data
by Salman Pervez
JPF-Partial Order Reduction
Slides
Midterm
Static Program Analysis
Week 10
(10/27)
Static Program Analysis
Slides
Reading: Dragon book 9.2 (9.3 and 9.4 are suggested).
Student Presentation
Using Components for Architecture-Based Management: The Self-Repair Case
by Anurag
Week 11
(11/3)
Logic based Program Analysis (Datalog)
Slides
Reading: Dragon book 12.3 and 12.4
Student Presentation
Unknown
by Mike
BDD (Datalog)
Slides-2
Datalog
Slides-3
Slides-4
Week 12
(11/10)
Software Verification
Slides
Reading: Logic in Computer Science 4.1-4.3
No Student Presentation
Week 13
(11/17)
Software Verification
Slides
Student Presentation (11/21)
Unknown
by Chao
Software Process
Slides
Week 14
(11/24)
Software Process-Unified Process
Slides
Student Presentation (11/24)
Unknown
by Tulika
Week 15
(12/1)
Extreme Programming
Slides
Student Presentations (12/3)
Unknown
by Emil
Unknown
by Yunhui
Software Testing
Slides
Final Project Presentations (12/5)
Bao, Tao
Week 16
(12/8)
Presentations(12/8)
Al-Ansari, Salman R.
Baimukhambetov, Mussabek
Culhane, William J.
Hill, Brandon G.
Presentations(12/10)
Kallapalayam Radhakrishnan, Jayaram
Pervez, Salman
Singh, Anurag
Sorensen, Michael E.
Presentations(12/12)
Xu, Chao
Srivastava, Tulika
Stefanov, Emil P.
Zheng, Yunhui
Review