Modern Software Development Using Java - Paul T. Tymann, G. Michael Schneider (Thomson Course Technology, 2008)