UML for Java Programmers by Robert C. Martin (Prentice Hall)
UML for Java Programmers is not your ordinary tech book. It strives to be a real-world guide for developers that want to use UML to be more productive. From the hand-drawn graphics to the conversational style of text, this book has its own unique approach to conveying the concepts of UML. The book is broken into two parts. The first half discusses all of the core concepts and the second half presents several real applications with their source code and UML design diagrams. The concepts in the first half address only the UMLdiagram types that are truly useful as well as Object Oriented principles that complement each of the diagram types. The concepts and principles are also presented with many source code examples. UML allows you to describe your system in many different ways and this book provides the advice to help you through the design process and document your Java system more effectively. If you are looking for a book that focuses on the practical application of UML design with Java development, this book will serve you well.