Andreas Haeberlen, Max Planck Institute for Software Systems and Rice University