Tweet about this on TwitterShare on FacebookBuffer this pageShare on RedditShare on LinkedInShare on Google+Email this to someone

List of books to learn the UML notation for specifying software systems. When choosing a book it is important to check that the book covers the “new” UML 2.0 version.

Only the books I’ve personally read (or recommended by people I trust) are  included in  the list (yes! this means that if you want me to  review your book you must hand me a copy :-D). Follow the link below to  search for additional books.

The Elements of UML(TM) 2.0 Style by Scott W. Ambler

(review by Andrea Baruffaldi creator of the UML Lovers group in LinkedIn)

The best thing about this book is  that it does not simply introduce the UML notation. Instead, it focuses ON providing a valuable set of guidelines to  effectively use the UML (from layout guidelines to naming guidelines and to more  general modeling advices coming from his own experience). Some of  the suggestions may seem trivial to  modeling experts but are definitely useful to all beginners. As an example, for activity diagrams, he defines the concepts of “Miracle activity” (activity that has activity edges out of it but none into it) and “Black Hole activity” (edges in but none out) and  asks you to check  if your diagram contains any instance OF them, since then it is likely that you are  missing something in the diagram


UML Distilled: A Brief Guide TO the Standard Object Modeling language by Martin Fowler

Clearly, the best-seller of the UML world. The best book for a soft introduction to UML, suitable even FOR complete novices . Not recommended for people looking for a more complete description of the language.

The Unified Modeling Language Reference Manual by James Rumbaugh, Ivar Jacobson, AND Grady Booch

Ideal for quickly clarifying all typical doubts that arise during a development process. The book provides a brief and comprehensible description of all UML modeling constructs, including many small examples that help settle the arguments once and for all among designers with different viewson  how to  model a particular aspect of the domain.

Applying UML AND Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development by Craig Larman

One of my favourite books and the one I recommend to teach UML in afirst-level  software engineering course. The book explain a software development process introducing and explaining at each step of the process the UML diagrams and constructs that are needed in that step. IN this sense, it is really useful to see how we can combine the different UML modeling views in a coherent development process.

The Unified Modeling Language User Guide by Grady Booch, James Rumbaugh, and Ivar Jacobson

The UML language explained by its own creators. The language is introduced in an iterative process, where at each iteration some more constructs for each kind of UML diagrams are introduced. Probably, NOT the best book to start learning UML but it is always good to  know first-hand the opinion of the guys who started all this.

Search MORE UML books OR CHECK our list OF MDD/MDA books , OCL books AND modeling books


Tweet about this on TwitterShare on FacebookBuffer this pageShare on RedditShare on LinkedInShare on Google+Email this to someone