Object-oriented design for C++ - David (PTR Prentice Hall, 1993)