== Tentative Schedule == ***Week 1** (8/25) *Introduction [[http://www.cs.purdue.edu/homes/xyzhang/fall08/1-introduction.pdf|Slides]] *Program Representation [[http://www.cs.purdue.edu/homes/xyzhang/fall08/2-representation.ppt|Slides]] *Reading: [[http://www.cs.purdue.edu/homes/xyzhang/fall08/representation.pdf|Book Chapters]] *Dynamic Program Analysis Primitives - Tracing[[http://www.cs.purdue.edu/homes/xyzhang/fall08/3-tracing.ppt|Slides]] *Reading:[[http://www.cs.purdue.edu/homes/xyzhang/fall08/valgrind.pdf|Valgrind:a framework for heavyweight dynamic binary instrumentation]] *Suggested Reading:[[http://www.cs.purdue.edu/homes/xyzhang/Comp/taco05.pdf|Whole Execution Trace]] (Section 4 only) ***Week 2** (9/1) *Profiling[[http://www.cs.purdue.edu/homes/xyzhang/fall08/4-profiling.ppt|Slides]] *Reading:[[http://www.cs.purdue.edu/homes/xyzhang/fall08/epp.pdf|Efficient Path Profiling]] ***Week 3** (9/8) *Logging and Replay[[http://www.cs.purdue.edu/homes/xyzhang/fall08/5-checkpointing.ppt|Slides]] *Reading:[[http://www.cs.purdue.edu/homes/xyzhang/fall08/jockey.pdf|Jockey:A Userspace Library for Recordreplay Debugging]] *Suggested Reading:[[http://www.cs.purdue.edu/homes/xyzhang/fall08/flashback.pdf|Flashback]] ***Student Presentation**[[http://www.cs.purdue.edu/homes/xyzhang/fall08/mirth.pptx|Experience with Mirth: An Open Source Health Care Integration Engine]] by Al-Ansari, Salman R. *Dynamic Slicing[[http://www.cs.purdue.edu/homes/xyzhang/fall08/6-slicing.ppt|Slides]] ***Week 4** (9/15) *Dynamic Slicing *Execution Indexing[[http://www.cs.purdue.edu/homes/xyzhang/fall08/7-indexing.ppt|Slides]] *Reading:[[http://www.cs.purdue.edu/homes/xyzhang/Comp/pldi08.pdf|Efficient Program Execution Indexing]] ***Student Presentation**[[http://www.cs.purdue.edu/homes/xyzhang/fall08/todo.pptx|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[[http://www.cs.purdue.edu/homes/xyzhang/fall08/8-debugging_new.ppt|Slides]] *Reading:[[http://www.cs.purdue.edu/homes/xyzhang/fall07/Papers/delta-debugging.pdf|Simplifying and Isolating Failure-Inducing Input]] ***Student Presentation**[[http://www.cs.purdue.edu/homes/xyzhang/fall08/kernel.pptx|A Tale of Four Kernels]] by Tao *Dynamic Analysis Applications[[http://www.cs.purdue.edu/homes/xyzhang/fall08/9-applications.ppt|Slides]] ***Week 6** (9/29) *Propositional Logic[[http://www.cs.purdue.edu/homes/xyzhang/fall08/10-logic.pdf|Slides]] *Reading: Chapter one of //Logic in Computer Science//. *Logic ***Student Presentation**[[http://www.cs.purdue.edu/homes/xyzhang/fall08/william.pptx|Precise memory leak detection for java software using container profiling]] by William *CNF ***Week 7** (10/6) *SAT solving ***Student Presentation**[[http://www.cs.purdue.edu/homes/xyzhang/fall08/brandon.pptx|jPredictor]] by Brandon *Model Checking C Programs[[http://www.cs.purdue.edu/homes/xyzhang/fall08/11-cbmc-1.ppt|Slides 1]][[http://www.cs.purdue.edu/homes/xyzhang/fall08/11-cbmc-2.pdf|Slides 2]][[http://www.cs.purdue.edu/homes/xyzhang/fall08/11-cbmc-3.ppt|Slides 3]] *Reading:[[http://www.kroening.com/papers/dac2003.pdf|CBMC]]. ***Week 8** (10/13) ***Student Presentation**[[http://www.cs.purdue.edu/homes/xyzhang/fall08/jayaram.pptx|Static Detection of Cross-Site Scripting Vulnerabilities]] by Jayaram *Model Checking Java Programs[[http://www.cs.purdue.edu/homes/xyzhang/fall08/12-jpf-1.ppt|Slides]] *[[http://ti.arc.nasa.gov/people/wvisser/ase00FinalJournal.pdf|Reading:Model Checking Programs]] ***Week 9** (10/20) *JPF-Predicate Abstraction[[http://www.cs.purdue.edu/homes/xyzhang/fall08/12-jpf-2.ppt|Slides]] *Suggested Reading:[[http://mtc.epfl.ch/~tah/Publications/lazy_abstraction.pdf|Lazy Abstraction]] ***Student Presentation**[[http://www.cs.purdue.edu/homes/xyzhang/fall08/salman.pptx|Incremental state-space exploration for programs with dynamically allocated data]] by Salman Pervez *JPF-Partial Order Reduction[[http://www.cs.purdue.edu/homes/xyzhang/fall08/12-jpf-3.ppt|Slides]] *Midterm *Static Program Analysis ***Week 10** (10/27) *Static Program Analysis[[http://www.cs.purdue.edu/homes/xyzhang/fall08/13-static.ppt|Slides]] *Reading: Dragon book 9.2 (9.3 and 9.4 are suggested). ***Student Presentation**[[http://www.cs.purdue.edu/homes/xyzhang/fall08/anurag.pptx|Using Components for Architecture-Based Management: The Self-Repair Case]] by Anurag ***Week 11** (11/3) *Logic based Program Analysis (Datalog)[[http://www.cs.purdue.edu/homes/xyzhang/fall08/14-datalog-1.ppt|Slides]] *Reading: Dragon book 12.3 and 12.4 ***Student Presentation **[[http://www.cs.purdue.edu/homes/xyzhang/fall08/mike.pptx|Unknown]] by Mike *BDD (Datalog)[[http://www.cs.purdue.edu/homes/xyzhang/fall08/14-datalog-2.ppt|Slides-2]] *Datalog[[http://www.cs.purdue.edu/homes/xyzhang/fall08/14-datalog-3.ppt|Slides-3]][[http://www.cs.purdue.edu/homes/xyzhang/fall08/14-datalog-4.ppt|Slides-4]] ***Week 12** (11/10) *Software Verification[[http://www.cs.purdue.edu/homes/xyzhang/fall08/15-hoare.ppt|Slides]] *Reading: Logic in Computer Science 4.1-4.3 ***No Student Presentation** ***Week 13** (11/17) *Software Verification[[http://www.cs.purdue.edu/homes/xyzhang/fall08/15-hoare.ppt|Slides]] ***Student Presentation (11/21) **[[http://www.cs.purdue.edu/homes/xyzhang/fall08/chao.pptx|Unknown]] by Chao *Software Process[[http://www.cs.purdue.edu/homes/xyzhang/fall08/16-process.ppt|Slides]] ***Week 14** (11/24) *Software Process-Unified Process[[http://www.cs.purdue.edu/homes/xyzhang/fall08/17-rup.ppt|Slides]] ***Student Presentation (11/24) **[[http://www.cs.purdue.edu/homes/xyzhang/fall08/tulika.pptx|Unknown]] by Tulika ***Week 15** (12/1) *Extreme Programming[[http://www.cs.purdue.edu/homes/xyzhang/fall08/18-xp.ppt|Slides]] ***Student Presentations (12/3) **[[http://www.cs.purdue.edu/homes/xyzhang/fall08/emil.pptx|Unknown]] by Emil [[http://www.cs.purdue.edu/homes/xyzhang/fall08/yunhui.pptx|Unknown]] by Yunhui *Software Testing[[http://www.cs.purdue.edu/homes/xyzhang/fall08/19-testing.ppt|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