Object oriented application development using java - Doke, E. Read (Thomson, 2002)