book - applying UML and patterns - chapters 1 and 2