Homepage of Michael Faes

I am a postdoc at the Laboratory for Software Technology at ETH Zurich, where I work with my former PhD advisor, Prof. Thomas R. Gross. I am also a lecturer of Computer Science at the School of Engineering, University of Applied Sciences and Arts Northwestern Switzerland (FHNW).

You can contact me by email: firstname.lastname@inf.ethz.ch.


My PhD research focussed on models and languages for safe parallel and concurrent programming and on automatic detection of concurrency bugs using static analysis and software model checking. Currently, I am interested in tools and frameworks for programming education.

My main project was a concurrent object-oriented programming model called Parallel Roles. It is the basis for a Java-like language called Rolez, which can be used to write parallel programs with guaranteed deterministic results, even in the presence of arbitrary reference aliasing. The programmer specifies the role that an object plays for a task (e.g. the readonly role), and compiler and runtime system together ensure that only those object accesses are performed that are allowed by this role. An object may play different roles in the course of a program's execution, giving the programmer considerable flexibility in expressing a parallel program.



Supervised Student Projects