Developing Real World Software by George Schlesinger & Richard Schlesinger