UML Distilled: A Brief Guide to the Standard Object Modeling Language, Third Edition
||Author: Martin Fowler|
List Price: $34.99
Our Price: Click to see the latest and low price
Publisher: Addison-Wesley Pub Co (19 September, 2003)
Sales Rank: 2,188
Average Customer Rating: 3.91 out of 5
Customer ReviewsRating: 1 out of 5
A Terrible Guide - Even if a "Brief Guide"
This book is a terrible guide to UML. The authors constantly give their opinions on components of UML and fail to define or illustrate the components clearly or accurately. Irrelevant metaphors and "jibber-jabber" are constantly used throughout every chapter. The further the book goes into UML and the more complex the subject becomes - the more vague and misleading the book becomes. I would not recommend this book to anyone attempting to learn or use UML. Whether this book is assuming that the reader knows UML or not, it would be incomplete for both types of readers.
Rating: 2 out of 5
UML 2, but not as we know it!
I disappointed by this, the third edition of UML Distilled. The first edition of this book was clearly rushed out to meet the release of the UML specification and so contained many inaccuracies. However, this is now the third edition and it still has many problems.
The biggest issue is that the author has too many non-standard diagrams. These are helpfully labelled "non-normative", and are an odd mix of UML 1, UML 2 and some other bits and pieces that the author likes. Now what is the point of this? These diagrams won't be supported by UML 1 tools, or by UML 2 tools, so how is one to draw them? Also, the non-normative diagrams do not have a metamodel or any well-defined semantics, so even if one were to build a tool to support their syntax, their semantics would still be open to debate.
The next issue is that many of the UML 2 diagrams are syntactically incorrect (e.g. the use of dependencies rather than connectors in composite structures). Perhaps this is because the author was writing the book while the UML 2 specification was still being developed. Personally, I would rather he had waited a bit rather than give us something only partially baked.
The discussion of UML syntax implies that UML as a visual language is much less powerful and complete than it actually is. For example the very brief discussion of sequence diagrams misses out most of their important new features. You don't learn about combined fragments, references, gates or parameters (although some of these are mentioned in passing). Yet these are the things that make UML 2 sequence diagrams so much more powerful and useable than they were in UML 1. In fact, the sequence diagrams in this book look like they have been translated directly from UML 1 sequence diagrams without applying any of the new features.
The discussion of UML semantics is generally disappointing. UML 2 has tied UML semantics down very tightly - it has had to do this because of MDA. However, in this book you get the impression that much of it is still quite vague and open to interpretation - hence the "non-normative" diagrams.
On the whole, the level of detail is, in many cases, too low to be useful even in a "distilled presentation". For example, you get 2 pages on interaction overview diagrams, and in this you lean that the author hasn't really worked out how to use them effectively and doesn't really care for them anyway. Yet these diagrams are important. They give us, for the first time, the ability to string together isolated interactions into workflows in a precise way.
On the whole, I can't recommend this book. Try "UML 2 for Dummies" instead.
Rating: 5 out of 5
Much Improved 3rd Edition
Previous editions of this book were very useful but contained some obvious flaws. The 1st edition was hastily put together when UML was new and the 2nd edition was a relatively minor update to keep up with changes to the UML Standard. This 3rd edition is a major overhaul of the book and is a significant improvement. Lot's of new material has been added to bring the book up-to-date with UML 2.0. Most of the chapters have been rewritten and reorganized into a more useful sequence. The rewrite benefits from Martin Fowler's recent experience teaching classes on UML. I'm glad to see that chapter 11 "UML and Programming" in the 2nd edition has been removed. It was the least useful part of the book and the space has been better utilized in the 3rd edition by focusing on more specifically on UML and the added material for UML 2.0. This book is worth the price to "upgrade" from previous editions.
· The Unified Modeling Language User Guide
· Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and the Unified Process (2nd Edition)
· Writing Effective Use Cases
· Refactoring: Improving the Design of Existing Code
· Design Patterns