SE 4367.001 - Software Testing Verification Validation and Quality Assurance

Spring 2022

Course Information

Location: MS Teams
Time: Tuesday & Thursday 11:30am - 12:45pm
Instructor: Wei Yang
Email: wei.yang@utdallas.edu
Office: ECSS 4.225
Office Hours: By Appointment
TA: Simin Chen, Zihe Song
Email: Simin.Chen@utdallas.edu, zihe.song@utdallas.edu
Office: MS Teams
Office Hours: TBD

Course Style

This course is taught in a lecture-course style. Each student will be expected to accomplish:

Textbooks

This course will use The Fuzzing Book as the main textbook, and students can refer to following books for other background knowledge.
Static Program Analysis
The Debugging Book
Computer Security and the Internet: Tools and Jewels
The Art and Science of Analyzing Software Data (using UTD email to access)
Dive into Deep Learning
Building Intelligent Systems: A Guide to Machine Learning Engineering (using UTD email to access)
Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow (using UTD email to access)

Assignment

Assignment1: Setting up the fuzzing book

Assignment2: Test drive AFL

Schedule and Lecture Slides

Week Dates Topic Material
1.1 Jan. 18th Course Overview [Slides] [Video]
1.2 Jan. 20th Introduction to Software Testing [Slides] [Video] [Book Chapter] [Reading1] [Reading2]
2.1 Jan. 25th Coverage [Slides] [Video] [Book Chapter] [Reading1] [Reading2]
2.2 Jan. 27th Fuzzing [Slides] [Video] [Book Chapter1] [Book Chapter2] [Reading1] [Reading2]
3.1 Feb. 1st Mutation Analysis [Slides] [Video] [Book Chapter] [Reading1] [Reading2]
3.2 Feb. 3rd Greybox Testing [Slides] [Video] [Book Chapter] [Reading1] [Reading2] [AFLFast] [AFLGo]
4.1 Feb. 8th Mutation Testing [Slides] [Video] [Book Chapter] [Reading1] [Reading2] [Reading3]
4.2 Feb. 10th Program Input Grammars[Slides] [Video] [Book Chapter1] [Reading1] [Reading2]
5.1 Feb. 15th Grammar-based Testing[Slides] [Video] [Book Chapter] [Reading1] [Reading2]
5.2 Feb. 17th Parsing Program Input[Slides] [Video] [Book Chapter] [Reading1] [Reading2]
6.1 Feb. 22nd Probabilistic Testing[Slides] [Video] [Book Chapter] [Reading1] [Reading2]
6.2 Feb. 24th Delta Debugging[Slides] [Video] [Book Chapter] [Reading1] [Reading2]
7.1 March. 1st Mid-term Exam
7.2 March. 3rd Search-Based Testing [Slides] [Video] [Book Chapter] [Reading1] [Reading2]
8.1 March. 8th Information Flow Analysis[Slides] [Video] [Book Chapter] [Reading1] [Reading2]
8.2 March. 10th Symbolic Execution (1)[Slides] [Video] [Book Chapter] [Reading1] [Reading2]
9 March 14 – 20 Spring Break!
10.1 March 22nd Symbolic Execution (2)[Slides] [Video] [Book Chapter] [Reading1] [Reading2]
10.2 March 24th Testing APIs[Slides] [Video] [Book Chapter] [Reading1] [Reading2]
11.1 March 29th Testing Graphical User Interfaces[Slides] [Video] [Book Chapter] [Reading1] [Reading2]
11.2 March 31st Mobile Testing[Slides] [Video] [Reading1] [Reading2]
12.1 April 5th Fundermentals of Testing ML models[Slides] [Video] [Reading1] [Reading2]
12.2 April 7th Robustness Testing[Slides] [Video] [Reading1] [Reading2]
13.1 April 12th Testing NLP models[Slides] [Video] [Reading1] [Reading2]
13.2 April 14th Game Testing[Slides] [Video] [Reading1] [Reading2]
14.1 April 19th Energy Testing (1)[Slides] [Video] [Reading1] [Reading2]
14.2 April 21st Energy Testing (2)[Slides] [Video] [Reading1] [Reading2]
15.1 April 26th Advance Topic in Software Testing (1)[Slides] [Video] [Reading1] [Reading2]
15.2 April 28th Advance Topic in Software Testing (2)[Slides] [Video] [Reading1] [Reading2]