Buying Options
Learning UML 2.0
Print $44.99
Add to Cart
Print+Ebook $49.49
Add to Cart
Ebook $35.99
Add to Cart
Safari Books Online
Add to Cart
What is this?
Print £34.50
Add to Cart
What is this?

Product Editions

  1. Learning UML 2.0 - April 2006
  2. Learning UML - July 2003
Description
Engaging and accessible, this book shows you how to use UML to craft and communicate your project's design. Russ Miles and Kim Hamilton have written a pragmatic introduction to UML based on hard-earned practice, not theory. Regardless of the software process or methodology you use, this book is the one source you need to get up and running with UML 2.0.
Full Description
Table of Contents
  1. Chapter 1 Introduction

    1. What's in a Modeling Language?

    2. Why UML 2.0?

    3. Models and Diagrams

    4. "Degrees" of UML

    5. UML and the Software Development Process

    6. Views of Your Model

    7. A First Taste of UML

    8. Want More Information?

  2. Chapter 2 Modeling Requirements: Use Cases

    1. Capturing a System Requirement

    2. Use Case Relationships

    3. Use Case Overview Diagrams

    4. What's Next?

  3. Chapter 3 Modeling System Workflows: Activity Diagrams

    1. Activity Diagram Essentials

    2. Activities and Actions

    3. Decisions and Merges

    4. Doing Multiple Tasks at the Same Time

    5. Time Events

    6. Calling Other Activities

    7. Objects

    8. Sending and Receiving Signals

    9. Starting an Activity

    10. Ending Activities and Flows

    11. Partitions (or Swimlanes)

    12. Managing Complex Activity Diagrams

    13. What's Next?

  4. Chapter 4 Modeling a System's Logical Structure: Introducing Classes and Class Diagrams

    1. What Is a Class?

    2. Getting Started with Classes in UML

    3. Visibility

    4. Class State: Attributes

    5. Class Behavior: Operations

    6. Static Parts of Your Classes

    7. What's Next

  5. Chapter 5 Modeling a System's Logical Structure: Advanced Class Diagrams

    1. Class Relationships

    2. Constraints

    3. Abstract Classes

    4. Interfaces

    5. Templates

    6. What's Next

  6. Chapter 6 Bringing Your Classes to Life: Object Diagrams

    1. Object Instances

    2. Links

    3. Binding Class Templates

    4. What's Next?

  7. Chapter 7 Modeling Ordered Interactions: Sequence Diagrams

    1. Participants in a Sequence Diagram

    2. Time

    3. Events, Signals, and Messages

    4. Activation Bars

    5. Nested Messages

    6. Message Arrows

    7. Bringing a Use Case to Life with a Sequence Diagram

    8. Managing Complex Interactions with Sequence Fragments

    9. What's Next?

  8. Chapter 8 Focusing on Interaction Links: Communication Diagrams

    1. Participants, Links, and Messages

    2. Fleshing out an Interaction with a Communication Diagram

    3. Communication Diagrams Versus Sequence Diagrams

    4. What's Next?

  9. Chapter 9 Focusing on Interaction Timing: Timing Diagrams

    1. What Do Timing Diagrams Look Like?

    2. Building a Timing Diagram from a Sequence Diagram

    3. Applying Participants to a Timing Diagram

    4. States

    5. Time

    6. A Participant's State-Line

    7. Events and Messages

    8. Timing Constraints

    9. Organizing Participants on a Timing Diagram

    10. An Alternate Notation

    11. What's Next?

  10. Chapter 10 Completing the Interaction Picture: Interaction Overview Diagrams

    1. The Parts of an Interaction Overview Diagram

    2. Modeling a Use Case Using an Interaction Overview

    3. What's Next?

  11. Chapter 11 Modeling a Class's Internal Structure: Composite Structures

    1. Internal Structure

    2. Showing How a Class Is Used

    3. Showing Patterns with Collaborations

    4. What's Next?

  12. Chapter 12 Managing and Reusing Your System's Parts: Component Diagrams

    1. What Is a Component?

    2. A Basic Component in UML

    3. Provided and Required Interfaces of a Component

    4. Showing Components Working Together

    5. Classes That Realize a Component

    6. Ports and Internal Structure

    7. Black-Box and White-Box Component Views

    8. What's Next?

  13. Chapter 13 Organizing Your Model: Packages

    1. Packages

    2. Namespaces and Classes Referring to Each Other

    3. Element Visibility

    4. Package Dependency

    5. Importing and Accessing Packages

    6. Managing Package Dependencies

    7. Using Packages to Organize Use Cases

    8. What's Next?

  14. Chapter 14 Modeling an Object's State: State Machine Diagrams

    1. Essentials

    2. States

    3. Transitions

    4. States in Software

    5. Advanced State Behavior

    6. Composite States

    7. Advanced Pseudostates

    8. Signals

    9. Protocol State Machines

    10. What's Next?

  15. Chapter 15 Modeling Your Deployed System: Deployment Diagrams

    1. Deploying a Simple System

    2. Deployed Software: Artifacts

    3. What Is a Node?

    4. Hardware and Execution Environment Nodes

    5. Communication Between Nodes

    6. Deployment Specifications

    7. When to Use a Deployment Diagram

    8. What's Next?

  1. Appendix A Object Constraint Language

    1. Building OCL Expressions

    2. Types

    3. Operators

    4. Pulling It Together

    5. Context

    6. Types of Constraints

    7. OCL Automation

  2. Appendix B Adapting UML: Profiles

    1. What Is a Profile?

    2. Stereotypes

    3. Tagged Values

    4. Constraints

    5. Creating a Profile

    6. Working with the Meta-Model

    7. Using a Profile

    8. Why Bother with Profiles?

  3. Appendix C A History of UML

    1. Take One Part OOAD...

    2. ...with a Sprinkling of OOSE...

    3. ...Add a Dash of OMT...

    4. ...and Bake for 10 to 15 Years

  4. Colophon

