Business Analyst Training

Requirements elicitation, writing, analysis, and modeling by IIBA Endorsed Education Provider.

www.requirementssolutions.com

Business System Analysis Bookstore
In Association with Amazon.com
Help PicoSearch
Free Business Analyst Skills Test for CBAP Looking for Business Analysis Training

The Unified Modeling Language Reference Manual (Addison-Wesley Object Technology Series)

Buy the Book
Summary TOC Back Cover Preface Author Look Inside Comments Reviews
James Rumbaugh, Ivar Jacobson, Grady Booch
December 1998, Addison-Wesley Pub Co, Hardcover, 550 pages, ISBN 020130998X

Instructor-led, virtual, and self-paced training for Business Analysts What Do Business Analysts Do?
How to Define and Document Use Cases
How to Define and Document Use Cases
e-Learning, virtual workshops and webinars Try our new Virtual Workshops and e-Coaching
for today's Business System Analysts (BA's) and Subject Matter Experts (SME's)

Summary
Buy the book

Amazon.com
Written by the three pioneers behind the Unified Modeling Language (UML) standard, The Unified Modeling Language Reference Manual provides an excellent real-world guide to working with UML. This title provides expert knowledge on all facets of today's UML standard, helping developers who are encountering UML on the job for the first time to be more productive.

 
analysis bookstore top
BA books: Table of Contents
Buy the book

Preface xi
Goals xi
Outline of the Book xii
Encyclopedia Article Formatting Conventions xiii
Syntax Conventions xiv
CD xv
For More Information xv
Acknowledgments xvi

 

Part 1: Background

Chapter 1: UML Overview 3
Brief Summary of UML 3
UML History 4
Goals of UML 8
UML Concept Areas 9
Syntax of Expressions and Diagrams 11
Chapter 2: The Nature and Purpose of Models 13
What Is a Model? 13
What Are Models For? 13
Levels of Models 15
What Is in a Model? 17
What Does a Model Mean? 19

 

Part 2: UML Concepts

Chapter 3: UML Walkthrough 23
UML Views 23
Static View 25
Use Case View 26
Interaction View 27
State Machine View 30
Activity View 31
Physical Views 32
Model Management View 36
Extensibility Constructs 37
Connections Among Views 38
Chapter 4: Static View 41
Overview 41
Classifiers 42
Relationships 45
Associations 47
Generalization 51
Realization 54
Dependencies 56
Constraint 58
Instances 59
Chapter 5: Use Case View 63
Overview 63
Actor 63
Use Case 64
Chapter 6: State Machine View 67
Overview 67
State Machine 67
Event 68
State 70
Transition 71
Composite States 75
Chapter 7: Activity View 81
Overview 81
Activity Diagram 81
Activities and Other Views 84
Chapter 8: Interaction View 85
Overview 85
Collaboration 85
Interaction 86
Sequence Diagram 87
Activation 88
Collaboration Diagram 89
Patterns 91
Chapter 9: Physical Views 93
Overview 93
Component 93
Node 94
Chapter 10: Model Management View 97
Overview 97
Package 97
Dependencies on Packages 98
Access and Import Dependency 98
Model and Subsystem 100
Chapter 11: Extension Mechanisms 101
Overview 101
Constraint 101
Tagged Value 102
Stereotypes 103
Tailoring UML 104
Chapter 12: UML Environment 105
Overview 105
Semantics Responsibilities 105
Notation Responsibilities 106
Programming Language Responsibilities 107
Modeling with Tools 108

 

Part 3: Reference

Chapter 13: Encyclopedia of Terms 113
Chapter 14: Standard Elements 499

 

Part 4: Appendices

Appendix A: UML Metamodel 515UML Definition Documents 515
Metamodel Structure 515
Foundation Package 516
Behavioral Elements Package 516
Model Management Package 517
Appendix B: Notation Summary 519
Appendix C: Process Extensions 531
Tailoring the UML 531
Software Development Process Extensions 531
Business Modeling Extensions 534
Bibliography 537
Index 539
 
analysis bookstore top
Back Cover
Buy the book

The authors have done an outstanding job with this UML book. The definitions of the terms are the best I have seen. The organization and material in the encyclopedia are fantastic!
--Perry Cole, MCIWorldCom

The Unified Modeling Language (UML) has rapidly become the standard notation for modeling software-intensive systems. This book provides the definitive description of UML from its original developers--James Rumbaugh, Ivar Jacobson, and Grady Booch. Whether you are capturing requirements, developing a software architecture, designing the implementation, or trying to understand an existing system, this is the book for you.

The majority of the book is a unique alphabetical list of articles covering every aspect of UML in a form convenient for quick reference and detailed study. This format permits full coverage of UML details as well as high-level articles without confusing the reader by constant shifts in level. The first part of the book--a complete summary of UML concepts organized by subject area--provides an introduction to UML for the newcomer as well as entry points into the detailed articles.

Highlights of the book include:

  • Two-color diagrams, extensively annotated
  • 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
  • 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
  • Full text of the UML specification documents on CD-ROM, courtesy of the Object Management Group
  • Notation summary, with hyperlinks to individual articles on CD-ROM
 
analysis bookstore top
Preface
Buy the book

Goals

This book is intended to be a complete and 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, syntax, 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 standard 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 do wish to consult the source documents, they are included on the accompanying CD.

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], [Booch-94], [Jacobson-92], and [Meyer-88] provide an introduction to object-oriented concepts that is still valid and therefore unnecessary to duplicate here. 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]. Those who already know an object-oriented method, such as OMT, Booch, Objectory, Coad-Yourdon, or Fusion, should be able to read the Reference Manual and use it to understand UML notation and semantics; to learn UML quickly, they may nevertheless find it useful to read the User Guide.

