Navigating C++ & Object Oriented Design - Paul Anderson (Prentice Hall New York, 1998)