presented at event SIGSOFT/FSE'12: 20th ACM SIGSOFT Symposium on the Foundations of Software Engineering Conference