The number one book at the top of my list would be:
Applying UML and Patterns : An Introduction to Object-Oriented Analysis and Design and Iterative Development (3rd Edition)
by Craig Larman
Next up would be:
The Unified Modeling Language User Guide by Booch, Rumbaugh, and Jacobson
Those are my suggestions, there are others