199.014 Program Analysis
This course is in all assigned curricula part of the STEOP.
This course is in at least 1 assigned curriculum part of the STEOP.

2023W, VU, 2.0h, 3.0EC

Properties

  • Semester hours: 2.0
  • Credits: 3.0
  • Type: VU Lecture and Exercise
  • Format: Presence

Learning outcomes

After successful completion of the course, students are able to understand the fundamentals of program analysis, apply several program analysis tools to real-world examples, differentiate between different program analysis approaches, decide when an approach is applicable, and appreciate the state of the art in program analysis research.

Subject of course

Students will get an overview of the research area of program analysis - approaches to automatically determine important properties of programs, such as their correctness. After a quick recap of the syntax and semantics of programming languages, the course will dive into topics like (optional) type systems, dataflow analysis, deductive verification, and dynamic approaches. The second half of the course will consist of project or paper presentations by the students, exploring the state of the art in program analysis. The topics of the presentations will be agreed upon between the students and the instructor in the first lecture. Students are then expected to independently work on their presentations, research the required literature, and consult with the instructor.

Teaching methods

The first half of the course will be lectures with discussions and the second half will be paper and project presentations by the students.

ECTS breakdown:

  • 9h lectures with discussions
  • 22.5h prepare & post-process lecture material
  • 7.5h paper and project presentations
  • 36h preparation for presentation

Total: 75h

 

Mode of examination

Immanent

Additional information

The lecturer of this course will be Werner Dietl, University of Waterloo, Canada.

 

Contact details:

https://ece.uwaterloo.ca/~wdietl/contact
wdietl@uwaterloo.ca


This is a guest professor course of the TU Wien Informatics Doctoral School. It is targeted to Doctoral Students of the Faculty of Informatics, but, subject to availability of free seats, open to all PhD students and interested Master students.

 

 

Lecturers

Institute

Course dates

DayTimeDateLocationDescription
Tue14:00 - 16:0003.10.2023Seminarraum Techn. Informatik Intro, overview, distribute topics
Wed14:00 - 16:0004.10.2023Seminarraum Techn. Informatik Syntax, semantics, CFGs, dataflow analysis
Tue14:00 - 16:0010.10.2023Seminarraum Techn. Informatik Type systems (lambda calculus, FJ)
Wed14:00 - 16:0011.10.2023Seminarraum Techn. Informatik Optional type systems, type inference
Tue14:00 - 16:0017.10.2023Seminarraum Techn. Informatik Hoare logic, deductive verification, JML
Wed14:00 - 16:0018.10.2023Seminarraum Techn. Informatik Model checking, fuzzing, dynamic analyses
Tue14:00 - 17:0024.10.2023Seminarraum Techn. Informatik Paper / Project presentations
Wed14:00 - 17:0025.10.2023Seminarraum Techn. Informatik Paper / Project presentations
Tue14:00 - 17:0031.10.2023Seminarraum Techn. Informatik Paper / Project presentations

Examination modalities

The grade will be based on a student’s participation in the course and their paper or project presentation.

Course registration

Begin End Deregistration end
21.08.2023 00:00 03.10.2023 23:00

Registration modalities

Please register in TISS.

Curricula

Study CodeObligationSemesterPrecon.Info
PhD TU Wien Informatics Doctoral School Not specified

Literature

Relevant literature will be distributed with each lecture.

Previous knowledge

Good understanding of (object-oriented) programming and some software development experience.

Miscellaneous

  • Attendance Required!

Language

English