Course: Verification of software and systems

Schedule:

  • Course (Prof. Dr. Stefan Leue)
    Tuesday   13:30 - 15:00      Room PZ 901          Start: 9 April 2024
    Thursday  10:00 - 11:30      Room PZ 901
  • Tutorial (Raffael Senn)
    Monday 13:30 - 15:00         Room PZ 901          Start: 15 April 2024

 

Description:

Workload

270 hours, of which 84 hours are spent in class and 186 hours of self study

Prerequisites

Successful participation in the courses Modul Informatik I Modul Informatik II Diskrete Strukturen

Contents

Even rigorous software design processes cannot ensure fault-free software and systemst. The objective of software verification is to develop and apply automated and complete algorithmic methods that provide proofs that a software artifact meets its specification, or explanatory counterexamples when this is not the case. In this course we will focus on the verification method of model checking. We will introduce Transition Systems as a basic data structure to capture the software and system behavior, branching and linear time temporal logics to formally capture specifications, and suitable model checking algorithms to analyze both software and system models as well as software code.

Teaching Methods

Further details on the course will be provided in ILIAS.
Please register in ZEuS for the course, which will register you automatically in ILIAS as well.

Learning objectives

Participants will be enabled to use and assess automated software verification technology, in particular model checking. Moreover, they will be enabled to incorporate automated verification in software and system design projects.

Course literature

Christel Baier and Joost-Pieter Katoen, Principles of Model Checking, MIT Press, May 2008 
E.M. Clarke, Orna Grumberg, Daniel Kroening, Doron Peled, Helmut Veith: Model Checking, 2nd edition, MIT Press, 2018.

Further literature may be announced during the course.

Record of academic assessments

Final examination - oral 30 min.

Particulars will be announced during the course.

Remark

This course overlaps with the courses "Model Checking of Software and Systems" and "Advanced Model Checking". Thus, students who have already attended these courses will not receive new credits for the course "Verification of Software and Systems".

In consultation with participants this course will be taught in English (preferred) or German. Course materials are only available in English. Assignments and examinations may be delivered in German or English.

Participants

Bachelor and Master students.

Subject Area

Informatik der Systeme / Angewandte Informatik

Offering Suitable for Participants from Other Programs and Subject Areas

All

Credits

ECTS-points: 9

Weekly teaching hours

SWS: 4 (+ Tutorial: 2)