Extreme Programming, by Vincent Knobil.