Rating: Summary: Could have been better Review: My feelings on this book are mixed. It is a large book for what it offers (almost 500 pages that take a lot of time to read) but it does provide a thorough introduction to UML. It also discusses some advanced modeling concepts and constructs (sections 3 & 5) but it leaves the reader wanting to look elsewhere for how to apply these. There is an irritating duplication of material in different parts of the book, but I liked the appendices that included some of the standard elements of UML and a very brief summary of the Rational Unified Process. If you have the (a lot of) time to read the book or you are one of the many fans of Booch's writings, then this book will be of value.
Rating: Summary: What a waste of time Review: If you know anything about object modeling this book is a waste of time ... surprisingly, since (as others have observed) the book has one of the better appearances in the market. Very little insights gained into difficult problems.If you know nothing about object modeling you may still find it useful. I did not.
Rating: Summary: Object-Oriented Modeling Masterpiece Review: Booch is the master of relating examples from other fields to explain complex object-oriented concepts in an easy to understand form. This is the best practical book that I have read so far in explaining how the different elements of UML should be applied to model an object-oriented system.
Rating: Summary: Never saw such a bad "perfect" book Review: This book seems to be a "perfect" book about an important subject written by the world experts. I must confess that I waited for it a long time, I even preordered it, but it took me about 1/2 year to read through it. I didn't like to read it. (I loved Fowlers "UML Distilled" and still recommend it highly.) Its difficult to put the finger on why the book is so bad and why I constantly felt cheated. Its well structured, beautifully typeset, each single sentence seems to be good. So what made me feel so uneasy. Maybe too much distance to the everyday problems. Too little critical assessment of UML and the implementation in existing tools. Certainly too much nearly repitition of contents. Maybe I just have difficulties to accept that this in not a true book but a USER GUIDE. But a user guide to what product?!
Rating: Summary: Much unnecessary wind and rambling Review: Booch can really write the filler material. Dull, repetitious and imprecise! 10% good material..wasting trees! Prefer Muller's "Instant UML" by far. Forget "UML Distilled" which is an OO society book. Dahlings!..the 3 Amigos are having a party. Stick to science!
Rating: Summary: Nice writing style and type-setting, too much hand-waving Review: I wish the technical content of this book were half as good as the quality of the type-setting. I found the presentation style nice, specially nice use of heading styles and 2 colors. But I was very disappointed with the technical depth. I would expect such a book to give really tight rules about consistency between models, and to provide an objective basis for a modeler to follow (in addition to all the "good advice"). A consistent example would not hurt either. Some specific points I was turned off by: (1) As a person with some experience with precise modeling approaches, I think Booch has really missed the mark by treating "refinement" as a little syntactic detail, instead of something central. This smacks somewhat more of "kitchen sink" than an elegant solution based on a simple core, that will scale well with time. "Refinement" sounds cool -- let's throw in a notation or stereotype. (2) The description of patterns will probably attract someone who was looking for a notation for basic "Gang-Of-Four" stuff; but there is a scary lack of depth behind that notation! (3) Activity diagrams -- again, scary lack of depth behind an initially appealing notation. "It's just a state diagram..." -- jeez! If the bubbles represent states, then why are the state annotations of Object Flows (e.g. Fig 19.8) always shown AFTER the bubbles? That screams out that bubbles are used more like state changes than as states! Oh well ... I will try Rumbaugh's book next.
Rating: Summary: A formidable weapon in any object modeling warrior's arsenal Review: "The Unified Modeling Language User Guide" is a comprehensive study of the Object Management Group's (OMG) and Rational Corporation's Unified Modeling Language (UML). It is written by the three Amigo's; Grady Booch, James Rumbaugh and Ivar Jacobson (order appears to be important, just look at the other books in this series) and carries a date stamp of September, 1998. The discussion as presented by Booch et al. covers what appears to be a similar range of topics to the UML 1.3 version as specified by the OMG. This text is written in a clear concise fashion including a generous introduction to the object paradigm. The book goes on to present a fairly complete picture of the UML's basic notation and concepts. Further, a description of many of the object paradigm's advanced mechanisms including distribution, persistence, and real-time issues as modeled in UML is presented. A comprehensive glossary is accompanied by three fairly complete appendicies, a quick reference to UML notation and diagrams, a list of UML standard elements Stereotypes, Constraints and Tagged Values and an abridged guide to the Rational Unified Process (RUP). As a profesional object modeler I have exteremely dog eared copies of a few tried and true basic object paradigm texts. The first couple that come to mind are Booch's Object Oriented Analysis and Design with Applications and Rumbaug's Object Modeling Technique. The tattered state of these tombs is due to using both as reference on more times than I would care to mention. These books have proven to be the basic guide, the corner stone, to the object paradigm for most CS and IT professionals. "The Unified Modeling Language User Guide" should prove to be able to shoulder this tradition and become the newest OO Bible, a formidable weapon in any object modeling warrior's arsenal. All in all this book is a good read (one cup of caffine needed) and provides great object paradigm basics and UML references. Of course there are other books that discuss the same topics such as, UML in a Nutshell from O'REILLY, (two thumbs up), Instant UML from Wrox (translated from French), UML Distilled from Addison Wesley, (outdated and incomplete) amongst others. Overall, "The Unified Modeling Language User Guide" is a must for any object modelers library. Four and one half stars. P.S. The 1.4 version of the UML is supposed to be accepted by the OMG in an April, 1999 time frame, these additions to the UML are not fully describe in the "The Unified Modeling Language User Guide". For the most part the UML 1.4 version concerns the addition of some of Object-Time's Real-Time Object Oreinted Modeling (ROOM) concepts. **********************************************************************
Rating: Summary: Excellent UML tutorial. Review: Excellent as introductory object-oriented analysis & design tutorial
Rating: Summary: High level OK, but too shallow on difficult problems Review: I expected this to be the "definitive" guide of how to use the UML. While the writing itself is good, when you push hard it lacks depth and sidesteps difficult problems (not answered, unfortunately, in Rumbaugh's UML Reference book either). GOOD THINGS in the book: 1) At least fixed the <<uses>> stereotype on use-caes, clarified <<extends>>, <<uses>>, and generalizes. 2) Good summary of the notation. 3) Finally treats a collaboration as a realization of an operation; But a collaboration is also a realization of a use-case. So, is an operation a use-case? 4) Uses a sensible approach to patterns but lacks semantics (Ch 28) e.g. what is the meaning of 2 "patterns" in the same "framework" package with overlapping "parameters". BAD THINGS: does not clear up UML confusions 1) "Refinement" and "realization" are different? Refinement could (should) be made a fundamental construct on which others are built -- even the UML spec says so! -- so why is it not? 2) How do states relate to attributes? 3) How do you define stereotypes? 4) Why are enumerations and other "primitives" special? Just use types and some OCL invariants. 5) Why do interfaces not have (abstract) attributes? You cannot specify non-trivial interface behaviors without attributes. 6) Defines a use case as "a set of sequences of actions", but does not define the refinement relation between that sequence of actions and the use case. TOWARDS UML 2.0? Some of this stems from UML itself. Looking at how UML must evolve, from the presentation by Jim Rumbaugh at UML-World '99 last month, these were the key focus of "fixing" for UML 2.0: (*1) First class extensibility mechanism (*2) Precise specification of refinement (*3) Versioning of models (*4) More permissive concurrency in activity and state graphs (*5) Associations at several levels From Jacobsen's and Grady Booch's presentations at the same conference, they claim that RUP is "architecture centric", and offer components and connectors as a useful approach. What I do not understand is why they do not existing UML-basd solutions to these (e.g. see Catalysis/UML book on amazon.com). (*1) Catalysis "frameworks" provide an extensibility mechanisms that actually works (as opposed to UML stereotypes - a nice syntax with no workable semantics); Catalysis offers a single elegant solution to patterns, stereotypes, extensibility, template classes, <<bind>>, component connectors, and more; (*2) Catalysis makes refinement fundamental; (*3) It provides a clear and very simple base rule about versioning; any sensible versioning approach I can think of would have to be built on this base. (*4) It offers a more declarative view of state (and activity) models; (*5) Refinement solves the problem of "associations at several levels" -- and of use-cases, object, attributes, ... at several levels. I though that Catalysis was one of the important inputs into the UML definition. Is there some "Not-Invented-Here" going on? If so, that will only hurt us, the user community.
Rating: Summary: Already the standard user guide to UML Review: This book, the first in the Rational Amigos' UML trilogy, has already become the standard user guide to UML. The authors systematically structure the chapters into "Basic" and "Advanced" sections, so that it can be effectively used by beginners and intermediate or advanced users. The descriptions are informative and engaging, and it is illustrated with many examples that are current with the UML 1.3 specification. This is the user guide that I recommend to colleagues and clients when they ask me for the best introduction to UML.
|