• Free Shipping Icon

    This Item Qualifies for Free Shipping!*

    *Excludes marketplace orders.

List Price: $29.95

Buy New

Usually Ships in 2-3 Business Days
$29.92

Rent Textbook

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

Used Textbook

We're Sorry
Sold Out

eTextbook

We're Sorry
Not Available

How Marketplace Works:

  • This item is offered by an independent seller and not shipped from our warehouse
  • Item details like edition and cover design may differ from our description; see seller's comments before ordering.
  • Sellers much confirm and ship within two business days; otherwise, the order will be cancelled and refunded.
  • Marketplace purchases cannot be returned to eCampus.com. Contact the seller directly for inquiries; if no response within two days, contact customer service.
  • Additional shipping costs apply to Marketplace purchases. Review shipping costs at checkout.

Summary

This second edition provides updates to the UML and is the best resource for quick, no-nonsense explanations of using UML. The major strength is its short, concise presentation of the essentials of UML and where it fits within the software-development process.

Author Biography

Martin Fowler is a pioneer in the application of object technology to business information systems. For the past twelve years, he has consulted in the area of object technology with such companies as Citibank, Chrysler Corporation, IBM, Andersen Consulting, and Sterling Software. He is the author of the acclaimed Analysis Patterns: Reusable Object Models. Kendall Scott is a technical writer who specializes in writing about financial and accounting applications. He is the principal of Software Documentation Wizards. He is also the co-author (with Doug Rosenberg) of Use Case Driven Object Modeling with UML: A Practical Approach, which outlines an efficient, proven, and streamlined approach to software development.

Table of Contents

Foreword xiii(2)
Preface xv(2)
Acknowledgments xvii
Chapter 1: Introduction
1(12)
What Is the UML?
1(1)
How We Got Here
2(3)
Notations and Meta-Models
5(2)
Why Do Analysis and Design?
7(3)
Learning OO
7(2)
Communicating with Domain Experts
9(1)
Understanding the Big Picture
10(1)
Looking for More Information
10(3)
Chapter 2: An Outline Development Process
13(30)
Overview of the Process
14(2)
Inception
16(1)
Elaboration
16(13)
Dealing with Requirements Risks
17(5)
Dealing with Technological Risks
22(1)
Dealing with Skills Risks
23(2)
Dealing with Political Risks
25(1)
Baseline Architecture
25(1)
When Is Elaboration Finished?
26(1)
Planning
26(3)
Construction
29(1)
Refactoring
30(6)
When to Use Refactoring
32(1)
Where to Find Out More
32(1)
Iterative Development and Planning
33(1)
Using the UML in Construction
33(3)
Patterns
36(4)
When to Use Patterns
39(1)
Where to Find Out More
39(1)
Transition
40(1)
When to Use Iterative Development
41(1)
Where to Find Out More
41(2)
Chapter 3: Use Cases
43(10)
User Goals and System Interactions
44(1)
Use Case Diagrams
45(6)
Actors
46(2)
Uses and Extends
48(3)
When to Use Use Cases
51(1)
Where to Find Out More
51(2)
Chapter 4: Class Diagrams: The Essentials
53(22)
Perspectives
55(1)
Associations
56(7)
Attributes
63(1)
Operations
63(1)
CRC Cards
64(4)
When to Use CRC Cards
66(1)
Where to Find Out More
66(2)
Generalization
68(1)
Constraint Rules
69(1)
Design by Contract
70(3)
When to Use Design by Contract
72(1)
Where to Find Out More
73(1)
When to Use Class Diagrams
73(1)
Where to Find Out More
74(1)
Chapter 5: Class Diagrams: Advanced Concepts
75(28)
Stereotypes
75(2)
Multiple and Dynamic Classification
77(3)
Aggregation and Composition
80(2)
Derived Associations and Attributes
82(3)
Interfaces and Abstract Classes
85(3)
Reference Objects and Value Objects
88(1)
Collections for Multi-Valued Roles
89(1)
Immutability
90(1)
Classification and Generalization
91(1)
Qualified Associations
91(2)
Association Class
93(3)
Parameterized Class
96(3)
Visibility
99(4)
Chapter 6: Interaction Diagrams
103(10)
Sequence Diagrams
104(4)
Concurrent Processes and Activations
106(2)
Collaboration Diagrams
108(3)
Comparing Sequence and Collaboration Diagrams
111(1)
Conditional Behavior
112(1)
When to Use Interaction Diagrams
112(1)
Where to Find Out More
112(1)
Chapter 7: Package Diagrams
113(8)
When to Use Package Diagrams
119(1)
Where to Find Out More
120(1)
Chapter 8: State Diagrams
121(8)
Concurrent State Diagrams
126(2)
When to Use State Diagrams
128(1)
Where to Find Out More
128(1)
Chapter 9: Activity Diagrams
129(14)
Activity Diagrams for Use Cases
132(6)
Swimlanes
138(2)
Decomposing an Activity
140(1)
When to Use Activity Diagrams
141(1)
Where to Find Out More
142(1)
Chapter 10: Deployment Diagrams
143(4)
When to Use Deployment Diagrams
145(2)
Chapter 11: UML and Programming
147(20)
Patient Observation: Domain Model
148(4)
Patient Observation: Specification Model
152(3)
Moving to Code
155(12)
Appendix: Techniques and Their Uses 167(2)
Bibliography 169(4)
Index 173

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.

Digital License

You are licensing a digital product for a set duration. Durations are set forth in the product description, with "Lifetime" typically meaning five (5) years of online access and permanent download to a supported device. All licenses are non-transferable.

More details can be found here.

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.