Object oriented software construction - Meyer, Bertrand, 1950- (Prentice Hall PTR, 1997)