Software and Systems Verification

Senior Lecturer: 
Zoltán Micskei
Ákos Hajdu
István Majzik
Kristóf Marussy


From 2020 new materials will be posted to the Faculty's Moodle system.


The objective of the course is to present the different verification techniques that can be used throughout the full software and systems development lifecycle. Nowadays such techniques are used not only in critical systems (where their usage are usually mandated by standards), but quality is a requirement for every system.

Learning outcomes

After completing the course, students will be able to

  • describe the typical steps in the verification process, and classify which techniques are recommended for the different phases;
  • identify the various static verification techniques, apply review techniques on specifications, and apply static analysis tools on source code;
  • list the different levels and methods of software testing, and perform specification and structure based test design;
  • describe the techniques for verifying extra-functional properties (e.g. modeling and analyzing dependability), and recognize the techniques for runtime verification.


General and technical questions should be posted on this question and answer site: SWSV Q2A site

With administrative questions email the senior lecturer of the course or ask him during lectures and labs.


GitHub and Travis are kindly supporting the course with an educational account.