View Full Table of Contents
Product Details
Title:
Learning UML 2.0
By:
Russell Miles, Kim Hamilton
Publisher:
O'Reilly Media
Formats:
  • Print
  • Ebook
  • Safari Books Online
Print Release:
April 2006
Ebook Release:
December 2008
Pages:
288
Print ISBN:
978-0-596-00982-3
| ISBN 10:
0-596-00982-8
Ebook ISBN:
978-0-596-15945-0
| ISBN 10:
0-596-15945-5
Customer Reviews
About the Authors
  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.

    View Russell Miles's full profile page.

  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.

    View Kim Hamilton's full profile page.

Colophon

The animal appearing on the cover of Learning UML 2.0 is a Gorilla (Gorilla gorilla). Despite its reputation as an aggressor, the gorilla is generally shy and inoffensive, rising to an erect position and beating its chest only when provoked or threatened. This behavior is meant to intimidate intruders rather than harm them; however, male gorillas will risk death to protect their young. Gorillas are the largest and most powerful of the apes, with females weighing up to 200 pounds and males up to 400 pounds.

Gorillas are socially flexible, meaning their social structure is not set in stone. Troops can number as many as 30 individuals but are more often comprised of 6 or 7, including one silverback (mature male), a few females, and their young. In her lifetime, a femal gorilla gives birth to about three offspring, which remain in her care until they are three or four years old. Offspring stay with their troop until they reach sexual maturity-about nine years old-at which time they generally start or join another troop.

Populations of gorillas are decreasing due to human encroachment and hunting. Scientists estimate that there are roughly 50,000 gorillas left in the wild in Africa, most of which are western lowland gorillas-only about 600 are mountain gorillas. Most countries have passed laws protecting gorillas, but enforcement is difficult in remote jungles where people survive by hunting. Tourism now generates a great deal of money in Rwanda, Uganda, and Zaire, which helps protect gorillas as well as other species.

  • Book cover of Learning UML 2.0