Source: http://www.ics.uci.edu/~malek/publications/2016ECSA.pdf