Software Verification and Validation

Course 4th year (English + Romanian), sem. I 2016/2017. Last year's course
Instructor: Marius Minea
Collaborators: ing. Adrian Sima, ing. Alexandru-Sebastian Sârbu

Evaluation: exam
Final grade: 50% lab grade + 50% exam
Exam results

Course material

  1. Introduction (PDF)
    Cem Kaner. What is a good test case?
  2. Black-box Testing (PDF)
    James Bach. Exploratory Testing Explained
    How to Break Software (course notes, U. Alaska, after James Whittaker's book)
  3. White-box Testing. Test coverage (PDF)
    Code Coverage Analysis (Cornett, Bullseye Coverage). A good short presentation (except for multiple condition coverage)
  4. Program verification (PDF)
  5. Static analysis (PDF) (to be updated)
  6. Model checking (PDF)
  7. Formal specification slides by Bertrand Meyer (p. 146-186)
    Specification with JML. Tutorial by Kind Software.
  8. Verification of concurrent programs (PDF)
    see also: Java Memory Model (course at Rice U.)
  9. Testing object-oriented software (PDF)
    Error patterns (course by J. Offutt, without definition of coupling criteria)
  10. ---(holiday break)---
  11. Model-based testing
    tutorial by H. Robinson
  12. Test Automation
    Brian Marick, When should a test be automated (p.1-14)
  13. Integration testing (course, U. Ottawa)
    Designing a test plan (p. 1-30) (for reference, see IEEE Standard for Software Test Documentation)
    Brian Marick. The Test Manager at the Project Status Meeting. How to Misuse Code Coverage
  14. Security Testing


Clang static analyzer (additional material for Lab 6)

Other courses


Articles written by testing practitioners

(easily read, very good insights)

Introductory/survey papers on testing

See also reading lists: introductory and survey compiled by Tao Xie.
Marius Minea
Last modified: Wed Feb 8 00:15:00 EET 2017