UML and C++ a practical guide to object-oriented development - Lee