VVZ API is not affiliated with ETH Zurich. Data might be outdated or incorrect. Please view the official ETHZ Vorlesungsverzeichnis for binding information.

252-0216-00L

Rigorous Software Engineering

VVZ CR 3.4

Last Updated: 2026-07-21 00:35:32

Abstract

The course provides an overview of techniques to build correct software, with a strong focus on testing and program analysis.

Objective

The course has two main objectives: - Understand the core techniques for building correct software. - Understand how to apply these techniques in practice.

Content

The course presents an overview of techniques to build correct software, including: - Code documentation - Modularity and coupling (Design patterns) - Dynamic program analysis (Testing, concolic execution) - Static program analysis (Numerical abstract interpretation, pointer analysis, symbolic execution) - Formal modeling (Alloy) In addition, students apply the learned techniques to solve a group project in the area of program analysis.

Resources

Literature

Will be announced in the lecture.

General Information