Software Verification and Validation

Course 4th year (English + Romanian), sem. I 2015/2016. Last year's course
Instructor: Marius Minea
Collaborators: ing. Diana Ganea, ing. Adrian Sima

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)
    see also Christopher Lewis's course at UPenn here and here
  6. Formal specification slides by Bertrand Meyer (p. 146-186)
    Specification with JML. Tutorial by Kind Software.
  7. Model checking (PDF)
  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. Model-based testing
    tutorial by H. Robinson
  11. Test Automation
    Brian Marick, When should a test be automated (p.1-14)
  12. Integration testing (curs, 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
  13. Writing Testable Code (Miško Hevery) (problem categories; representative examples)
  14. Security Testing. See also How to attack applications, whitebox fuzz testing (initial explanation)

Laboratory

Other courses

Articles

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 10 18:30:00 EET 2016