Software Analysis, Testing and Verification (软件分析与验证前沿), Spring 2023

基本课程信息

Lectures

Date
Topic
Material
19 Sep. Course Introduction: Program Analysis Course Introduction
25 Sep. Software Specifications Testing Techniques, Coverage Effectiveness,
Oracle Problem, Programs, Tests, and Oracles
9 Oct. The LLVM Framework LLVM Primer
16 Oct. Random Testing (Fuzzing) Randoop (paper, tool); AFL (tool); Sanitizers
23 Oct. Metamophic Testing & Property-based Testing MT (paper1, paper2, more);
PBT (QuickCheck, Hypothesis, junit-quickcheck, more)
30 Oct. Delta Debugging C-Reduce, HDD
6 Nov. Intro to Static Program Analysis Static Program Analysis, Soundiness
13 Nov. Data Flow Analysis (Part 1)
20 Nov. Data Flow Analysis (Part 2)
27 Nov. Pointer Analysis
4 Dec. Information Flow Analysis (Taint Analysis), Lecturer: Haiying Sun
11 Dec. Symbolic Execution KLEE (paper, tool)
18 Dec. CFL-Reachability and IFDS
- Paper & Tool Presentation Paper list


Acknowledgement: Some course slides are adapted from Prof. Mayur Naik's course of Software Analysis and Prof. Michael Pradel's course of Program Analysis.