Solid Software by Les Hatton, Chuck Howell & Shari Lawrence Pfleeger