http://ses-gcremades.barry.edu/PerformanceEnhancement/Readings/Chap1.pdf