UML Distilled: A Brief Guide to the Standard Object Modeling Language Author: Martin Fowler | Language: English | ISBN:
0321193687 | Format: EPUB
UML Distilled: A Brief Guide to the Standard Object Modeling Language Description
Pressured with tight deadlines, application developers do not have the luxury of keeping completely up-to-date with all of the latest innovations in software engineering. Once in a great while, a tremendous resource comes along that helps these professionals become more efficient. The first two editions of UML Distilled have been perennial best-sellers because of their concise, yet thorough, nature. This eagerly-anticipated third edition allows you to get acquainted with some of the best thinking about efficient object-oriented software design using the latest version of the industry-standard for modeling software: UML 2.0. The author has retained the book's convenient format that has made it an essential resource for anyone who designs software for a living. The book describes all the major UML 2.0 diagram types, what they are intended to do, and the basic notation involved in creating and deciphering them. A true treasure for the software engineering community.
- Paperback: 208 pages
- Publisher: Addison-Wesley Professional; 3 edition (September 25, 2003)
- Language: English
- ISBN-10: 0321193687
- ISBN-13: 978-0321193681
- Product Dimensions: 9.4 x 7 x 0.5 inches
- Shipping Weight: 15.5 ounces (View shipping rates and policies)
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.
After Grady Booch, James Rumbaugh, Stephen Mellor and GOF, Martin Fowler is pretty much one of the fore-fathers of Object Oriented design and analysis. He is one of the initial torch bearers of the discipline we know as refactoring. Martin Fowler is the author of several renowned books on analysis and design namely "Patterns of Enterprise Application Architecture", "Refactoring: Improving the Design of Existing Code", "Planning Extreme Programming" and "Analysis Patterns: Reusable Object Models"
I have been using "UML Distilled: A Brief Guide to the Standard Object Modeling Language" for some time now and the best thing I like about this 170 page guide is its simplicity. This books well written, practical and goes straight to the point. This does not mean that it lacks in theoretical aspect of UML but it's not intended towards "fluff" when all you need is a bare minimum to get the job done. UML, as we know is standard for modeling software artifacts. Using UML software developers and architects can make a blueprint of a project like entity relationship diagrams for relational design and server queue diagrams for discrete event simulation.
Martin does an excellent job in explaining how to specify, visualize, construct, and document the artifacts of software systems by using UML. The practical guidelines help simplifying the complex process of software design by using pseudo codes and their corresponding UML designs. The back cover has some interesting prospect to look at book for instance
Would you like to understand the most important elements of class diagrams (see page 35)
Do you want to find out what diagram types were added to the UML 2.0 without wading through the spec?
UML Distilled: A Brief Guide to the Standard Object Modeling Language Preview
Link
Please Wait...