UML does not require a particular development process, and this book does not describe one. 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. The Unified Software Development Process [Jacobson-99] describes the kind of process we believe complements the UML and best supports software development.

Outline of the Book

The UML Reference Manual is organized into three parts: an overview of UML history and of modeling, a survey of UML concepts, and an alphabetical encyclopedia of UML terms and concepts.

The first part is a survey 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 views so that you can put all the concepts into perspective. The survey provides a brief overview of the views UML supports and shows how the various constructs work together. This part begins with an example that walks through various UML views and then 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 and provides starting points for detailed readings in the encyclopedia.

The third part contains the reference material organized for easy access to each topic. The bulk of the book is an alphabetical encyclopedia of all of the concepts and constructs in UML. Each UML term of any importance has its own entry in the encyclopedia. The encyclopedia is meant to be complete; therefore, everything in the concept overview in Part 2 is repeated in more detail in the encyclopedia. The same or similar information has sometimes been included in multiple encyclopedia articles so that the reader can conveniently find it.

The reference part also contains an alphabetic list of UML standard elements. A standard element is a feature predefined using the UML extensibility mechanisms. The standard elements are extensions that are felt to be widely useful.

Appendices show the UML metamodel, a summary of UML notation, and some standard sets of extensions for particular domains. 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.

Encyclopedia Article Formatting Conventions

The encyclopedia part of the book is organized as an alphabetical list of entries, each describing one concept in some detail. The articles represent a flat list of UML concepts at various conceptual levels. A high-level concept typically contains a summary of its subordinate concepts, each of which is fully described in a separate article. The articles are highly cross-referenced. This flat encyclopedia organization permits the description of each concept to be presented at a fairly uniform level of detail, without constant shifts in level for the nested descriptions that would be necessary for a sequential presentation. The hypertext format of the document should also make it convenient for reference. It should not be necessary to use the index much; instead go directly to the main article in the encyclopedia for any term of interest and follow cross-references. This format is not necessarily ideal for learning the language; beginners are advised to read the overview description of UML found in Part 2 or to read introductory books on UML, such as the UML User Guide [Booch-99].

Encyclopedic articles have the following divisions, although not all divisions appear in all articles.

Brief definition

The name of the concept appears in boldface, set to the left of the body of the article. A brief definition follows in normal type. This definition is intended to capture the main idea of the concept, but it may simplify the concept for concise presentation. Refer to the main article for precise semantics.

Semantics

This section contains a detailed description of the meaning of the concept, including constraints on its uses and its execution consequences. Notation is not covered in this section, although examples use the appropriate notation. General semantics are given first. For concepts with subordinate structural properties, a list of the properties follows the general semantics, often under the subheading Structure. In most cases, the properties appear as a table in alphabetical order by property name, with the description of each property on the right. If a property has a brief enumerated list of choices, they may be given as an indented sublist. In more complicated cases, the property is given its own article to avoid excessive nesting. When properties require more explanation than permitted by a table, they are described in normal text with run-in headers in boldface italics. In certain cases, the main concept is best described under several logical subdivisions rather than one list. In such cases, additional sections follow or replace the Structure subsection. Although several organizational mechanisms have been used, their structure should be obvious to the reader.

Notation

This section contains a detailed description of the notation for the concept. Usually, the notation section has a form that parallels the preceding semantics section, which it references, and it often has the same divisions. The notation section usually includes one or more diagrams to illustrate the concept. The actual notation is printed in black ink. To help the reader understand the notation, many diagrams contain annotations in blue ink. Any material in blue is commentary and is not part of the actual notation.

 
Example

This subsection contains examples of notation or illustrations of the use of the concept. Frequently, the examples also treat complicated or potentially confusing situations.

Discussion

This section describes subtle issues, clarifies tricky and frequently confused points, and contains other details that would otherwise digress from the more descriptive semantics section. A minority of articles have a discussion section.

This section also explains certain design decisions that were made in the development of the UML, particularly those that may appear counterintuitive or that have provoked strong controversy. Only a fraction of articles have this section. Simple differences in taste are generally not covered.

Standard elements

This section lists standard constraints, tags, stereotypes, and other conventions that are predefined for the concept in the article. This section is fairly rare.

Syntax Conventions

Syntax expressions. Syntax expressions are given in a modified BNF format in a sans serif font. To avoid confusing literal values and syntax productions, literal values that appear in the target sentence are printed in black ink, and the names of syntax variables and special syntax operators are printed in blue ink.

