Lec­ture: Soft­ware Ana­lys­is (in Eng­lish)

Lecturer: Prof. Dr. Heike Wehrheim
Tutorial: Felix Pauck

This lecture will be organized via koaLA. All material regarding this lecture can be found there. Please register in PAUL to attend this course. You will be automatically registered in koaLA after your PAUL registration.


This course deals with static analysis techniques that can be used to analyze programs in order to determine, evaluate or verify certain properties. The definition of a framework that can be used to design and implement static analyses along with a presentation of different analyses stands in the focus of this course. The presented analyses can be valuable for code optimizations or helpful during the verification of programs. In addition, frameworks and tools that allow the definition, implementation and execution of static (and dynamic) analyses are introduced and practically used.

Course in­form­a­tion

The course is divided into two parts. The first part takes place during the first two-thirds of the semester. The lecture and the tutorial as well as the exercise sheets are part of this phase. Thereafter, the acquired knowledge is practically used and discussed in the laboratory. Furthermore, each participant of the course works autonomously on a research paper during this phase.

  • The course will be taught in English.
  • Audience: Students working towards a Master degree in Computer Science.
  • The course belongs to the modules:
    • III.1.1 Model-based software development and III.1.5 Analytical Methods in Software Engineering
    • 3.47 Software Analysis
  • Credit points: 4 ECTS (1st part only - old examination regulations) / 6 ECTS (full course - new examination regulations)

Re­com­men­ded Read­ing

[1] Nielson, Flemming, Hanne R. Nielson, and Chris Hankin. Principles of program analysis. Springer, 1999. (university library)