Object Oriented Software Construction - Meyer (Prentice Hall New York, 1997)