Text printed in black ink appears in that form in the target string.

Punctuation marks (they are always printed in black) appear in the target string.

Any word printed in blue ink represents a variable that must be replaced by another string or another syntax production in the target string. Words may contain letters and hyphens. If a blue word is italicized or underlined, the actual replacement string must be italicized or underlined.

In code examples, comments are printed in blue ink to the right of the code text. Subscripts and overbars are used as syntax operators (please refer to book for further information).

Literal strings. In running text, language keywords, names of model elements, and sample strings from models are shown in a sans serif font.

Diagrams. In diagrams, blue text and arrows are annotations, that is, explanations of the diagram notation that do not appear in an actual diagram. Any text and symbols in black ink are actual diagram notation.

CD

This book is accompanied by a CD containing the full text of the book in Adobe Reader (PDF) format. Using Adobe Reader, the viewer can easily search the book for a word or phrase. The CD version also contains a clickable table of contents, index, Adobe Reader thumbnails, and extensive hot links in the body of the articles. Simply click on one of the links to jump to the encyclopedia article for the word or phrase.

The CD also contains the full text of the OMG UML specifications, included by the permission of the Object Management Group.

We feel that this CD will be a useful on-line reference to UML for advanced users.

For More Information

Additional source files and up-to-date information on further work on UML and related topics can be found on the World Wide Web sites www.rational.com and www.omg.org

 
analysis bookstore top
Author info
Buy the book

Dr. James Rumbaugh is one of the leading object-oriented methodologists. He is the chief developer of the Object Modeling Technique (OMT) and the lead author of the best-selling book Object-Oriented Modeling and Design. Before joining Rational Software Corporation in October 1994, he worked for more than 25 years at General Electric Research and Development Center in Schenectady, New York.

He has been working on object-oriented methodology and tools for many years. He developed the DSM object-oriented programming language, the state tree model of control, the OMT object modeling notation, and the Object Modeling Tool graphic editor. The foundations for the OMT notation were developed more than 10 years ago with Mary Loomis and Ashwin Shah of Calma Corporation. The OMT methodology was developed at GE R&D Center with coauthors Mike Blaha, Bill Premerlani, Fred Eddy, and Bill Lorensen.

Dr. Ivar Jacobson, Vice President of Business Engineering, is the inventor of the OOSE method, and he is also the founder of Objectory AB in Sweden, which recently merged with Rational Software Corporation. Dr. Jacobson is the principal author of two influential and best-selling books Object-Oriented Software Engineering--A Use Case Driven Approach (Computer Language Productivity award winner in 1992) and The Object Advantage--Business Process Reengineering with Object Technology. He has also authored several widely referenced papers on object technology. One of the most famous papers is his first OOPSLA '87 paper entitled "Object-Oriented Development in an Industrial Environment," which presented the first truly object-oriented method ever published.

Ivar Jacobson's use-case driven approach has had a very strong impact on the entire OOAD industry, and he himself has become one of its "icons." Consequently, he is a frequently invited keynote speaker and panelist, debating OOAD topics with colleagues and methodologists such as Grady Booch, Jim Rumbaugh, Steven Mellor, and Rebecca Wirfs-Brock at major OO conferences around the world.

Grady Booch, is the Chief Scientist at Rational Software Corporation and developer of the Booch Method of object-oriented analysis and design. He is also co-developer of the Unified Modeling Language (UML). Widely recognized for these and many contributions in the field, he is a popular speaker at technology conferences around the world. Booch has twice received Software Development magazine's coveted Jolt-Cola Product Excellence Award for his seminal text, Object-Oriented Analysis and Design with Applications.

 
analysis bookstore top
Business System Analysis Books: Reviews
Buy the book
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

Booknews, Inc.
Written by the original designers of the Unified Modeling Language (UML), this reference provides additional detail about issues that may not be clear from the standards documents, and a rationale for many decisions that went into the UML. Opens with a history of UML, then surveys the views UML supports and shows how the various constructs work together. The majority of the book is an alphabetical encyclopedia of all of the concepts and constructs in UML. A complimentary CD-ROM with the complete UML standards documents can be requested by mail.

 
analysis bookstore top
 
Requirements
  Business Rules
Prototyping
Requirements Analysis
Requirements Definition
Requirements Documentation
Requirements Engineering
Requirements Management
Requirements Traceability
User Interfaces
Miscellaneous
Requirements Validation
  Acceptance Testing
Test Cases
Test Data Engineering
Test Planning
Testing Tools
Business Process Modeling (BPM)
  Data Flow Diagrams
Decision Tables
Process Analysis
Process Improvement (BPI)
Process Models
Facilitation
  Conducting Meetings
JAD
Miscellaneous
Data Analysis
  Data Models
Miscellaneous
NEW RELEASES
Business Systems Analysis
Best Practices
Interviewing Techniques
Methodologies
Problem Analysis
Request for Proposal (RFP)
Requirements Elicitation
Task Analysis
Unified Modeling Language (UML)
Use Cases
Workflow Analysis
Home Links CBAP Business Analyst Skills Test Business Anlayst Training Inquiry