Learning UML 2.0

by
Format: Paperback
Pub. Date: 2006-04-28
Publisher(s): Oreilly & Associates Inc
List Price: $54.99

Buy New

Usually Ships in 24-48 Hours
$53.34

Buy Used

Usually Ships in 24-48 Hours
$39.59

Rent Book

Select for Price
There was a problem. Please try again later.

Rent Digital

Online: 1825 Days access
Downloadable: Lifetime Access
$40.49
$40.49

This item is being sold by an Individual Seller and will not ship from the Online Bookstore's warehouse. The Seller must confirm the order within two business days. If the Seller refuses to sell or fails to confirm within this time frame, then the order is cancelled.

Please be sure to read the Description offered by the Seller.

Summary

Since the dawn of computing, software designers and developers have searched for ways to describe the systems they worked so hard to create. Yet, it wasn't until 1997 that a visual language they could use for every aspect of a system development project was created: the Unified Modelling Language (UML). Now it's considered an industry standard. For anyone involved in system software development who wishes to use an industry-standard modeling language to notate and communicate about aspects of design, this tutorial on version 2.0 of the Universal Modelling Language will get them jump-started.

Author Biography

  1. Russell Miles

    Russell Miles is a software engineer for General Dynamics UK where he works with Java and Distributed Systems, although his passion at the moment is Aspect Orientation and in particular AspectJ. To ensure that he has as little spare time as possible, Russ contributes to various open source projects while working on books for O'Reilly. He currently is studying at Oxford University in England for an MSc in Software Engineering.
  2. Kim Hamilton

    Kim Hamilton is a senior software engineer at a major aerospace corporation, where she has designed and implemented a variety of systems, including web applications and distributed systems. Kim has a Master's in Applied Math and Computer Science from Cornell University.

Table of Contents

Preface ix
Introduction
1(19)
What's in a Modeling Language?
2(7)
Why UML 2.0?
9(3)
Models and Diagrams
12(1)
``Degrees'' of UML
13(1)
UML and the Software Development Process
13(1)
Views of Your Model
14(2)
A First Taste of UML
16(3)
Want More Information?
19(1)
Modeling Requirements: Use Cases
20(23)
Capturing a System Requirement
22(8)
Use Case Relationships
30(10)
Use Case Overview Diagrams
40(1)
What's Next?
41(2)
Modeling System Workflows: Activity Diagrams
43(20)
Activity Diagram Essentials
44(2)
Activities and Actions
46(1)
Decisions and Merges
47(2)
Doing Multiple Tasks at the Same Time
49(2)
Time Events
51(1)
Calling Other Activities
52(1)
Objects
53(3)
Sending and Receiving Signals
56(1)
Starting an Activity
57(1)
Ending Activities and Flows
57(2)
Partitions (or Swimlanes)
59(1)
Managing Complex Activity Diagrams
60(2)
What's Next?
62(1)
Modeling a System's Logical Structure: Introducing Classes and Class Diagrams
63(20)
What Is a Class?
63(4)
Getting Started with Classes in UML
67(1)
Visibility
67(5)
Class State: Attributes
72(5)
Class Behavior: Operations
77(2)
Static Parts of Your Classes
79(3)
What's Next
82(1)
Modeling a System's Logical Structure: Advanced Class Diagrams
83(18)
Class Relationships
83(8)
Constraints
91(1)
Abstract Classes
92(4)
Interfaces
96(3)
Templates
99(1)
What's Next
100(1)
Bringing Your Classes to Life: Object Diagrams
101(7)
Object Instances
101(2)
Links
103(2)
Binding Class Templates
105(2)
What's Next?
107(1)
Modeling Ordered Interactions: Sequence Diagrams
108(23)
Participants in a Sequence Diagram
109(1)
Time
110(1)
Events, Signals, and Messages
111(2)
Activation Bars
113(1)
Nested Messages
114(1)
Message Arrows
114(6)
Bringing a Use Case to Life with a Sequence Diagram
120(6)
Managing Complex Interactions with Sequence Fragments
126(4)
What's Next?
130(1)
Focusing on Interaction Links: Communication Diagrams
131(13)
Participants, Links, and Messages
131(5)
Fleshing out an Interaction with a Communication Diagram
136(3)
Communication Diagrams Versus Sequence Diagrams
139(4)
What's Next?
143(1)
Focusing on Interaction Timing: Timing Diagrams
144(19)
What Do Timing Diagrams Look Like?
144(2)
Building a Timing Diagram from a Sequence Diagram
146(1)
Applying Participants to a Timing Diagram
147(1)
States
148(1)
Time
149(3)
A Participant's State-Line
152(1)
Events and Messages
153(1)
Timing Constraints
154(3)
Organizing Participants on a Timing Diagram
157(2)
An Alternate Notation
159(3)
What's Next?
162(1)
Completing the Interaction Picture: Interaction Overview Diagrams
163(10)
The Parts of an Interaction Overview Diagram
163(2)
Modeling a Use Case Using an Interaction Overview
165(6)
What's Next?
171(2)
Modeling a Class's Internal Structure: Composite Structures
173(13)
Internal Structure
174(6)
Showing How a Class Is Used
180(2)
Showing Patterns with Collaborations
182(3)
What's Next?
185(1)
Managing and Reusing Your System's Parts: Component Diagrams
186(12)
What Is a Component?
186(1)
A Basic Component in UML
187(1)
Provided and Required Interfaces of a Component
188(2)
Showing Components Working Together
190(2)
Classes That Realize a Component
192(2)
Ports and Internal Structure
194(2)
Black-Box and White-Box Component Views
196(1)
What's Next?
197(1)
Organizing Your Model: Packages
198(13)
Packages
199(2)
Namespaces and Classes Referring to Each Other
201(2)
Element Visibility
203(1)
Package Dependency
204(1)
Importing and Accessing Packages
205(3)
Managing Package Dependencies
208(1)
Using Packages to Organize Use Cases
209(1)
What's Next?
210(1)
Modeling an Object's State: State Machine Diagrams
211(13)
Essentials
212(1)
States
213(1)
Transitions
214(3)
States in Software
217(1)
Advanced State Behavior
218(2)
Composite States
220(1)
Advanced Pseudostates
221(1)
Signals
222(1)
Protocol State Machines
223(1)
What's Next?
223(1)
Modeling Your Deployed System: Deployment Diagrams
224(13)
Deploying a Simple System
224(2)
Deployed Software: Artifacts
226(3)
What Is a Node?
229(1)
Hardware and Execution Environment Nodes
229(2)
Communication Between Nodes
231(1)
Deployment Specifications
232(2)
When to Use a Deployment Diagram
234(1)
What's Next?
235(2)
Object Constraint Language 237(8)
Adapting UML: Profiles 245(7)
A History of UML 252(7)
Index 259

An electronic version of this book is available through VitalSource.

This book is viewable on PC, Mac, iPhone, iPad, iPod Touch, and most smartphones.

By purchasing, you will be able to view this book online, as well as download it, for the chosen number of days.

A downloadable version of this book is available through the eCampus Reader or compatible Adobe readers.

Applications are available on iOS, Android, PC, Mac, and Windows Mobile platforms.

Please view the compatibility matrix prior to purchase.