Amazon.com
The book begins with a history of UML, from structured design methods of the '60s and '70s to the competing object-oriented design standards that were unified in 1997 to create UML. For the novice, the authors illustrate key diagram types such as class, use case, state machine, activity, and implementation. (Of course, learning these basic diagram types is what UML is all about. The authors use an easy-to-understand ticket-booking system for many of their examples.)
After a tour of basic document types, The Unified Modeling Language Reference Manual provides an alphabetical listing of more than 350 UML terms. Entries range from a sentence or two to several pages in length. (Class, operation, and use case are just a few of the important terms that are covered.) Though you will certainly need to be acquainted with software engineering principles, this reference will serve the working software developer well. As the authors note, this isn't UML for Dummies, but neither is it an arcane academic treatise. The authors succeed in delivering a readable reference that will answer any UML question, no matter how common or obscure. --Richard Dragan -- Dieser Text bezieht sich auf eine vergriffene oder nicht verfügbare Ausgabe dieses Titels.
Kurzbeschreibung
Synopsis
Buchrückseite
“If you are a serious user of UML, there is no other book quite like this one. I have been involved with the UML specification process for some time, but I still found myself learning things while reading through this book—especially on the changes and new capabilities that have come with UML.”
—Ed Seidewitz, Chief Architect, IntelliData Technologies CorporationThe latest version of the Unified Modeling Language—UML 2.0—has increased its capabilities as the standard notation for modeling software-intensive systems. Like most standards documents, however, the official UML specification is difficult to read and navigate. In addition, UML 2.0 is far more complex than previous versions, making a thorough reference book more essential than ever.
In this significantly updated and expanded edition of the definitive reference to the standard, James Rumbaugh, Ivar Jacobson, and Grady Booch—the UML’s creators—clearly and completely describe UML concepts, including major revisions to sequence diagrams, activity models, state machines, components, internal structure of classes and components, and profiles. Whether you are capturing requirements, developing software architectures, designing implementations, or trying to understand existing systems, this is the book for you.
Highlights include:
- Alphabetical dictionary of articles covering every UML concept
- Integrated summary of UML concepts by diagram type
- Two-color diagrams with extensive annotations in blue
- Thorough coverage of both semantics and notation, separated in each article for easy reference
- Further explanations of concepts whose meaning or purpose is obscure in the original specifications
- Discussion sections offering usage advice and additional insight into tricky concepts
- Notation summary, with references to individual articles
- A hyperlinked version of the book in Adobe Reader format on CD-ROM, an excellent resource for browsing or searching the text for specific information
- An enhanced online index available on the book’s web site allowing readers to quickly and easily search the entire text for specific topics
The result is an indispensable resource for anyone who needs to understand the inner workings of the industry standard modeling language.
Über den Autor
Prolog. Abdruck erfolgt mit freundlicher Genehmigung der Rechteinhaber. Alle Rechte vorbehalten.
Goals
This book is intended to be a complete, useful reference to the Unified Modeling Language (UML) for the developer, architect, project manager, system engineer, programmer, analyst, contracting officer, customer, and anyone else who needs to specify, design, build, or understand complex software systems. It provides a full reference to the concepts and constructs of UML, including their semantics, notation, and purpose. It is organized to be a convenient but thorough reference for the working professional developer. It also attempts to provide additional detail about issues that may not be clear from the standards documents and to provide a rationale for many decisions that went into the UML.
This book is not intended as a guide to the UML standards documents or to the internal structure of the metamodel contained in them. The details of the metamodel are of interest to methodologists and UML tool builders, but most other developers have little need for the arcane details of the Object Management Group (OMG) documents. This book provides all the details of UML that most developers need; in many cases, it makes information explicit that must otherwise be sought between the lines of the original documents. For those who wish to consult the source documents, they are on the OMG web site (www.omg.org).
This book is intended as a reference for those who already have some understanding of object-oriented technology. For beginners, the original books by us and by other authors are listed in the bibliography; although some of the notation has changed, books such as Rumbaugh-91, Jacobson-92, Booch-94, and Meyer-88 provide an introduction to object-oriented concepts that is still valid and therefore unnecessary to duplicate here. Blaha-05 updates Rumbaugh-91 using UML notation. For a tutorial introduction to UML that shows how to model a number of common problems, see The Unified Modeling Language User Guide Booch-99 or UML Distilled Fowler-04.
UML does not require a particular development process. Although UML may be used with a variety of development processes, it was designed to support an iterative, incremental, use-case-driven process with a strong architectural focus—the kind we feel is most suitable for the development of modern, complex systems. To place UML in its context as a tool for software development, this book defines the stages of such a process, but they are not part of the UML standard. The Unified Software Development Process Jacobson-99 describes in detail the kind of process we believe complements the UML and best supports software development.
Second Edition and UML Version
This second edition has been extensively modified from the first edition, which was published in 1999. This edition is based on the OMG “adopted” specification of UML version 2.0, with anticipated changes to the “available” specification being prepared by an OMG Finalization Task Force. Corrections to the book due to changes in the OMG UML specification will be posted on the publisher’s web site for this book at www.awprofessional.com/titles/0321245628. The information in the book is accurate as of June 2004. Original specification documents and up-to-date information about work on UML and related topics can be found on the OMG web site at www.omg.org.
Reference Manual and OMG Specification
UML is a large modeling language with many features. A reference manual that just repeats the original specification documents would not help readers much. As in any dictionary or encyclopedia, we have had to summarize information as clearly as possible while reducing the amount of material included. We have frequently chosen to emphasize common usages by omitting obscure special cases or redundant means of representing some concepts. This does not mean that those capabilities are useless, but most readers should be able to succeed without using them. The Reference Manual should not be regarded as the final authority on the UML language, however. As with any standard, the final authority rests with the official specifications, and these should be consulted to resolve disputes.
We have tried to follow these principles:
- Explain the main intent of a concept without getting lost in the details of the metamodel representation.
- Avoid discussion of abstract metaclasses. Modelers must ultimately use concrete metaclasses, which can be described more simply if the internal abstract layers are collapsed.
- Avoid discussion of the packaging of the metamodel. The packages may be important to tool builders, but modelers don’t need to know them most of the time. If you need to know, you need to look at the specification in detail anyway.
- Describe concepts from the complete specification. The OMG specification has a number of intermediate layers and compliance points that greatly complicate understanding of UML. We describe UML with all of its features. If your tool does not implement all of the facilities, then some of the features may be unavailable to you, but it doesn’t usually hurt to know about them.
- Describe concepts from the viewpoint of their normal usage. Often the OMG specification goes to considerable trouble to express concepts in a general way. This is proper for a specification, but we feel that readers often understand concepts better if they are presented in a specific context and then generalized. If you are worried about the application of a concept in a complex, ambiguous situation and you feel that the Reference Manual explanation may be inadequate, check the original specification. Unfortunately, however, even the OMG specification is sometimes ambiguous in complex situations.
Outline of the Book
The UML Reference Manual is organized into four parts: (1) an overview of UML history and of modeling, (2) a survey of UML concepts, (3) an alphabetical dictionary of UML terms and concepts, and (4) brief appendices.
The first part is an overview of UML—its history, purposes, and uses—to help you understand the origin of UML and the need it tries to fill.
The second part is a brief survey of UML concepts so that you can put all the features into perspective. The survey provides a brief overview of the views UML supports and shows how the various constructs work together. This part uses an example that walks through various UML views. It contains one chapter for each kind of UML view. This survey is not intended as a full tutorial or as a comprehensive description of concepts. It serves mainly to summarize and relate the various UML concepts, providing starting points for detailed readings in the dictionary.
The third part contains the reference material organized for easy access to each topic. The bulk of the book is an alphabetical dictionary of all of the concepts and constructs in UML. Each UML term of any importance has its own entry in the dictionary. The dictionary is meant to be complete; therefore, everything in the concept overview in Part 2 is repeated in more detail in the dictionary. The same or similar information has sometimes been repeated in multiple dictionary articles so that the reader can conveniently find it. Some common object-oriented terms that are not official UML concepts are included to provide context in examples and discussions.
Appendices show the UML metamodel and a summary of UML notation. There is a brief bibliography of major object-oriented books, but no attempt has been made to include a comprehensive citation of sources of ideas for UML or other approaches. Many of the books in the bibliography contain excellent lists of references to books and journal articles for those interested in tracking the development of the ideas.
...